Hello folks, while this is my first post here, rest assure that I used to be very active in the "dinosaur age" of comp.sys.embedded, AVR Freaks, various HC12, 430 lists etc. and I am still doing the bulk of the compiler development and answering support emails! Anyway...
We have now produced a new complete hardware and software kit, the JumpStart MicroBox, for getting started with Cortex-M programming.
Are you a blogger for an electronic forum or something similar? If so, email us and we will send you a complementary kit.
From a beta tester: “JumpStart API allows you to focus on the application coding and not ARM coding. In a few minutes I had a configured and working skeleton for my hardware.” – M. Barber
Everything you need to start programming the powerful Cortex®-M in C immediately is included in the JumpStart MicroBox kit:
- STM32 Cortex-M0 Nucleo board from ST with ST-LINK/V2 debug pod.
- Arduino Compatible Education (ACE™) Shield: LED matrix, OLED display, RTC, micro-SD cartridge, crypto-chip (US only), etc.
- JumpStart C for Cortex®-M compiler license and the new JumpStart API Libraries
- "C for Everyone - The JumpStart Guide to C" (ebook) a complete tutorial textbook-style reference to C. Unless you are a C Wizard, there is probably information in here that you have not yet encountered.
- Step-by-step tutorials and example programs
- $99, volume discount available
In creating the kit, we also created the JumpStart API to remove the tedium of low-level initialization and I/O register coding, without blocking users' access to the powerful features provided by the device.
For example, normally for the STM32F device, in order to use the EXTI interrupt, you have to:
- Initialize the system clock.
- Enable power to the GPIO port.
- Configure the GPIO port pin as input.
- Enable power to the EXTI (External Interrupt) subsystem.
- Enable power to the SYSCFG subsystem in order to modify the EXTI configurations.
- Configure the EXTI to trigger on the specific GPIO port and pin.
- Configure the NVIC (Nested Vector Interrupt Controller) to enable interrupt for the EXTI.
- Write an interrupt handler, as EXTI interrupts are shared, you have to be sure to process only the interrupt that is for this EXTI.
- Modify the system vector table to call the interrupt handler.
This would take several pages of code and careful reading of the data sheet. The JumpStart API JSAPI_EXTI class object takes care of all these details with just a couple of calls, including allowing each EXTI object to have its own interrupt handler instead of a shared one.
Our new website:
http://c4everyone.com contains all the info. Please feel free to email me
richard@imagecraft.com or reply below if you have any questions.