基于stm32f103初始化led代码
时间: 2024-05-12 07:15:27 浏览: 5
以下是基于STM32F103初始化LED的代码:
```c
#include "stm32f10x.h"
void GPIO_Configuration(void);
int main(void)
{
GPIO_Configuration(); // 初始化GPIO
while (1)
{
GPIO_SetBits(GPIOC, GPIO_Pin_13); // 打开LED
Delay(0xFFFFF); // 延时
GPIO_ResetBits(GPIOC, GPIO_Pin_13); // 关闭LED
Delay(0xFFFFF); // 延时
}
}
void GPIO_Configuration(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE); // 使能GPIOC时钟
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13; // 配置GPIOC的Pin13
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; // 设置GPIO速度为50MHz
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; // 设置为推挽输出
GPIO_Init(GPIOC, &GPIO_InitStructure); // 初始化GPIOC
}
void Delay(__IO uint32_t nCount)
{
for (; nCount != 0; nCount--);
}
```
在上述代码中,我们通过调用`GPIO_Configuration()`函数来初始化GPIO。在`main()`函数中,我们通过循环来打开和关闭LED,并且使用`Delay()`函数来延时。最后,我们在`GPIO_Configuration()`函数中配置了GPIOC的Pin13,设置了GPIO速度为50MHz,以及设置了为推挽输出模式。