写一个stm32单片机的流水灯程序

这是一个 STM32 单片机流水灯程序的示例:

#include "stm32f10x.h"

int main(void) { // 初始化 LED 端口 RCC->APB2ENR |= RCC_APB2ENR_IOPCEN; // 使能 GPIOC 时钟 GPIOC->CRH &= ~(GPIO_CRH_CNF8 | GPIO_CRH_CNF9 | GPIO_CRH_CNF10 | GPIO_CRH_CNF11 | GPIO_CRH_CNF12); // 清空 GPIOC8-GPIOC12 的配置 GPIOC->CRH |= (GPIO_CRH_MODE8_0 | GPIO_CRH_MODE9_0 | GPIO_CRH_MODE10_0 | GPIO_CRH_MODE11_0 | GPIO_CRH_MODE12_0); // GPIOC8-GPIOC12 设置为输出

while (1) { // 循环流水灯效果 GPIOC->BSRR = (1 << 8); // LED1 亮 GPIOC->BSRR = (1 << 24); // LED2 灭 GPIOC->BSRR = (1 << 9); // LED3 亮 GPIOC->BSRR = (1 << 25); // LED4 灭 GPIOC->BSRR = (1 << 10); // LED5 亮 GPIOC->BSRR = (1 << 26); // LED6 灭 GPIOC->BSRR = (1 << 11); // LED7 亮 GPIOC->BSRR = (1 << 27); // LED8 灭 GPIOC->BSRR = (1 << 12); // LED9 亮 GPIOC->BSRR = (1 << 28); // LED10 灭 for (int i = 0; i < 1000000; i++); // 延时 } }

请注意,上面的代码仅作为参考。在实际使用中,你可能需要根据自己的硬件环境进行一些修改。

你可能感兴趣的:(单片机,stm32,嵌入式硬件)