你好,我是Denis Jeong。
我使用的是Atmega128和BQ34Z11。 我使用Atmega128和BQ34Z11之间的I2C。
当我构建基于 BQ34Z110的MY电路时,请参阅此网站www.mikrocontroller.net/topic/33.9243万
我为我的电路提供了12伏电压。
我没有连接SRP,SRN,因为我希望只测量电池电压。
首先,我读取 BQ34Z110上的数据闪存值。
我取得了成功。
第二步,我将 BQ34Z110上的数据闪存值转换为静音。 然后我检查 了BQ34Z110上的Received Data Flash值。
这样就成功了!!(我 根据电压测量范围= 1.44万[mV]和容量测量范围= 2900[mA/h]设置了BQ34Z110上的数据闪存值)
第三步,我将读取蓄电池电压的命令发送至 BQ34Z110,如下所示。
1."开始位-- 0xAA -- 0x08 --重复开始-- 0xAB --数据读取(LSB)--数据读取(MSB)--结束"
2."开始位-- 0xAA -- 0x08 --重复开始-- 0xAB --数据读取(LSB)--数据读取(MSB)--结束"
3."开始位-- 0x55 -- 0x08 --重复开始-- 0x55 --数据读取(LSB)--数据读取(MSB)--结束"
4."开始位-- 0xAA -- 0x08 -- 0x09 --重复启动-- 0xAB --数据读取(LSB)--数据读取(MSB)--结束"
5."开始位-- 0xAA -- 0x08 -- 0x09 --重复启动-- 0xAB --数据读取(LSB)--数据读取(MSB)--结束"
6."开始位-- 0x55 -- 0x08 --结束-- 0x55 --数据读取(LSB)--结束--开始位-- 0x55 -- 0x09 --结束-- 0x55 --数据读取(LSB)--结束
7."开始位-- 0x55 -- 0x08 --结束-- 0x55 --数据读取(LSB)--结束--开始位-- 0x55 -- 0x09 --结束-- 0x55 --数据读取(LSB)--结束
我总是成功的I2C,但未能获得结果(MSB,LSB)。 我经常收到LSB = 12或18 (十进制)和MSB = 00。 我有时收到LSB = 224 (十进制),MSB = 46 (十进制)和LSB = 76 (十进制),MSB = 02 (十进制)。
我认为 ,我得到的结果是完全错误的。
我不知道为什么我没有得到正确的结果。
这些问题使我精神错乱。
为什么我没有收到电压数据(MSB,LSB)?
我的电路是否出了问题??
获取电压数据(MSB,LSB)的数据格式是否错误?
请告诉我什么是错的。
谢谢