HAL库板级支持包的构建

输入输出板级支持包的构建笔记

一、输出板级支持包(初始化LED)

1、在CubeMX自动生成的文件下创建一个User目录,在下面创建一个LED目录

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.

 

 总结:教程是直接写的和官方库差不多,没有用CubeMX直接生成的代码,暂时不知道为什么。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值