diff options
author | Clyne Sullivan <clyne@bitgloo.com> | 2025-02-05 15:52:50 -0500 |
---|---|---|
committer | Clyne Sullivan <clyne@bitgloo.com> | 2025-02-05 15:52:50 -0500 |
commit | 6d33ec12204a65613ded8bfc7ac92055712a4338 (patch) | |
tree | e2fbd5fc8a9fa521878b299973aa7c279917d838 /example/main.cpp | |
parent | 4add095344df7d2a800f09de2e3869384d175c2d (diff) |
add stm32 example
Diffstat (limited to 'example/main.cpp')
-rw-r--r-- | example/main.cpp | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/example/main.cpp b/example/main.cpp new file mode 100644 index 0000000..9fc545e --- /dev/null +++ b/example/main.cpp @@ -0,0 +1,32 @@ +#include "stm32u083.hpp" + +int main() +{ + using namespace STM32U083; + using LD3 = GPIOC::ODR::OD13; + using LD4 = GPIOA::ODR::OD5; + using LD5 = GPIOB::ODR::OD2; + + RCC::ALL::set< + RCC::IOPENR::GPIOAEN, + RCC::IOPENR::GPIOBEN, + RCC::IOPENR::GPIOCEN, + RCC::APBENR1::USART2EN>(); + + GPIOC::MODER::MODE13::write<1>(); + GPIOA::MODER::MODE5::write<1>(); + GPIOB::MODER::MODE2::write<1>(); + + unsigned i = 0; + while (1) { + if (i & 1) LD3::set(); else LD3::clear(); + if (i & 2) LD4::set(); else LD4::clear(); + if (i & 4) LD5::set(); else LD5::clear(); + + for (int j = 0; j < 100000; j++) + asm("nop"); + + i++; + } +} + |