STMCU小助手
发布时间:2023-2-1 15:38
|
bq4050电池调试记录1 z% r% d" t# j3 e MCU型号为STM32F407VGT6TR,采用IO模拟时序匹对SMBUS接口时序,对bq4050芯片进行读取,该案例时序可以类比TI公司其他smbus接口、bq芯片的读写操作。接下来,就对调试过程进行说明。 1.1 原理图设计* \8 P. L5 R1 t- @1 t0 p
连接到MCU IIC3管脚,PC9 PA8,这里可以供软件选择,是否使用MCU片上IIC3,或者使用模拟IO进行模拟时序操作。3 y2 P. n8 `. A' O7 X! d# l$ j # q% d# V* C7 C' y
IIC管教上拉处理
6 B4 G7 x @" y4 t3 a% {7 l0 V Q6 \ ; m2 e {- r. m2 `! @$ r( d 好了,原理图就是这样比较简单。 ; V" S4 y$ j* o- ?, |: L 1.2 软件调试6 O$ d! @: Z" s' e2 O 软件调试过程比较心累,这里需要记录一下。+ p, t3 E/ S. U5 h7 o! Q. F $ M0 i- n( s$ [: r* u% ] 第1天2 C7 _" D3 t+ o/ X; {* r 刚开始使用模拟EEPROM的iic时序,做好代码设计,进行调试,结果是SMBUS一直没有从机ACK信号。怀疑地址错误,各种替换地址,结果还是一样。3 ]7 w& q( W# L ' c% G- \( x) Y8 y' B3 E" o5 L 第2天-5天 网上疯狂搜索SMBUS接口时序的代码,但是网上的代码质量太差,时序也没有描述清楚,浪费了很多时间尝试,调整了无数次时序,读取电压上来的数据还是不对。 新建工程单独调试SMBUS接口,刚开始都是在自己的项目工程上添加,修改频度次数太多了,不利于版本保存。也是耗费时间精力,搞累了,还没有效果。) y+ w8 \$ t5 s2 x+ y3 U# [' J 第6天-第7天 问电池厂家借过来EV2300,安装驱动,下载TI提供 Battery Management Studio软件,连接好EV2300进行数据读写2 c6 t) _9 f& V6 }5 K 抓取EV2300读取电池的SMBUS接口时序,分析。 修改自己的代码,严格按照上述抓取的时序,再次进行读取,可以了。- s6 w _* r1 z 1.3 总结 TI官方文档针对SMBUS时序的细节太少了。网上搜索到的IIC和SMBUS的时序,总体上说smbus比较慢,是IIC时序的低速的表现。这很容易让人误解,从我抓取的SMBUS时序图上看,smbus的时序和IIC的时序差异还是比较大的,主要特点就是慢,真慢,难道慢就可以降低功耗了。。。。。 软、硬件调试有时候就是这样,费时费心,这也许是设计师不愿意使用没有用过的case。 9 `' ^4 B/ _) M6 N! i8 E. Q 1.4 关键记录 D: Q+ u' `: ]/ R- j7 R# P9 J9 | 详细记录参考
————————————————) p u, \6 e3 F% \# W5 W/ k, ^* ^ 版权声明:大牛攻城狮 4 A& F5 n }# p |
【STM32H735G-DK 测评】STM32H735G-DK External Loder 编译和测试
Keil-MDK 在线调试设置断点的高级用法
请教下STM32N6570 怎么把分辨率改成320x240并可以全屏显示
【福利三:逢7发帖赢大礼】想要充分利用STM32H743VI片内的RAM空间(但并不顺利)
基于stm32平台上的IC-MU磁绝对值编码器SPI通讯和码盘数据处理
使用STM32 MCU和MPU连接PDM数字麦克风
分享STM32资料-采用 STM32U031R8 MCU 的 STM32 Nucleo-64 开发板,官方资料,数据手册等资料
HRTIM 指南
使用 STM32 的 DWT 单元监控内存
DAC,COMP,HRTIM Fault 功能的使用
微信公众号
手机版