多节电池的电池组监视器LTC6803干货调试总结
LTC6803是凌力尔特的多节电池的电池组监视器,用于监测监测电池组的每节电池。费了好几天劲才调出来,回过头来总结一下,希望对有用者有些帮助,全是干货。
1. SPI片选注意要等到CLK完了之后再上拉,否则写入不会成功。最好用示波器同时测量片选与CLK进行观察一下。模拟的SPI应该不存在这个问题,对于MCU自带的SPI外设要注意这个问题,记得判断缓冲区发送完的标志位
2. 6803接收不到有效命令将在1~2.5秒内复位,即便写入了配置也会无效了。这一点在单步调试非常容易出错。验证这一点可利用Vref,或者GPIO
3. Vref在默认未配置时输出低电平,必须写配置寄存器0的CDC位非0(退出待机模式),才能测量到输出3.065V
4. 手册中顶端指的是离MCU最远的器件,Vmode要低,TOS要高;中间器件都要接低;底端指最靠近MCU的器件,Vmode高,TOS低。只有一片6803,两者都接高好了
5. 注意片子SDO为开漏输出,必须上拉电阻才能达到高电平;否则接收到全是0。使用模拟SPI,可设置IO口为内部上拉解决这个问题 虽然没有用过这个IC,也用不起,但是看楼主这些经验,很明显失败多次总结来的,帮顶下。 用LT的片子,有钱人。{:sweat:} 看了下,果然是干货,收藏下! 顶楼主,上周刚在DZ60上写完6802、6803驱动,也发现几个问题,1、SPI配置时钟1M,要加入写入数据出错计数,强制结束。2、读有效数据前,一定要把SPI缓冲区清空,每个字节的读取,加入延时几十微秒再读。否则容易出错。3、6802、6803的PEC算法都是CRC8,两个初值不一样,没仔细看手册,走了弯路。 wmm20031015 发表于 2017-7-11 00:26
顶楼主,上周刚在DZ60上写完6802、6803驱动,也发现几个问题,1、SPI配置时钟1M,要加入写入数据出错计数, ...
建议SPI时钟配置不要太快呀。我这里发现芯片的SDO开漏输出经上拉的上升时间比较长,达到2us多,换算下来SPI频率低于250kHz比较妥当。 wmm20031015 发表于 2017-7-11 00:26
顶楼主,上周刚在DZ60上写完6802、6803驱动,也发现几个问题,1、SPI配置时钟1M,要加入写入数据出错计数, ...
能分享一下6802的SPI程序吗,简单的测试程序就行,谢谢! shizt 发表于 2017-7-27 10:38
能分享一下6802的SPI程序吗,简单的测试程序就行,谢谢!
wmm20031015 发表于 2017-7-27 20:45
谢谢分享{:handshake:} 非常感谢{:hug:} 这芯片 ,多少钱哈 有没有LTC6803的代码?小白看一下
页:
[1]