Quark D2000 CRB

Overview

The Intel® Quark ™ microcontroller D2000 package is shipped as a 40-pin QFN component.

Intel™ Quark® microcontroller D2000 contains the following items:

  • On-board components:
    • Accelerometer/Magnetometer sensor
    • UART/JTAG to USB convert for USB debug port
  • Expansion options:
    • “Arduino Uno” compatible SIL sockets ( 3.3V IO Only )
  • Other connectors:
    • 1x USB 2.0 Device Port – micro Type B
    • On-board coin cell battery holder
    • 5V input a screw terminal/header (external power or Li-ion)
    • EEMBC power input header

Board Layout

General information for the board can be found at the Intel Website, which includes both schematics and BRD files.

Supported Features

Interface Controller Driver/Component
MVIC on-chip interrupt_controller
UART on-chip serial port-polling; serial port-interrupt
SPI on-chip spi
I2C on-chip i2c
GPIO on-chip gpio
PWM on-chip pwm

Developing for the D2000

The D2000 board configuration details are found in the project’s tree at boards/quark_d2000_crb. The make target for this board is quark_d2000_crb.

Building a Binary

To build a Zephyr applications for the D2000 board, the BOARD configuration option must be defined at compile time. Follow these steps to build the hello_world application as an example.

  1. Source the zephyr-env.sh file.

  2. Change directories to the application directory. For hello_world this is:

    $ cd $ZEPHYR_BASE/samples/hello_world/nanokernel
    
  3. Build the binary:

    $ make pristine && make BOARD=quark_d2000_crb ARCH=x86
    

Flashing a Binary

  1. Since the board has a built-in JTAG; it is possible to flash the device through the USB only. Set the following jumpers to enable the built-in JTAG:

    Jumper UART Common JTAG Name
    J9 Open X X TDO
    J10 Open X X TDI
    J11 Open X X TRST
    J12 X N/A X TMS
    J17 X N/A X TCK
  2. Connect the D2000 via USB to the host computer.

  3. Once the binary is built, it can be flashed to the device by:

    $ make BOARD=quark_d2000_crb ARCH=x86 flash
    

Debugging a Binary

To debug an application on the D2000 platform, follow these steps. As an example, we are using the hello_world application.

  1. Source the zephyr-env.sh file.

  2. Go to the application’s folder:.

    $ cd $ZEPHYR_BASE/samples/hello_world/nanokernel
    
  3. Verify the final binary is in outdir/zephyr.elf.

  4. If the binary is not there, please re-build using the steps described above.

  5. To enable the debug process, enter:

    $ make BOARD=quark_d2000_crb ARCH=x86 debug
    

Bibliography