基于AT32(STM32)单片机的模块化代码之——Led代码模块化
上个文章讲了按键的模块化代码,这个文章贴一下我写的led灯部分的模块化代码,其实大同小异,按键和led灯都是gpio口的应用,不同的是用于按键的gpio口方向为输入方向,用于led灯的gpio口的方向为输出方向
1.环境介绍
平台:AT32F415单片机,雅特力公司的AT32系列单片机其实跟STM32系列单片机大同小异,包括库函数等基本都是一样的,所以这款代码无论是AT32还是STM32都是适用的。
开发环境:MDK V5 for arm
2.代码模块化思路
2.1在led.h文件中定义枚举类型,枚举应用到的led灯
//枚举led灯
typedef enum
{
LED1_W,
LED1_O,
LED2_W,
LED2_O,
LED3_W,
LED3_O,
LED4_W,
LED4_O,
LED5_W,
LED5_O,
LED6_W,
LED6_O,
LED7_W,
NUM_LED
}ENUM_LED;
2.2 将枚举的led与其实际应该进行映射
//将led灯与其标识的功能对应上,电热毯项目
#define LED_POWER LED7_W
//区域1各级led对应
#define LED_Z1L1_W LED1_W
#define LED_Z1L1_O LED1_O
#define LED_Z1L2_W LED2_W
#define LED_Z1L2_O LED2_O
#define LED_Z1L3_W LED3_W
#de