//This code turns on - onboard LED
#include<stdint.h> // standard integer header included
// define RCC_IOPENR
#define RCC_BASE 0x40021000UL
#define RCC_IOPENR (*(volatile uint32_t*)(RCC_BASE + 0x34))
//define and enable Mode register
#define GPIOA_BASE 0x50000000UL
#define GPIOA_MODER (*(volatile uint32_t*)(GPIOA_BASE + 0x00))
//define data register
#define GPIOA_ODR (*(volatile uint32_t*)(GPIOA_BASE + 0x14))
void delay(volatile uint32_t x){
while (x){
x= x-1;
}
}
int main(){
//enable GPIO port clock
RCC_IOPENR |= (1<<0);
//enable Mode register
GPIOA_MODER &= ~(3<<(5*2));
GPIOA_MODER |= (1<<(5*2));
//toggle data register
while(1){
GPIOA_ODR |= (1<<5);
delay (1000000);
GPIOA_ODR &= ~(1<<5);
delay (1000000);
}
}