一种实现单总线设备即插即用的方法

文档序号:9597801阅读:1113来源:国知局
一种实现单总线设备即插即用的方法
【技术领域】
[0001] 本发明属于单总线应用技术领域,具体涉及一种实现单总线设备即插即用的方 法。
【背景技术】
[0002] 单总线技术是美国Dallas半导体公司近年推出的新技术,它将地址线、数据线、 控制线合为一根信号线,具有硬件开销少,成本低,节省口线资源、结构简单等优点,因而在 多点测温系统中得到了很大的应用。每个单总线从器件都有一个唯一的64位的ROM序列 号,确保挂在总线上能被唯一地识别出来。
[0003] 然而,单总线在降低系统设计复杂性的同时,却带来了对单总线从器件分时控制 的难度,对于单总线上挂接的每一路器件,总线应用系统应能实时检测单总线从器件的卸 载、更换和增加等状态而不需要因为状态改变而变动设计或重写代码,即所谓的"即插即 用"。目前,可通过ROM搜索动态识别单总线上挂接的总线从器件,即实现部分下位机的即 插即用。但是当下位机从器件状态变化时,上位机应用系统需要进行代码修改,不能实时监 测器件状态改变,未能实现整个单总线应用系统的即插即用。另外由于目前采用的是64位 R0MID直接上传的方式,总线效率也较低,系统开销大。

【发明内容】

[0004] 发明目的:本发明的目的是为了解决现有技术中的不足,提供一种克服传统单总 线应用系统硬件开销大、即插即用性能差的问题,根据二叉树遍历原理并通过优化找出一 种通过对节点进行标记的方法来实现下位机控制系统的即插即用。通过辅助编码的写入, 改变将R0MID号上传的传统做法,使得上下位机开发相对独立,通过将辅助编码与实际监 测地理位置相对应,利用数据集和数据表格动态加载编号和监测点信息,以实现真正意义 的单总线应用系统"即插即用"技术。
[0005] 技术方案:本发明所述的一种实现单总线设备即插即用的方法,包括如下步骤: (1) 通过设置两个数组D_P[64]和0_^[64]分别来标记节点所在层数和节点搜索情 况; (2) 当搜索到某节点位置时,可对当前节点所在层数进行标记,即对数组D_P[64]相 应元素标记为" 1",同时规定,当第一次搜索到该层位置或仅对该层第一个子节点搜索完毕 时,不对数组D_lr [64]相应元素标记为" 1",当该层所有子节点均搜索完毕后再将该层D_ lr [64]相应元素标记为"1"; (3) 不断的反复执行步骤(2)的操作,直到本轮搜索的最后一个叶子点搜索完毕即搜索 到单总线从器件ROM序列号的第64位; (4) 当数组D_P[64]和0_^[64]均置"1"表明了该层所有子节点搜索完毕,而后再向 上回溯,继续寻找其他子节点; (5) 重复步骤(4)直到所有R0MID号都搜索完毕; (6) 利用单总线器件的EEPROM,采用编码软件写入一个辅助编号; (7) 利用编码器软件为每一个单总线从器件写入编码后,将编号上传至上位机数据库 管理系统,将编号与实际测温地址进行对应; (8) 保存在数据库中的辅助编号以及对应的监测点信息利用数据集和数据表格动态加 载。
[0006] 进一步的,步骤(1)与步骤(2)之间还包括: 单总线从器件通过以"线与"的方式挂载在总线上,单总线控制单元重复执行"读2位" 与"写1位"两项操作,从器件读取原码与反码,可得出对当前位的综合判断;单总线控制单 元则用于使能从器件,向总线上的从器件发回一个指定,以确定搜索方向。
[0007] 进一步的,所述单总线控制单元包括MCU处理器,所述MCU处理器的XI脚与X2脚 之间连接有晶振,所述晶振还连接有两个电容C1、C2,所述MCU处理器的1脚、2脚还分别连 接有存储器的6脚、5脚,所述存储器的6脚、5脚还分别通过上拉电阻Rl、R2与VCC电源 连接,所述存储器的1脚到4脚接地,所述MCU处理器的8脚和9脚分别连接有复位芯片的 6脚和7脚;所述MCU处理器的P21 口作为单总线的信号口,所述单总线的信号口与各个单 总线器件之间还设有总线收发器芯片,所述总线收发器芯片的输入端与所述MCU处理器连 接,所述总线收发器芯片的输出端通过单总线与各单总线器件连接。
[0008] 进一步的,所述MCU处理器采用单片机AT89S52,所述存储器采用串行EEPR0M存 储器AT24C256芯片,所述复位芯片采用MAX813芯片,所述总线收发器芯片采用74HC245芯 片。
[0009] 进一步的,所述74HC245芯片的VCC端口通电阻R4与电源连接,所述74HC245芯 片的GND端口 一路通过电容C3、电阻R3与电源VCC连接,另一路通过相互并联的电容C4以 及电解电容C5与电源连接。
[0010] 进一步的,所述原码与反码具体是指读取总线上的" 1"和"〇"操作,具体对应关系 如下:
进一步的,步骤(6)所述辅助编号与实际地理位置相对应,该辅助编号可借助串口,通 过编码软件进行编码输入。
[0011] 进一步的,所述编码软件采用.NET编写,通过串口对单总线器件编码,且采用 C0M1 口,波特率选择2400。
[0012] 进一步的,步骤(6)所述数组D_P[64]和D_lr [64]具体是采用uchar D_P[64]和 uchar D_lr[64]来标记节点所在层数和节点搜索情况的字符型数据。
[0013] 有益效果:本发明通过写入辅助编码,改变将R0MID号上传的传统做法,使得上下 位机开发相对独立;且通过优化二叉树算法,节省了系统开销,满足特定系统高实时性要 求。
【附图说明】
[0014] 图1为本发明单总线应用系统结构图; 图2为本发明的MCU处理器模块电路原理结构图; 图3为本发明的总线收发器模块电路原理结构图; 图4为本发明的从器件ROM编码与二叉树结构映射图; 图5为本发明的ROM搜索流程图; 图6为本发明的编码结构示意图。
【具体实施方式】
[0015] 如图1所示为一典型单总线应用系统结构图,图中DS18b20和DS2450是单总线从 器件,多个从器件通过单总线挂接在一起,连接到微控制器的通用I/O。微控制器通过串口 通信模块与上位机监控软件进行通信。每个单总线器件内部都有一个唯一的64位的ROM 序列号,确保挂在总线上能被唯一地识别出来。
[0016] 如图2和图3所示的单总线控制单元结构图。所述单总线控制单元包括MCU处理 器芯片AT89S52,所述MCU处理器的XI脚与X2脚之间连接有晶振,所述晶振还连接有两个 电容C1、C2,所述电容C1、C2的大小均为30PF。所述MCU处理器的1脚、2脚还分别连接有 存储器AT24C256芯片的6脚、5脚,所述存储器AT24C256芯片的6脚、5脚还分别通过上拉 电阻R1、R2与VCC电源连接,所述存储器的1脚到4脚接地,所述MCU处理器的8脚和9脚 分别连接有复位芯片的6脚和7脚;所述MCU处理器的P21 口作为单总线的信号口,所述单 总线的信号口与各个单总线器件之间还设有总线收发器芯片74HC245芯片,所述总线收发 器芯片74HC245芯片的输入端B0、B1端口与所述MCU处理器连接,所述总线收发器芯片的 输出端A0、A1端口通过单总线与各单总线器件连接。
[0017] 所述74HC245芯片的VCC端口通电阻R4与电源连接,所述74HC245芯片的GND端 口 一路通过电容C3、电阻R3与电源VCC连接,另一路通过相互并联的电容C4以及电解电容 C5与电源连接。所述电容C4的大小为0. 1 uF,所述电解电容C5的大小为47uF。
[0018] 上述电路中的晶振电路由两个30P的电容,一个12M的晶振所组成。因为单总线 控制单元无需要计算波特率,故采用12MHz晶振。根据晶振的频率,起振电容采用30PF。该 单元的正常工作电源电压为5V左右。电路比较简单,输入电源的电压宽度为12V,通过一个 5V的自流线性稳压器LM7805,然后辅助1个47uF电解电容和1个0. 1 uF的磁片电容滤去 杂波就可以了。存储电路采用AT24C256作为数据存储器。其在系统中的作用是存储控制 器搜索到的单总线上的ROM序列号。AT24C256是串行EEPR0M存储器,支持IIC总线数据 传输协议,存储器容量为32KB,用2根线与CPU构成串行接口。SDA是双向数据线,接CPU 的Pll ;SCL是时钟线,接CPU的P10,这2根线都必须通过上拉电阻接到VCC。CE是写保 护线,一般接地,表示允许读写操作。A0、A1是地址线,通过这2根地址线CPU最多可寻址4 个AT24C256器件。在本单元电路中,因为在IIC总线上只挂接一个24C256,故可将AO、A1 接地,采用地址00。复位、看门狗电路由MAX813芯片来完成。控制程序在运行过程中由于 干扰等各种因素会出现死机或程序跑飞等现象。
[0019] 由于单总线采用单根信号线,既传输时钟,又传输数据,而且数据传输是双向的, 所以只需要一个单片机I/O 口,采用单片机的P21 口作为单总线的信号线。如果直接在单 片机的I/O 口上挂接DS18B20,则驱动的DS18B20个数十分有限,故在总线之间增加一片 74HC245,以提高带负载能力。
[0020] 如图4所示,单总线从器件64位ROM编码分布于二叉树由根节点到叶子节点的64 条边上,每一个节点的左分支对应为0,右分支对应为1。由根节点到叶子节点某一条路径 上的64条边对应一个单总线从器件64位R0MID号,搜索单总线上所有R0MID号的过程就 是遍历该二叉树从根节点到所有叶子节点的过程。
[0021] 单总线从器件以"线与"的方式挂载在总线上,主控制器重复执行"读2位"与"写 1位"两项操作,前者读取原码与反码,可得出对当前位的综合判断,
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1