大家好、
我有三个问题。 如果你们都能以某种方式帮助我、那将不胜感激!
1。
电量监测计在发送读取位后返回的数据格式是什么? 例如、在序列中发送字节后
0xAA 0x00 0x08 0xAB
(即 address+write=control_register=>chem_id_register=>address+read),chem_id_register 返回的字节中将包含哪些信息(例如,化学物质的数字 ID/字母 ID)? 电量监测计返回后、是否有某种表格列出了字节包含的所有相应信息? 我很困惑、因为我想解释从 chem_id 返回的数据;但是、我无法解释它、因为我 不知道数据告诉我什么。
2.
如何从指定的寄存器访问特定位的值? 例如,在 Flags()寄存器0x06和0x07中,如何通过返回的字节解释位4的低字节(即 CFGUPMODE)的值? 是否有一个特殊的发送字节序列、该序列将仅从位4的低字节中挑选数据并将其返回、或者它是否将所有位合并在一起?
3.
为什么在应用示例中、在读取命令之后会发送两个"额外"字节(引号意味着、由于我自己对该主题缺乏了解、我无法完全确定它们是否是额外的字节)? 例如、在应用示例中、
伪代码表示主机发送0x00 (CONTRAL_REGISTER) 0x08 (chem_id_register) 0x00 (未知 字节)。 未知字节的用途是什么? 为什么它不会在寄存器之后停止? 请向我解释第3条命令。
注意:我是 I2C 协议的业余爱好者。 如果我错了、请纠正我的问题。
注2:我目前没有测试材料、我主要学习数据表中的理论知识。 我正在使用 Arduino 作为 ISP 对 ATtiy24a 进行编程。
再次感谢您的帮助!
Jonathan