#include "stm32f1xx.h"
int main(void) {
// 1. Тактирование порта A
RCC->APB2ENR |= RCC_APB2ENR_IOPAEN;
// 2. PA0 — выход push-pull, 2 МГц
GPIOA->CRL &= ~(0xF << (0 * 4));
GPIOA->CRL |= (0x2 << (0 * 4));
// 3. Основной цикл
while (1) {
// Зажечь светодиод на PA0
GPIOA->BSRR = (0x1UL << 0); // PA0 = 1
for (volatile uint32_t i = 0; i < 500000; i++);
// Погасить светодиод на PA0
GPIOA->BSRR = (0x1UL << 16); // PA0 = 0
for (volatile uint32_t i = 0; i < 500000; i++);
}
}