Cortex-M0+ Freedom Modules Support Arduino Shields
How can developers check out a new micro without building a bunch of custom boards? Freescale's answer is to use a standard expansion interface so developers can choose for a wide range of third party options.
Related Articles
- The Tiny Cortex-M0+ Just Got Smaller
- Advanced Packaging Delivers Capacity And Performance
- Practical Advice on Running uClinux on Cortex-M3/M4
Freescale’s Freedom Development Platform highlights the Kinetis L series 32-bit, Cortex-M0+ microcontroller. The form factor and pins on the periphery match the popular Arduino platform (see Arduino, Raspberry Pi or BeagleBone?). This provides access the plethora of Arduino shields. Compatibility could still be an issue but, in general, these boards use standard serial interfaces like SPI or I2C. Parallel interfaces are easily handled by most microcontrollers including the KL02.
The FRDM-KL02Z (Fig. 1) hosts the tiny, 48 MHz KL02 MKL02Z32VFM4 with 32 Kbytes of flash memory and 4 Kbytes of SRAM in a 32QFN package. The micro has a 12-bit ADC and an high speed analog comparator. At one end of the board is a capacitive touch slider. The board also has a Freescale MMA8451Q accelerometer and a tri-color LED.
The Freedom boards utilize the OpenSDA debug interface (Fig. 2). This open source, USB-based support is based on a Freescale Cortex-M0+ microcontroller. The same platform is also used on the FRDM-KL25Z board. The USB interface incorporates a standard mass storage device that contains evaluation software. It supports Arm's new standard debug interface, CMSIS-DAP.
The interface headers are not installed in the stock board. Developers will have to solder on the headers if they want to utilize the Arduino-compatible interface boards. The interface pin connections to the Cortex-M0+ match the typical Arduino interface in terms of functionality (Fig. 3).
Developers looking for a heftier Cortex-M0+ implementation can check out Freescale's FRDM-KL25Z (Fig. 4) that has a 48 MHz MKL25Z128VLK4 with 128 Kbytes of flash memory and 16 Kbytes of SRAM in a 80LQFP package. The chip also has a 16-bit SAR ADC and a 12-bit DAC. Both have DMA support. The FRDM-KL25Z has its own Full Speed USB interface. It also has a serial port with its own header.
Related Articles
- PIC32 Arduino Modules
- Software Supports Safe And Fast Automotive Application Development
- Arduino, Raspberry Pi or BeagleBone?
The board has larger expansion headers to expose the larger number of available interfaces with this chip. It also uses OpenSDA and has the same set of on-board peripherals including the accelerometer and touch interface.
Freescale provides their own Eclipse-based, CodeWarrior for MCUs tool chain for C-based development. Most Arduino shields come with C code for drivers or sample applications. Developers will also have access to Freescale's RTOS, MQX. It runs on even tiny 32-bit micros like the KL02.
The Freedom boards can be used in a standalone mode without soldering on the additional headers. This is handy for testing the on-board components or for software development or evaluation.
The Arduino platform started with an 8-bit Atmel AVR microcontroller. It has since expanded to a range of microcontrollers. Digilent's chipKIT modules (Fig. 5) utilize Microchip's 32-bit MIPS-based microcontroller (see PIC32 Arduino Modules).
Arduino has definitely moved to the 32-bit realm. The new Arduino DUE runs an Atmel Cortex-M3 chip (see Arduino, Raspberry Pi or BeagleBone?). Freescale's boards show off their features including low power and compact size. Utilizing the Arduino form factor is a smart move since it provides access to a wide range of third party devices from LCD screens to wireless interface modules.
Freescale has an edge for developers needing very compact solutions. It has a chip scale package for the KL02 that is only 1.5-mm by 2-mm (see Advanced Packaging Delivers Capacity And Performance). The solder balls connect directly to the die.