帮我写一段STM32F103的LED灯代码
时间: 2023-03-03 22:18:05 浏览: 82
#include "stm32f10x.h"// 定义相关的GPIO
#define LED_GPIO_PORT GPIOB
#define LED_GPIO_PIN GPIO_Pin_5// 初始化LED灯
void LED_Init(void)
{
GPIO_InitTypeDef GPIO_InitStructure; // 打开LED灯的时钟
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE); // 配置LED灯的引脚为输出
GPIO_InitStructure.GPIO_Pin = LED_GPIO_PIN;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(LED_GPIO_PORT, &GPIO_InitStructure);
}// LED灯控制函数
// led: LED编号 0~3
// cmd: 命令,0,关闭;1,打开
void LED_Set(uint8_t led, uint8_t cmd)
{
if (led == 0)
{
if (cmd == 0)
GPIO_ResetBits(LED_GPIO_PORT, LED_GPIO_PIN);
else
GPIO_SetBits(LED_GPIO_PORT, LED_GPIO_PIN);
}
}// 程序入口函数
int main(void)
{
// 初始化LED灯
LED_Init();
// 打开LED灯
LED_Set(0, 1); while (1);
}这是一段写STM32F103的LED灯代码,我已经完成了代码,可以使LED灯亮起:#include "stm32f10x.h"// 定义相关的GPIO
#define LED_GPIO_PORT GPIOB
#define LED_GPIO_PIN GPIO_Pin_5// 初始化LED灯
void LED_Init(void)
{
GPIO_InitTypeDef GPIO_InitStructure; // 打开LED灯的时钟
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE); // 配置LED灯的引脚为输出
GPIO_InitStructure.GPIO_Pin = LED_GPIO_PIN;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(LED_GPIO_PORT, &GPIO_InitStructure);
}// LED灯控制函数
// led: LED编号 0~3
// cmd: 命令,0,关闭;1,打开
void LED_Set(uint8_t led, uint8_t cmd)
{
if (led == 0)
{
if (cmd == 0)
GPIO_ResetBits(LED_GPIO_PORT, LED_GPIO_PIN);
else
GPIO_SetBits(LED_GPIO_PORT, LED_GPIO_PIN);
}
}// 程序入口函数
int main(void)
{
// 初始化LED灯
LED_Init();
// 打开LED灯
LED_Set(0, 1); while (1);
}我已经完成了一段用于STM32F103的LED灯代码,可以实现LED灯的亮灭。