在嵌入式系统中分配硬件地址的装置和方法

文档序号:6393914阅读:175来源:国知局
专利名称:在嵌入式系统中分配硬件地址的装置和方法
技术领域
本发明涉及一种在嵌入式系统中分配硬件地址的装置和方法,确切地说,涉及一种在有多个从设备挂接在总线上的情况下,如何对每个从设备分配硬件地址的装置和方法,属于计算机技术领域。
背景技术
在嵌入式系统中,在同一总线上经常会挂接多个从设备。为了能够区分和访问每个从设备,需要为其分配硬件地址。目前大多是采用拨码开关或固化在ROM中进行硬件地址的设置和分配。这种现有方法具有很大的缺陷一是影响批量生产。如果嵌入式系统采用拨码开关或固化在ROM中设置和分配硬件地址,就需要在设计时就对每个从设备分别设定各自的独立地址。这样在实际生产制造过程中,每个从设备的生产操作缺乏一致性和互换性,影响批量生产效率。
二是影响安装使用。由于嵌入式系统的特性,一般为从设备设置的硬件地址都是有限的一位、两位或三位数字,不可能会有网卡那样多的位数。于是在批量生产的产品中,一些从设备的硬件地址难免会有重复使用的情况。这样在安装使用时,必须先检查每个从设备的硬件地址,避免在同一套系统中出现地址重复,从而增加了系统安装使用的程序和难度,也增加了故障出现的概率。另外,如果要对已经配置好的系统进行扩充时,也十分麻烦首先要对该系统所有从设备的硬件地址进行检查,然后再选择尚未使用的硬件地址作为扩充设备的地址。

发明内容
本发明的目的是提供一种在嵌入式系统中分配硬件地址的装置和方法,该装置通过结构简单的硬件电路和简明的操作步骤实现了硬件地址的自动分配和传递派发,较好地解决了使用拨码开关和固化在ROM中配置硬件地址的传统方法所造成的批量生产和安装使用中的困难和繁琐,还便于嵌入设备的扩充;因此,本发明的装置和方法可以广泛应用于嵌入式系统中的硬件地址分配问题。
本发明的目的是这样实现的一种在嵌入式系统中分配硬件地址的装置,其特征在于该装置包括有一个含有CPU的控制端模块、总线和多个总线控制模块,所述多个总线控制模块分别并接在该总线上,用于执行对该总线后续线路的断开或连接操作,使得与该总线相连接的各个总线控制模块能够分别得到顺序分配的硬件地址。
所述总线控制模块的控制电路都是由微处理器和其外围电路-总线收发器、继电器开关电路与继电器组成,所述微处理器的功能是按照设定程序执行相关操作,控制其TX/RX接口连接的总线收发器从总线上收发指令和存储接收到的硬件地址,以及通过其I/O接口控制继电器开关电路工作,使得继电器执行与总线后续线路的连接或断开的操作。
所述控制端模块的电路结构与总线控制模块相同,以减少模块种类。
所述总线是由一条高电平线和一条低电平线组成的控制器局部网总线,或至少包括一条高电平线和一条低电平线的其它总线,该总线的一端与控制端模块中的CPU连接,另一端串接可形成良好端接的匹配电阻。
所述继电器开关电路是控制继电器的供电电源的模拟开关电路。
所述继电器用于其所在的总线控制模块并接的总线在连接后续总线还是连接终端匹配电阻之间进行切换;该继电器是双刀双掷结构,每个继电器的两个转换接点分别连接总线中的一条高电平线和一条低电平线,该继电器的两个静接接点分别连接与各自转换接点上的总线相对应的后续总线,两个动接接点之间串接可形成良好端接的匹配电阻。
本发明的目的是这样实现的一种在嵌入式系统中分配硬件地址的方法,其特征在于包括下列步骤
(1)控制端模块以广播形式发出分配地址指令;(2)各个结点的总线控制模块接收到分配地址指令后,分别通过微处理器命令各自的继电器断开与后续总线的连接,并进入接收地址的状态;此后只有第一个结点的总线控制模块仍然通过总线连接控制端模块;(3)控制端模块发出结点硬件地址的首地址,并准备接收总线上各个结点发回的地址;(4)第一个结点的总线控制模块接收到控制端模块发出的首地址后,先将其作为该结点的硬件地址存储起来,再命令继电器进行切换,接通后续总线,使第二个结点的总线控制模块接通总线而与控制端模块相连接,然后关闭接收地址状态,进入正常工作模式,最后将本身的硬件地址加上一个设定数值后发送到总线上;(5)控制端模块接收到第一个结点发回的地址,作存储记录;(6)第二个结点的总线控制模块接收到前面结点发出的硬件地址,先将其作为该结点的硬件地址存储起来,再命令继电器进行切换,接通后续总线,使下一个结点的总线控制模块接通总线而与控制端模块相连接,然后关闭接收地址状态,进入正常工作模式,最后将本身的硬件地址加上一个设定数值后发送到总线上;(7)如果控制端模块在一个设定的时间内接收到结点发回的地址,则返回步骤(5),执行相应操作;如果控制端模块在所述设定的时间内没有接收到结点发回的地址,则顺序执行后续操作;(8)控制端模块进入正常工作模式,标志该硬件地址分配和传递流程的结束。
所述步骤(4)和(6)中硬件地址加上的一个设定数值是自然数,其数值选择的根据是系统设计和今后扩展的需要。
所述步骤(4)和(6)中硬件地址分别加上的一个设定数值是同一个数值,也可以是不同的数值。
所述步骤(7)中设定的时间长短是依据该嵌入式系统执行相应操作所需时间,再加上适当的富余时间。
利用本发明的装置和方法,可以较好地解决嵌入式系统中各个结点的硬件地址自动分配问题,而且只要设置好相应参数,整个过程全部自动操作,无需人员干预,不仅彻底避免了目前在生产过程中使用人工配置硬件地址经常出现的差错,而且,显著地减小了地址配置的劳动强度,提高了工作效率。本发明的总线控制模块的控制电路结构简单,成本低廉,调试方便,工作可靠。控制端模块可以采用与总线控制模块相同的电路结构,以减少模块种类,提高批量生产成本和效率。另外,使用本发明建立的嵌入式系统在扩充其它多个嵌入设备时,不受数量和位置的限制,特别方便。因此本发明具有很好的应用前景。


图1是本发明的在嵌入式系统中分配硬件地址的装置结构组成示意图;图2是本发明的装置中总线控制模块的控制电路电原理图;图3是本发明的在嵌入式系统中分配硬件地址的方法流程图。
具体实施例方式
参见图1,本发明是一种在嵌入式系统中分配硬件地址的装置,包括有一个含有CPU的控制端模块1、总线和多个总线控制模块(即结点)2,图示的总线是由一条高电平线CANH和一条低电平线CANL组成的控制器局部网总线(CAN,Controller Area Network),也可以是至少包括一条高电平线和一条低电平线的其它总线。该总线的一端连接控制端模块1中的CPU,另一端串接可形成良好端接的匹配电阻。该总线上并接有多个总线控制模块2(即结点,图示为3个),每个总线控制模块2的控制电路是由微处理器21和其外围电路-总线收发器22、继电器开关电路(图中未示)与继电器J组成。其中继电器J是在微处理器21的控制下执行对该总线后续线路的断开或连接操作,使得与该总线相连接的各个总线控制模块能够分别得到顺序分配的硬件地址。
参见图2,介绍本发明总线控制模块的控制电路的电路结构和工作原理。其中微处理器U1的型号是FB90F387S,通过其TX/RX接口连接和控制总线收发器U2(型号82C250)从总线上收发指令和存储接收到的硬件地址,通过其I/O接口(图示为P32管脚)控制继电器开关电路U3工作。该继电器开关电路U3是控制继电器供电电源的模拟开关电路(型号MAX4628),通过是否给继电器J供电来控制继电器J在连接后续总线还是连接终端匹配电阻之间进行切换。该继电器J是双刀双掷结构,每个继电器的两个转换接点分别连接总线中的一条高电平线D7和一条低电平线D8,该继电器的两个静接接点分别连接与各自转换接点上的总线D7或D8相对应的后续总线U7或U8,两个动接接点之间串接匹配电阻R2。当继电器切断与后续总线(即相邻结点之间的总线)的连接时,总线终端就连接到该继电器切换电路的终端匹配电阻R2上;当与后续总线连接时,就自动屏蔽匹配电阻R2。两个总线控制模块(即结点)之间的总线是通过将各自的接线柱J2和J3的对应结点互相连接实现的,其中D7、D8组成CAN总线。
为了减少模块种类,本发明控制端模块电路结构可以与总线控制模块相同。
参见图3,本发明在嵌入式系统中分配硬件地址的方法包括下列步骤(1)控制端模块以广播形式发出分配地址指令;(2)各个结点的总线控制模块接收到分配地址指令后,分别通过微处理器命令各自的继电器断开与后续总线的连接,并进入接收地址的状态;此后只有第一个结点的总线控制模块仍然通过总线连接控制端模块;(3)控制端模块发出结点硬件地址的首地址,并准备接收总线上各个结点发回的地址;(4)第一个结点的总线控制模块接收到控制端模块发出的首地址后,先将其作为该结点的硬件地址存储起来,再命令继电器进行切换,接通后续总线,使第二个结点的总线控制模块接通总线而与控制端模块相连接,然后关闭接收地址状态,进入正常工作模式,最后将本身的硬件地址加上一个设定数值后发送到总线上;该设定数值与后续步骤(6)中的设定数值都是自然数,例如1或2或5,其数值选择的根据是系统设计和今后扩展的需要;且两者可以是同一个数值,也可以是不同的数值;(5)控制端模块接收到第一个结点发回的地址,作存储记录;(6)第二个结点的总线控制模块接收到前面结点发出的硬件地址,先将其作为该结点的硬件地址存储起来,再命令继电器进行切换,接通后续总线,使下一个结点的总线控制模块接通总线而与控制端模块相连接,然后关闭接收地址状态,进入正常工作模式,最后将本身的硬件地址加上一个设定数值后发送到总线上;(7)如果控制端模块在一个设定的时间内接收到结点发回的地址,则返回步骤(5),执行相应操作;如果控制端模块在所述设定的时间内没有接收到结点发回的地址,则顺序执行后续操作;其中设定的时间长短是依据该嵌入式系统执行相应操作所需时间,再加上适当的富余时间;(8)控制端模块进入正常工作模式,标志该硬件地址分配和传递流程的结束。
权利要求
1.一种在嵌入式系统中分配硬件地址的装置,其特征在于该装置包括有一个含有CPU的控制端模块、总线和多个总线控制模块,所述多个总线控制模块分别并接在该总线上,用于执行对该总线后续线路的断开或连接操作,使得与该总线相连接的各个总线控制模块能够分别得到顺序分配的硬件地址。
2.根据权利要求1所述的在嵌入式系统中分配硬件地址的装置,其特征在于所述总线控制模块的控制电路都是由微处理器和其外围电路-总线收发器、继电器开关电路与继电器组成,所述微处理器的功能是按照设定程序执行相关操作,控制其TX/RX接口连接的总线收发器从总线上收发指令和存储接收到的硬件地址,以及通过其I/O接口控制继电器开关电路工作,使得继电器执行与总线后续线路的连接或断开的操作。
3.根据权利要求1所述的在嵌入式系统中分配硬件地址的装置,其特征在于所述控制端模块的电路结构与总线控制模块相同,以减少模块种类。
4.根据权利要求1所述的在嵌入式系统中分配硬件地址的装置,其特征在于所述总线是由一条高电平线和一条低电平线组成的控制器局部网总线,或至少包括一条高电平线和一条低电平线的其它总线,该总线的一端与控制端模块中的CPU连接,另一端串接可形成良好端接的匹配电阻。
5.根据权利要求2所述的在嵌入式系统中分配硬件地址的装置,其特征在于所述继电器开关电路是控制继电器的供电电源的模拟开关电路。
6.根据权利要求2或5所述的在嵌入式系统中分配硬件地址的装置,其特征在于所述继电器用于其所在的总线控制模块并接的总线在连接后续总线还是连接终端匹配电阻之间进行切换;该继电器是双刀双掷结构,每个继电器的两个转换接点分别连接总线中的一条高电平线和一条低电平线,该继电器的两个静接接点分别连接与各自转换接点上的总线相对应的后续总线,两个动接接点之间串接可形成良好端接的匹配电阻。
7.一种在嵌入式系统中分配硬件地址的方法,其特征在于包括下列步骤(1)控制端模块以广播形式发出分配地址指令;(2)各个结点的总线控制模块接收到分配地址指令后,分别通过微处理器命令各自的继电器断开与后续总线的连接,并进入接收地址的状态;此后只有第一个结点的总线控制模块仍然通过总线连接控制端模块;(3)控制端模块发出结点硬件地址的首地址,并准备接收总线上各个结点发回的地址;(4)第一个结点的总线控制模块接收到控制端模块发出的首地址后,先将其作为该结点的硬件地址存储起来,再命令继电器进行切换,接通后续总线,使第二个结点的总线控制模块接通总线而与控制端模块相连接,然后关闭接收地址状态,进入正常工作模式,最后将本身的硬件地址加上一个设定数值后发送到总线上;(5)控制端模块接收到第一个结点发回的地址,作存储记录;(6)第二个结点的总线控制模块接收到前面结点发出的硬件地址,先将其作为该结点的硬件地址存储起来,再命令继电器进行切换,接通后续总线,使下一个结点的总线控制模块接通总线而与控制端模块相连接,然后关闭接收地址状态,进入正常工作模式,最后将本身的硬件地址加上一个设定数值后发送到总线上;(7)如果控制端模块在一个设定的时间内接收到结点发回的地址,则返回步骤(5),执行相应操作;如果控制端模块在所述设定的时间内没有接收到结点发回的地址,则顺序执行后续操作;(8)控制端模块进入正常工作模式,标志该硬件地址分配和传递流程的结束。
8.根据权利要求7所述的在嵌入式系统中分配硬件地址的方法,其特征在于所述步骤(4)和(6)中硬件地址加上的一个设定数值是自然数,其数值选择的根据是系统设计和今后扩展的需要。
9.根据权利要求8所述的在嵌入式系统中分配硬件地址的方法,其特征在于所述步骤(4)和(6)中硬件地址分别加上的一个设定数值是同一个数值,也可以是不同的数值。
10.根据权利要求7所述的在嵌入式系统中分配硬件地址的方法,其特征在于所述步骤(7)中设定的时间长短是依据该嵌入式系统执行相应操作所需时间,再加上适当的富余时间。
全文摘要
一种在嵌入式系统中分配硬件地址的装置和方法,该装置包括一个控制端模块、总线和多个总线控制模块,其中多个总线控制模块分别并接在总线上,用于执行对该总线后续线路的断开或连接操作,使得与该总线相连接的各个总线控制模块能够分别得到顺序分配的硬件地址;每个总线控制模块的控制电路是由微处理器和其外围电路-总线收发器、继电器开关电路与继电器组成。总线是由一条高电平线和一条低电平线组成的控制器局部网总线,或至少包括一条高电平线和一条低电平线的其它总线,该总线一端连接控制端模块中的CPU,另一端串接匹配电阻。该装置能够实现硬件地址的自动分配和派发,便于嵌入设备的扩充;电路结构简单,成本低廉,调试方便,工作可靠。
文档编号G06F13/00GK1670717SQ20041002954
公开日2005年9月21日 申请日期2004年3月18日 优先权日2004年3月18日
发明者于学萍, 全晓霖, 肖利民, 柳书广 申请人:联想(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1