niedziela, 19 lipca 2015

ARM STM32 NUCLEO pierwszy program


      Od jakiegoś czasu przymierzam się do mikrokontrolerów opartych o rdzeń ARM.  Zaopatrzyłem się w zestaw startowy STM32 NUCLEO oparty na procesorze STM32L152RET6. Firma STM udostępnia za darmo bardzo ciekawe i przydatne narzędzie jak STM32CubeMX. Pozwala ono na szybkie stworzenie szkieletu programu. Nie trzeba się przejmować jakie biblioteki dodać, aby zadziałało. Można nawet określić jakie piny będziemy wykorzystywać i w jaki sposób. Dzięki temu szybko udało mi się stworzyć pierwszy program do migania diodą LED na procesorze 32-bitowym z rdzeniem ARM  :). Do pisania programu wykorzystałem środowisko Keil 5. Program jest darmowy jeśli nie tworzy się programu wynikowego powyżej 32kB. Procesor w zestawie ma 512kB pamięci ;P. W przyszłości planuję przesiąść się na Eclipse.







#include "stm32l1xx_hal.h"
#include "stm32l1xx_hal_gpio.h"
#include "stm32l1xx_hal_rcc.h"
 
void SystemClock_Config(void);
static void MX_GPIO_Init(void);
 
#define LD2   5
#define S1    13
 
int main(void){
  HAL_Init();
  /* Configure the system clock */
  SystemClock_Config();
  /* Initialize all configured peripherals */
  MX_GPIO_Init();
 
  int pin = LD2;
  int index;
  while (1){
 GPIOA->ODR = (1 << pin);
        for (index = 0; index < 2000000; index++);
        GPIOA->ODR = (0 << pin);
        for (index = 0; index < 1000000; index++);
  }
}






Brak komentarzy :

Prześlij komentarz