[STM32F4] stm32F407G与电池管理系统

[复制链接]
442|10
 楼主| 咚了个咚 发表于 2025-6-20 22:33 | 显示全部楼层 |阅读模式
需要测量24节电池的电流和电压,并根据采集数据采取一些保护措施如停止电机驱动,启动风扇等
在atollic-standart库和CUBE-IDE-hal库遇到好多问题
因此我用没用hal库或标准库,参照参考手册写入寄存器,如,
RCC->APB2ENR| =0x00000100;
ADC 1->CR 1| =0x02000000;
,,,,,,
不使用hal库或标准库如何编程,一直调用库,现在不会写程序了


公羊子丹 发表于 2025-6-24 07:23 | 显示全部楼层
不用HAL库其实也可以,就是麻烦点,得对寄存器很熟才行。
周半梅 发表于 2025-6-24 07:24 | 显示全部楼层
我也是手动写寄存器,感觉控制更精准,就是一开始查手册比较累。
帛灿灿 发表于 2025-6-24 07:25 | 显示全部楼层
写寄存器建议把关键寄存器抽出来封装个小函数,用起来方便些。
童雨竹 发表于 2025-6-24 07:25 | 显示全部楼层
看你直接操作RCC和ADC,建议同时查下时钟树图和ADC配置顺序。
万图 发表于 2025-6-24 07:26 | 显示全部楼层
如果你用的是寄存器操作,调试建议开ST-LINK Utility看下寄存器实际值。
Wordsworth 发表于 2025-6-24 07:27 | 显示全部楼层
不用HAL是可以的,只要你自己把外设的初始化顺序都理清楚就行。
Bblythe 发表于 2025-6-24 07:28 | 显示全部楼层
其实可以结合用,关键的部分用寄存器,非时效部分用HAL,提高开发效率。
Pulitzer 发表于 2025-6-24 07:29 | 显示全部楼层
建议你参考下ST的“裸机”例程,比如标准库前期的例子,不用HAL但很清楚。
Uriah 发表于 2025-6-24 07:30 | 显示全部楼层
写寄存器记得加volatile,尤其是中断相关变量,不然优化后会出BUG。
Clyde011 发表于 2025-6-24 07:30 | 显示全部楼层
一直用库确实会生疏底层,写几个裸机项目是个不错的锻炼方法!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

45

主题

54

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部