Intel(r) Quark(tm) micrcontroller D2000 based Environmental sensors board

Introduction

This is a fairly small (51 x 51 mm) board, equipped with a low power Intel Quark D2000 microcontroller, and several sensors (accelerator, temperature, humidity, atmospheric pressure), as well as a mikroBUS compatible header and a Grove compatible connectors, that can be used to connect additional sensors, memory, or radio modules. The board can be used to monitor the environment conditions, and store or transmit the data to a remote system for further processing.Intel(r) Quark(tm) micrcontroller D2000 based Environmental sensors board

Design Overview

Microcontroller

Microcontroller Overview

The board uses the Intel Quark D2000 microcontroller (U1). This microcontroller contains a 32-bit x86 processor core, 25 GPIOs, I2C, SPI interfaces, JTAG, two UART interfaces, PWM module, timers, and so on. It includes 32 KiB of the instruction Flash ROM, 8 KiB of the SRAM, and a few kilobytes of the OTP memory (which is actually a Flash ROM which can be write/erase protected).

Clocks

The microcontroller runs on a 32 MHz clock provided by quartz resonator Y1, it also uses a 32768 Hz quartz resonator Y2 for RTC clock.

Power Supply

The microcontroller includes an on-chip 1.8V buck converter voltage regulator to supply voltage for the CPU core. The 47 uH inductor L1 and the 4.7 uF capacitor C11 are the external components used by the voltage regulator. The ferrite EMI filter FB1 and the capacitor C7 form an LC filter for filtering the analog supply voltage AVDD. The I/O power supply IOVDD rail, as well as all the on-board sensors are connected directly to the CR2032 battery BT1 (nominally 3V). All the power supply rails are bypassed using 1 uF capacitors.

Reset

The board uses a simple RC reset circuit implemented using the resistor R4, the capacitor C1, and reset switch SW1. The Quark D2000 MCU has a hysteresis on RST_N input, which ensures the proper reset signal generation using an RC circuit.

GPIO Pins Allocation

The GPIO pins of the Quark D2000 MCU are allocated on this board as shown in the table below. Note that GPIO pins have multiple functions (modes), and they need to be configured in the software according to the function used by this board. The suggested pin functions are marked with italic bold.
 Quark D2000 pin number  Quark D2000 pin name  Function used by the board  Mode 0  Mode 1  Mode 2
 31  F0_SPI_M_SS0  mikroBUS – SPI chip select – SS0  GPIO0  AI0  SPI_M_SS0
 32  F1_SPI_M_SS1  Battery monitor (analog input)  GPIO1  AI1  SPI_M_SS1
 33  F2_SPI_M_SS2  User switch SW2, 560k pull-up, 1 == switch not pressed  GPIO2  AI2  SPI_M_SS2
 34  F3_SPI_M_SS3  mikroBUS – analog input A0  GPIO3  AI3  SPI_M_SS3
 35  F4_RTC_CLK_OUT  Accelerometer interrupt – INT1  GPIO4  AI4  RTC_CLK_OUT
 36  F5_SYS_CLK_OUT  mikroBUS – interrupt input – INT2  GPIO5  AI5  SYS_CLK_OUT
 37  F6_I2C_SCL  I2C SCL – on-board sensors, mikroBus, Grove header P7  GPIO6  AI6  I2C_SCL
 38  F7_I2C_SDA  I2C SDA – on-board sensors, mikroBus, Grove header P7  GPIO7  AI7  I2C_SDA
 39  F8_SPI_S_SCLK  Grove header P5 – D7  GPIO8  AI8  SPI_S_SCLK
 11  F9_SPI_S_SDIN  mikroBUS – reset RST, Grove header P5 – D8  GPIO9  AI9  SPI_S_SDIN
 2  F10_SPI_S_SDOUT  Grove header P6 – D3  GPIO10  AI10  SPI_S_SDOUT
 3  F11_SPI_S_SCS  Grove header P6 – D2  GPIO11  AI11  SPI_S_SCS
 4  F12_UART_A_TXD  FTDI compatible UART header P2 – TXD, mikroBus – TXD  GPIO12  AI12  UART_A_TXD
 5  F13_UART_A_RXD  FTDI compatible UART header P2 – RXD, mikroBus – RXD  GPIO13  AI13  UART_A_RXD
 6  F14_UART_A_RTS_DE  FTDI compatible UART header P2 – RTS  GPIO14  AI14  UART_A_RTS/UART_A_DE
 7  F15_UART_A_CTS_RE  FTDI compatible UART header P2 – CTS  GPIO15  AI15  UART_A_CTS/UART_A_RE
 8  F16_SPI_M_SCLK  mikroBUS – SPI SCLK  GPIO16  AI16  SPI_M_SCLK
 9  F17_SPI_M_TXD  mikroBUS – SPI MOSI  GPIO17  AI17  SPI_M_TXD
 10  F18_SPI_M_RXD  mikroBUS – SPI MISO  GPIO18  AI18  SPI_M_RXD
 18  F19_PWM0_TDO  JTAG header P1 – TDO  TDO  GPIO19  PWM0
 13  F20_UART_B_TXD_TRST_N  JTAG header P1 – TRST  TRST  GPIO20  UART_B_TXD
 14  F21_UART_B_RXD_TCK  JTAG header P1 – TCK  TCK  GPIO21  UART_B_RXD
 15  F22_UART_B_RTS_DE_TMS  JTAG header P1 – TMS  TMS  GPIO22  UART_B_RTS/UART_B_DE
 16  F23_UART_B_CTS_RE_TDI  JTAG header P1 – TDI  TDI  GPIO23  UART_B_CTS/UART_B_RE
 21  F24_PWM1  mikroBUS – PWM output, on-board LED D1  GPIO24  –  PWM1

UART Interface

The UART interface A of the Quark D2000 is exposed on an FTDI compatible header P2. Normally this is used to connect the FTDI USB to serial cable to provide a debug output. The UART interface A TXD and RXD signals are also available on the mikroBUS header, and that can be used to connect sensors that use UART interface.

About The Author

Ibrar Ayyub

I am an experienced technical writer with a Master's degree in computer science from BZU Multan University. I have written for various industries, mainly home automation and engineering. My writing style is clear and simple, and I am skilled in using infographics and diagrams. I am a great researcher and am able to present information in a well-organized and logical manner.

Follow Us:
LinkedinTwitter
Scroll to Top