The ImageCraft JumpStart Microbox Education Kit is a set of hardware and software tools to teach C and Cortex-M embedded programming.
In essence, it's an Arduino compatible shield, an STMicro Nucleo dev board, a C book, an IDE, a compiler and libraries.
In this blog series I'm trying to find out if it's more then just an existing 3rd party dev board paired with a shield. And if (and how) this kit can turn you into an embedded programmer.
In the previous chapters, I previewed the kit.
For this one, I'm going to review the one of the kit's parts in more detail: The shield with peripherals that comes with it.
ACE (Arduino Compatible Education) Shield
ImageCraft calls their PCB with peripherals the Arduino Compatible Education Shield. There's a wealth of hardware on the board.
From the product page:
|ACE™ (Arduino Compatible Education) Shield|
The expansion hardware for the JumpStart MicroBox is provided as an Arduino-type shield. It is a “kitchen sink” design intended especially (though not exclusively) to be suitable for educational use. The following features are included on this shield (the MCU peripheral functions used are listed in parentheses):
Communication over the USART is accomplished through the VCOM port With these peripherals all major features of the STM32F030(except USB and CAN can be exercised
The schematics of the shield are available from ImageCraft. It's a well structured document, not hard at all to understand.
LED matrix and I2C IO Port expander
The shield uses a MAXIM MAX7311 I2C IO port expander to drive an 8-by-8 LED matrix.
It's a smart move to put an expander on the shield. It's something that is commonly used in embedded designs to increase the number of available input/outputs.
Designs are also using expanders when the I/Os are required on a different PCB, or when the distance between the microcontroller and the I/Os is far away or hard to route.
The expander used on the shield uses I2C for communication with the controller. It acts as a slave, and is connected to the ARM's SDA and SCL I2C pins.
We get an extra 16 I/O lines (5V tolerant) - in our case they are driving the LED matrix rows and columns.
The MAX7311 datasheet is very informative. Because I/O expansion is easy to understand for a beginner, this is a good opportunity to get used to reading datasheets.
I'd like to give this part of the shield a big thumbs up