stm32库函数跑马灯led.c和led.h代码
时间: 2024-02-27 11:55:12 浏览: 87
STM32-LED.rar_stm32_两个LED跑马灯
5星 · 资源好评率100%
以下是基于STM32库函数的跑马灯LED代码,包含led.h和led.c文件:
led.h:
```c
#ifndef __LED_H
#define __LED_H
#include "stm32f10x.h"
#define LED_GPIO_PORT GPIOA
#define LED_GPIO_CLK RCC_APB2Periph_GPIOA
#define LED_GPIO_PIN GPIO_Pin_8
void LED_GPIO_Config(void);
void LED_On(void);
void LED_Off(void);
void LED_Toggle(void);
#endif /* __LED_H */
```
led.c:
```c
#include "led.h"
void LED_GPIO_Config(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(LED_GPIO_CLK, ENABLE);
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);
}
void LED_On(void)
{
GPIO_SetBits(LED_GPIO_PORT, LED_GPIO_PIN);
}
void LED_Off(void)
{
GPIO_ResetBits(LED_GPIO_PORT, LED_GPIO_PIN);
}
void LED_Toggle(void)
{
GPIO_WriteBit(LED_GPIO_PORT, LED_GPIO_PIN, (BitAction)(1 - GPIO_ReadOutputDataBit(LED_GPIO_PORT, LED_GPIO_PIN)));
}
```
说明:
- 在led.h中定义了LED的GPIO端口、引脚和相关函数的声明
- 在led.c中实现了相关函数的定义,包括LED GPIO的初始化、开启、关闭和闪烁等操作
使用方法:
- 将led.h和led.c文件加入工程中
- 在main函数或其他需要控制LED的地方,调用相关函数来控制LED的开启、关闭和闪烁等操作
阅读全文