Mercurial > lcfOS
diff examples/c3/blink.c3 @ 300:158068af716c
yafm
author | Windel Bouwman |
---|---|
date | Tue, 03 Dec 2013 18:00:22 +0100 |
parents | test/c3examples/blink.c3@05184b95fa16 |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/examples/c3/blink.c3 Tue Dec 03 18:00:22 2013 +0100 @@ -0,0 +1,30 @@ +/* This file blinks a LED on the STM32F4 discovery board. + +the board has 4 leds on PD12, PD13, PD14 and PD15 + +*/ + +module blink; + +import stm32f4xx; + +// Functions: +function void main() +{ + // Memory mapped control registers: + var GPIO_Type GPIOD; + GPIOD = cast<GPIO_Type>(0x40020C00); + var RCC_Type RCC; + RCC = cast<RCC_Type>(0x40023800); + + // Enable the clock to port D: + RCC->AHB1ENR = RCC->AHB1ENR | 0x8; + + + // PD13 == output (01) + GPIOD->MODER = (1 << 26); + GPIOD->ODR = (1 << 13); + + while(true) {} +} +