From this moment, I will use in my projects Keil uVision. It’s true, that Coocox is free, but it has some bugs, which are great fixed in Keil. Keil has some limitations for free (32KB flash support, no optimization) version, but for our examples and libraries, it is just fine. For updates, look at my Github projects repository, where are all projects and libraries. There is no included my libraries in bottom project, you have to download it manually from Github. All...
Because STM32F429 is not supported by Coocox CoIDE with all of its features, I downloaded CMSIS files for STM32F429 from ST’s web site, version 1.3.0. I created a new project for STM32F407 and replaced files with downloaded for STM32F429. Now you can work with both discovery boards in Coocox, but I prefer working with Keil uVision (step-by-step tutorial for Keil uVision). Also, Coocox does not support 2MB flash yet, only for 1MB, what is fixed in Keil. All CMSIS files...
Let’s say something about SPI. SPI (or Serial Peripheral Interface) is a protocol named by Motorola. With him you can control sensors, SD card and much more. SPI protocol works in a ways where there is one master and multiple slaves, In other words, master is our STM32F429 Discovery board and let’s say, SD card is slave.
In first tutorial about discovery board we were blinking led. But I said nothing about system clock speed. In while loop we just use
// Waste some tome
for (i = 0; i < 500000; i++);
for some delay, to actually see how led was blinking. We didn’t know at which clock speed our processors work and for first time, I think you didn’t even ask yourself.
Your first blinky project works, but you don’t know how? I will explain GPIO (General Purpose Input/Output) CMSIS Library. This library is used to work with physical pins on microcontroller. You can set pins to input or output, put them low (0 volts) or HIGH (3,3 volts), select pull resistors, choose output type and select clock speed.