在同一条I2C总线上挂接多个DS1859器件
DS1859双路、温控电阻不允许用户通过外部引脚改变其I2C从地址。相反,器件为主存储器提供可编程I2C从地址。在具体应用中,一条I2C总线可能需要接多个DS1859器件。由于所有DS1859出厂时的缺省I2C从地址都相同,因此,这些器件与I2C总线连接时,必须改变其中一个或多个器件的从地址。
本应用笔记阐述了同一条I2C总线上接两个DS1859时,如何改变其中一个器件的I2C从地址。这一方法可推广应用于挂接多个器件的情况。本文假定用户可根据需要将DS1859的WPEN引脚转换为逻辑高电平或逻辑低电平。
DS1859的独特之处还在于每个器件有两个从地址,其中一个可编程地址用来访问主存储器,另一个固定地址(A0h)用来访问辅助存储器。在本文的最后将讨论如何访问辅助存储器。
在同一条I2C总线上挂接两个DS1859
当同一条I2C总线上接两个DS1859时,必须改变其中一个器件的从地址,另一个器件则保持其缺省地址(A2h)不变。可通过以下步骤来实现这一点。
将一个DS1859 (器件1)的WPEN引脚驱动至信号地。
将另一个DS1859 (器件2)的WPEN引脚驱动至高电平。
将器件2的MPEN位置为高(从器件地址A2h,表01h,寄存器89h,第2位)。该设置对两个器件的MPEN位都有效,但是由于器件1的WPEN引脚接地,因此只有器件2被写保护。该步骤之后所有对从地址A2h的写操作都仅对器件1产生影响。
将器件1的从地址设置为任何期望的数值(00h - FEh,A2h除外)。进行编程设置时,采用从地址A2h,表01h,字节8Ch。
将器件1的ADFIX位置为高(从地址A2h,表01h,寄存器89h,第4位)。
器件1的从地址即配置为第5步所指定的地址。
然后WPEN引脚可被驱动至需要的逻辑电平,此时可以将MPEN位恢复至缺省值(0b)。
系统中连接多个DS1859
上述步骤也适用于同一条I2C总线接多个DS1859的情况。此时,除了某个从地址需要改变的器件外,所有器件均被置为写保护。
访问辅助存储器
用户应该注意,只有主器件地址能被改变。而所有器件的辅助存储器地址不能改变,仍然保持为A0h。I2C总线上只能有一个器件通过地址A0h访问辅助存储器。然而,用户可置位其它器件的ADEN位,并通过主器件地址及表00h来访问其它器件的辅助存储器。
结论
如果I2C总线上连接了多个DS1859 (具有相同的缺省I2C地址),并且这些器件已焊接在系统PCB上时,本应用笔记对如何改变这些器件的I2C从地址进行了阐述。
I2C总线多个DS1859器 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)