HAL库的封装相当方便,基本上所有的外设的操作都大同小异,这里我们以UART和CAN为例。移植是从F407移植到F427IIHx上。
前置基本操作
-
打开魔法棒(options),在device中选择自己想要的芯片型号

-
在c/c++中做如图修改

-
修改startup文件为自己需要单片机对应的型号

UART
在usart.c中的 HAL_UART_MspInit中
对如下函数中提到的引脚做改变
(此处我需要用到的引脚是PB6,PB7,故修改成果如图)

在另一函数HAL_UART_MspDeInit中
做如下改变

CAN
can也是一样,此处不做过多赘述

最后效果展示
能够在debug中看到uart接收到遥控器信息

同样,可通过can读到电机数据

总结
HAL库的封装还是相当方便的
而且配合cubemx的使用使得我上述的操作有如画蛇添足
其实,本次学习笔记是为了移植一份标准库的代码而写的
没怎么学习过标准库,对于其底层并不是特别了解,所以准备使用移植这样的手段
本文介绍了如何将STM32的HAL库从F407移植到F427IIHx,涉及UART和CAN的配置。通过修改魔法棒选项、C/C++设置和startup文件,实现外设驱动的适配。在HAL_UART_MspInit和HAL_UART_MspDeInit中调整引脚配置,确保UART正常接收遥控器信息,同时CAN也能读取电机数据。整个过程表明HAL库的移植相对简便,尤其配合Cubemx使用。
6320

被折叠的 条评论
为什么被折叠?



