嵌入式应用中的四类1-Wire主机电路设计
可接PC的适配器方案
由于它们不需要由用户开发软件,因此作为1-Wire主机的PC机附件非常便于作为原型*估1-Wire器件。除了适配器、待检测1-Wire器件和现成的电缆,用户需要的就是*估软件,如基于Java的可免费下载的OneWireViewer。PC机适配器1-Wire端口即适合连接iButton?也适合母RJ-11连接器。具体情况如表1所列。
用OneWireViewer*估1-Wire器件时,识别芯片存在与否没有差别。然而,当对具有1个从器件的应用进行建模时,识别芯片需要执行Search ROM命令,而不是Read ROM命令。这使得建立软件原型较为复杂。
表1. 适合PC的1-Wire适配器
哪款1-Wire主机适合我的应用?
为更好的回答这一问题,先确定以下事情:
确定应用是否需要强上拉。参见"1-Wire术语"部分。
确定应用中的1-Wire工作电压。参见"1-Wire术语"部分。
在决策表(表2)中,删去无法提供的前提条件的方案(列)。
在决策表中,删去实际应用不支持的工作电压的方案(列)。
如果应用需要强上拉,在第5行填YES,否则填NO。
删减后剩下的方案,执行以下步骤:
估算附加硬件的成本(根据第3行项目;如果第5行中有YES,则还包括第4行项目)并填写到第6行。除非需要升级到较大的微控制器或FPGA/ASIC,否则假定增加端口完全免费。升级时,微控制器或FPGA/ASIC增加了边际成本。
估算软件开发成本并按照构建单元数平分。将数据填入第7行。如果无法估算软件开发成本,请填写0或留白。
把第6行和第7行的数字相加,结果写到第8行。
第8行中成本最低的就是最佳选择。
表2. 决策表 Row # Title Schematic/Figure Number
结束语
适合嵌入式应用的1-Wire主机应该在附加成本尽可能低的前提下符合1-Wire器件电气要求(即工作电压,若有必要还应带强上拉)。最终选择取决于应用中空闲的(未用)资源,包括端口引脚、UART、I?C总线甚至USB端口,以及程序存储器空间。如果空闲资源不足,有必要升级为带有更多端口和/或程序存储器的微控制器或FPGA。
在串行接口协议转换类型方面,DS2482-100是最具性价比的选择。对于从器件数目比较多的应用, DS2482-800每1-Wire通道成本更低。虽然微处理器端口引脚附件电路的成本大大低于DS2482-100,但在软件开发方面投入的额外精力(尤其是当需要写"位拆裂"的低级驱动器时)只能通过构建的单元数目分担。对于基于FPGA的应用,合成1-Wire总线主机是一个值得关注的解决方案。如果DS80C4XX微控制器的其他功能可以很好的满足应用要求,则利用内置1-Wire主机所需的额外组件成本只有几美分。采用DS80C400时,1-Wire时序由硬件产生,所以软件开发成本微乎其微。虽然DS2480B和DS2490适合嵌入式应用,但它们通常应用在PC机端口适配器中。
- 1-WIRE总线详解(12-15)
- 自制USB接口和RS232串口的1-wire转接线(12-12)
- 基于1-Wire总线的DS28E01加密芯片原理研究及其在FPGA加密系统中的应用 (02-26)
- 1-wire总线汇编程序(01-07)
- 为嵌入式应用选择合适的1-Wire®主机(08-27)
- 使用PIC读写1-wire EEPROM DS2430的实例程序(08-12)