STM32F3 Discovery First Steps

Первый пример конечно же должен быть «Hello World»
А в Embedded программировании поморгать светодиодом

Для начала Led нужно инициализировать:

STM_EVAL_LEDInit(LED3);

И можно переключать

STM_EVAL_LEDToggle(LED3);

Чтобы мигать не одним светодиодом а всеми сразу я залез в функцию Toggle
и сделал переменную led

GPIOE->ODR ^= led++;

Ну и полный код получился

#include <stdio.h>
#include "stm32f30x.h"
#include "stm32f3_discovery.h"

void sleep(uint32_t nTime);

void main (void) {
  STM_EVAL_LEDInit(LED3);
  STM_EVAL_LEDInit(LED4);
  STM_EVAL_LEDInit(LED5);
  STM_EVAL_LEDInit(LED6);
  STM_EVAL_LEDInit(LED7);
  STM_EVAL_LEDInit(LED8);
  STM_EVAL_LEDInit(LED9);
  STM_EVAL_LEDInit(LED10);
  uint16_t led=0;
  while(1) {

   // STM_EVAL_LEDToggle(LED3);
     GPIOE->ODR ^= led++;
      printf("%d \r\n", led);
    sleep(50000);
  }
}

void sleep(uint32_t nTime)
{
  volatile uint32_t i = nTime;

  while (i--);
}

Проект выложен на GitHub

Комментирование закрыто.