输入输出板级支持包的构建笔记
一、输出板级支持包(初始化LED)
1、在CubeMX自动生成的文件下创建一个User目录,在下面创建一个LED目录![](https://img-blog.csdnimg.cn/a7348f47644d4186afa0acb00d6e4d9d.png)
2、File->new:在LED目录下新建两个文件,然后双击Core后缀文件将.c文件加入进去,在h文件下写入宏定义防止头文件被多次重复调用,c文件下引用h文件,最后不要忘记在魔术棒添加头文件的路径。
3、在c文件中写一个init(初始化),并在h文件中声明:(和STD库的教程一样,根据结构体选择参数然后写入init函数进行初始化),我也不知道为什么教程不是直接复制CubeMX生成好的个gpio配置要自己重新写一遍
4、在h文件中声明LED_Init并且写了一些宏,有直接调用HAL库函数点亮反转电平的函数,也有直接向寄存器写数据的宏定义
二、输入板级支持包的构建(初始化两个按键)
1、File->new:在LED目录下新建两个文件,然后双击Core后缀文件将.c文件加入进去,在h文件下写入宏定义防止头文件被多次重复调用,c文件下引用h文件,最后不要忘记在魔术棒添加头文件的路径。(在上一级创建了User文件夹,方便区分板级支持包)
2、在c文件中写一个init(初始化),并在h文件中声明:(和STD库的教程一样,根据结构体选择参数然后写入init函数进行初始化),我也不知道为什么教程不是直接复制CubeMX生成好的个gpio配置要自己重新写一遍
3、写读取按键电平,判断按键是否被按下,然后返回按键值(根据硬件不同代码不同,看原理图按键按下PA0会读取为1,调用ReadPin读取电平,判断电平为set还是reset)若是被按下则返回1否则返回0.