QUICK START GUIDE TO THE JUMPSTART MICROBOX
JumpStart MicroBox Contents The JumpStart MicroBox has three hardware components: Nucleo board from ST. This board contains the Cortex M0 STM32F030 microcontroller plus the ST LINK/V2 debug pod. ImageCraft ACE (Arduino Compatible Education) Shield with expansion devices. Mini USB cable. And includes the following software: Non Commercial user license for JumpStarter C for Cortex M C compiler tools. The serial number of JumpStarter C for Cortex M is printed on the invoice. Be sure to make a note of this serial number; you must have it to request a license key from ImageCraft. A NOTE ON NAMES imagecraft.com is the company that makes this product. c4everyone.com is the site we have created specifically for this product.
Online Contents You will need to install the software before you connect the hardware. The install instructions are on the next page. You can download the online contents from http://c4everyone.com, click on DOWNLOAD, then click on MicroBox Software and Cortex M and MicroBox Documentation to download the following: 1. JumpStart C for Cortex M compiler tools demo 2. JumpStart MicroBox JumpStart Guide (this document) 3. JumpStart MicroBox Hardware descriptions this includes all the devices on the ACE (Arduino Compatible Education) Shield. 4. JumpStart API descriptions There are also device datasheets and other info available online. Note that this QuickStart Guide is 14 pages long. If you are reading an excerpt of the QuickStart Guide that we have included in the shipping package, please download the complete guide.
Downloading and Installing the Compiler and USB Driver To download the JumpStarter C for Cortex compiler, visit http://c4everyone.com and click on the Download menu, or download directly from this link: http://imagecraft.com/pub/iccv8cortex_demo.exe Once you download it, click and follow the instructions to install. BEFORE YOU PLUG IN THE HARDWARE BOARDS, you must install the USB driver from ST: 1. Open a command prompt window in administrator mode: locate the icon for command prompt, right click, and select Run as administrator. On Windows XP and Windows 7, you can find the program icon under Start >All Programs >Accessories. 2. Type the following (replacing c:\iccv8cortex\ with the root directory of your installation): cd c:\iccv8cortex\st LINK_USB_V2_Driver stlink_winusb_install.bat This installs ST s USB driver on your Windows PC. 3. You may close the command prompt after installation. We provide a snapshot of the ST driver. The latest driver is available directly from st.com: visit http://www.st.com/stm32nucleo and browse to the Software > Development Tool Software.
Connecting the Hardware 1 The ST Nucleo board has two sections. In the photo on the next page, the right hand section contains a Cortex M microcontroller and has the Arduino style connectors, plus ST s own Morpho connectors on the outer edges. The left hand section contains the ST LINK/V2 hardware debug pod and a virtual COM port to the PC through the mini USB connector. The mini USB connector also provides power to the board. It is highly recommended that you use a powered USB hub or a USB3 port on your PC to ensure that enough power is available to the kit, especially after the ACE Shield is attached. An unpowered USB2 port might also work, especially on a desktop PC where there is more power provided to the USB port. Do not attach the ACE Shield yet. Connect the USB cable between the ST Nucleo and the PC. 1 ST Nucleo boards are made by STM Electronics. See http://www.st.com/stm32nucleo.
When you connect the board, Windows should automatically set up the driver that you installed (as documented in the previous page). You are now ready to use the kit! When the USB cable is attached, the two red LEDs should light up.
What to Do If You Did Not Install the USB Driver First If you forgot to install the drivers first, or if the two red LEDs do not stay on constantly, please follow the Installation section of the ST Nucleo reference manual, which is available from http://www.st.com/stm32nucleo under Resources >User Manual.
SIDE NOTE: ST Nucleo Firmware Upgrade 2 While not strictly necessary, you might wish to install the latest firmware for the ST LINK/V2 on the ST Nucleo board. Unlike standalone ST LINK/V2 external pods, which can be firmware upgraded using ST s ST LINK Utility, you must use a standalone upgrade program. Again, visit http://www.st.com/stm32nucleo and browse to the Software > Development Tool Software, the same location where you would also find the latest USB drivers. 2 Most firmware upgrades tend to involve functions not of interest to JumpStart Education Kit users, e.g., mbed support, etc.
Attaching the ACE Shield The ST Nucleo boards have two rows of connectors. The inner ones with the plastic housing are compatible with Arduino expansion shields. You may attach any compatible Arduino shields using these connectors, including the ACE Shield. The number of pins are different on each row. To attach an expansion shield, carefully match up the pins and push the shield onto the ST Nucleo board. Be careful, since the pins on the expansion shields might be bent if they are not matched up correctly. NOTE: Do not attach or detach a shield from the ST Nucleo board when it is connected to power through the USB cable. Doing so may damage the boards.
CodeBlocks IDE CodeBlocks IDE (Integrated Development Environment) includes everything you need to develop and debug programs for the JumpStart Education Kit. It is the interface to the compiler and debugging tools. CodeBlocks IDE is described in the <JumpStart Guide to C> document.
Building the Blink-Nucleo-LED Example The provided examples show how to use the features of the microcontroller, and also the ACE Shield. By following the examples and tutorials, and then modifying the examples per the exercise suggestions, you will gain proficiency in programming Cortex M devices. In this Quick Start Guide, we will demonstrate the Blink Nucleo LED example. To get started: 1. If the ACE Shield is mated to the ST Nucleo board, disconnect the USB cable, and remove the ACE Shield from the ST Nucleo board. 2. Install the ST USB driver if you have not done so earlier.see page 3. 3. Connect the ST Nucleo board to the Windows PC using the USB cable. If the USB driver installed successfully, two red LEDs on the ST Nucleo board should light up. To open the examples: 1. Run the JumpStarter C for Cortex M CodeBlocks IDE Start >ImageCraft Development Tools >JumpStarter C for Cortex. 2. Click File >Open, and browse to c:\iccv8cortex\examples.jumpstartmicrobox\stm32f030\. 3. Double click on default.workspace to open the example workspace. 4. On the left hand side, you see the workspace/project pane. Build the Blink Nucleo LED example: 1. On the left hand pane, if the Blink Nucleo LED name is not in bold, double click on it to make it the active project. 2. Click Build >Rebuild (keyboard shortcut Ctrl F11 ) to completely rebuild the project. As you program, you will usually click Build >Build ( Ctrl F9 ) to build your project. While doing a Rebuild takes longer, it ensures that you start from a clean slate. 3. After a few seconds, the Build should finish successfully. In the Build Log tab at the bottom status window, you should see (in blue lettering): Build successful:
Downloading the Blink-Nucleo-LED Example To run a program on an embedded board such as the ST Nucleo, you need to burn the output image into the microcontroller s flash. This is sometimes known as burning a program or downloading the program. The IDE includes a built in downloader: download the example program by: 1. Run ImageCraft >Program device with project output. You should see a progress bar showing the downloading progression. 2. When it is done, you should see the LED light up and blink. 3. You can look at the source files for the project by clicking on the project name in the project pane, and then click on the + icon. Double clicking a source file name, for example, main.c, opens the file in the editor. 4. You can change the LED blink rate by changing the code in the loop in main.c. Even if you are not yet proficient in C, you can try different numbers to the Delay??? function calls and see how that affects the program. Once you make the changes, click Build >Build, and then download the file again..
If the Program Download Fails Check the following possibilities. 1. Are the two red LEDs lit up constantly? If they do not light up at all, check the USB cable to make sure that it is connected. 2. If one or both red LEDs are blinking, then check to see if the USB driver is installed correctly. 3. In the CodeBlocks IDE, click Project >Build Options and switch to the Debug/Download Interface tab. Make sure that SWD is selected. 4. Switch to the Target tab. Make sure that the device is set up as ST and STM32F030R8. 5. Click OK. Rebuild the project. 6. If it still fails, please email support@imagecraft.com with a description of your issues.
The Next Steps You Are Done! You have used our IDE to build your first program, then downloaded and run your program on the microcontroller. Congratulations! So what s next? Run more Examples! You can click on the files that are part of the example project. If you double click on one of the files, e.g. main.c, it will be opened in the editor window of the CodeBlocks IDE. You can modify it and type Ctrl F9 to build the project, then use ImageCraft >Program device with project output to download the output to the board. Learn C! The JumpStart Guide To C (otherwise known as The Big Book of C ) is a complete introduction to the C programming language, with an emphasis on embedded programming. The book is available as an ebook (which is included with the JumpStart MicroBox package) and optionally in printed form. See our website http://c4everyone.com for details. Explore the JumpStart API. The JumpStart API is the easiest way to program the Cortex M devices without limiting the power of C. Pages of code dealing with low level peripheral initialization and setup are replaced by a few lines of API calls, allowing you to concentrate on solving problems with embedded systems rather than of the embedded systems. The JumpStart API is documented in the JumpStart API manual.