电子文章 | 电子资料下载 | 家电维修 | 维修资料下载 | 加入收藏 | 全站地图
您现在所在位置:电子爱好者电子文章arm嵌入式为嵌入式应用选择合适的1-Wire®主机

为嵌入式应用选择合适的1-Wire®主机

11-20 15:54:20 | http://www.5idzw.com | arm嵌入式 | 人气:466
标签:arm嵌入式系统,arm系统,arm开发,http://www.5idzw.com 为嵌入式应用选择合适的1-Wire®主机,http://www.5idzw.com
  图3. 内置1-Wire主机的微控制器及可选的强上拉电路(虚线部分)

  3类. 合成的1-Wire总线主机(ASIC/FPGA)

  图4电路与图3非常类似。不同之处在于微控制器和1-Wire端口是内置在ASIC或PFGA中的。

  图4电路的主前提是需要具有单片机能力的ASIC或FPGA,至少有一个空闲的双向端口引脚,3470个未使用的门和一定的程序存储器空间。电路的优点在于1-Wire时序由硬件产生,可以减少前期软件开发的时间和成本。因此,整个应用软件可以用高级语言编写。缺点在于,并非所有ASIC或FPGA都有5V容限端口。1-Wire工作电压取决于ASIC/FPGA的端口特性。一些2.5V FPGA有5V容限I/O端口,比3.3 FPGA理想。根据应用中1-Wire从器件和1-Wire上拉电压,可能需要其它端口引脚提供强上拉。1-Wire总线上挂接多个从器件时,RPUP值应取低一些。此时,应检查VOLmax是否与1-Wire从器件和微处理器端口的输入特性兼容。更多信息请参阅应用笔记119:"嵌入1-Wire主机"、应用笔记120:"利用1-Wire主机通讯"、应用笔记145:"Interfacing the Maxim 1-Wire Master (DS1WM) to an ARM7 Processor"、应用笔记3829:"确定多从机1-Wire网络的恢复时间"、以及DS1WM数据资料。欲获取1-Wire主机Verilog/VHDL代码,请通过提交技术支持要求。应用软件示例请参见应用笔记120和145。

  图4. 带可选强上拉电路(虚线部分)的ASIC/FPGA

  4类. 串行接口协议转换

  图5电路只需一个额外器件即可构建一个功能齐备的1-Wire主机。

  图5电路的主要前提是需要一种控制UART的方式,例如微控制器、FPGA或PC串行端口,还需要一定的程序存储器空间。电路的优点在于1-Wire时序由硬件产生,可以减少前期软件开发的时间和成本。因此,整个应用软件可以用高级语言编写。1-Wire时序可以通过控制寄存器微调。DS2480B支持强上拉和有源上拉。嵌入式应用不需要对1-Wire时序和有源上拉进行微调,不过,内置的4位搜索加速器使1-Wire ROM搜索在软件中更易实现。就缺点而言,DS2480B较图1至图4中的分立元件昂贵。DS2480B仅采用5V工作电压。它是功能最强的单芯片1-Wire主机,适合与大量从器件通信。有源上拉持续直至超过第二个门限。DS2480B也可以编程1-Wire EPROM器件。更多信息请参阅应用笔记192:"DS2480B串行接口1-Wire线驱动器的使用" 、应用笔记4104:"DS2480B 1-Wire时序的理解及配置"、以及DS2480B数据资料。可点此处下载AN192的源代码。



  图5. UART/RS-232接口

  图6电路非常适合I2C总线应用。

  图6电路的主要前提是需要一个I?C总线控制器,如微控制器或FPGA/ASIC,还需要一定的程序存储器空间。电路的优点是性价比高。1-Wire时序由硬件产生,可以减少前期软件开发的时间和成本。因此,整个应用软件可以用高级语言编写。DS2482支持强上拉以及有源上拉。然而,嵌入式应用不需要有源上拉。内置1位搜索加速器使1-Wire ROM搜索更容易在软件中实施。缺点在于,DS2482驱动1-Wire从器件的数目比不上DS2490或DS2480B。DS2482还提供8通道版本。单通道的DS2482-100有一个控制输出,用于增加强上拉功能(Q1)。与DS2480B和DS2490相比,DS2482-100的有源上拉持续时间是固定的。I2C上拉电阻值取决于I?C总线的长度和分布范围。更多信息请参阅应用笔记3*:"如何使用代用I?C接口的DS2482 1-Wire主控制器"、以及DS2482-100和DS2482-800数据资料。可点击此处下载应用笔记3*中的源代码。


  图6. 带可选超强上拉电路(虚线部分)的I2C接口

  图7中的1-Wire主机特性与DS2480B非常类似。

  图7电路的主要前提是需要USB端口,一般PC中都有。电路的优点在于1-Wire时序由硬件产生,可以减少前期软件开发的时间和成本。因此,整个应用软件可以用高级语言编写。1-Wire时序可以通过控制寄存器微调。DS2490支持强上拉和有源上拉。不过,嵌入式应用不需要对1-Wire时序和有源上拉进行微调。内置的4位搜索加速器使1-Wire ROM搜索在软件中更容易实施。就缺点而言,DS2490较图5中的器件成本高,且工作电压仅为5V。作为1-Wire主机,DS2490没有DS2480B功能强大。有源上拉持续直至超过第二个门限。更多信息请参阅应用笔记117:"DS2490 Universal Serial Bus Descriptors"、以及DS2490数据资料。应用软件示例见1-Wire Public Domain Kit。


  图7. USB接口1-Wire主机,该图为简化电路,详细电路参见DS2490数据资料

  可接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] [2] 

,为嵌入式应用选择合适的1-Wire®主机
关于《为嵌入式应用选择合适的1-Wire®主机》的更多文章