项目基础:
1.GPIO输入
2.宏定义:对数字进行重命名
关键词#define,#ifndef,#endif
例子:#define ABC 12345
翻译:ABC替换的是12345,前面的是新变量名字,后面是被替换的数字
3.typedef:对变量进行重命名
关键词:typedef
例子: typedef struct{} GPIO_InitStructure;
翻译:struct{}替换成GPIO_InitStructure
4.结构体:对不同的变量类型进行组合配对
关键词:struct
定义方式:struct{char x,int y,float z}StructName;
引用方式1:StructName.x='A',StructName.y=66.StructName.z=1.3
引用方式2:&StructName->x,表示对结构体的地址进行引用
5.按键基础知识
https://blog.csdn.net/m0_69142917/article/details/136644381
6.模块化编程
定义:单独对元器件驱动进行定义和封装(建立元器件的.c和.h文件),储存在project\HardWare文件夹下,记得要在keil软件里添加路径
1.LED驱动配置
首先点击Hardware文件,点击添加新文件>添加一个LED.c,一个LED.h文件,.c文件添加头文件,.h文件初始化#ifndef;#define<>#endif
添加LED启动函数void LED_Unit(void){}
把函数名添加到.h文件里且在.c文件里添加#include "LED.h"才能够外部引用
再添加一个LED_ON和OFF的函数
同样在.h文件里添加引用
运行结果0错误,0警告
下载到单片机,因为初始化之后输出低电平,端口为推挽输出模式,低电平驱动LED点亮
给端口设置低电平,编译运行,下载,LED熄灭
LED驱动配置完成;
2.按键驱动配置
与LED一样,先写KEY初始化文件KEY_Init(){}
添加按键读取函数uint8_t KEY_GetNum(void){}