本发明专利技术公开了一种多单片机协同工作方法及多单片机协同工作系统,该工作系统由一个单片机主机、多个单片机客机、一个计数器、一个译码器和一个数据选择器组成;单片机主机上的4个IO端口作为控制端口,该4个IO端口分别是计数器复位端口、计数脉冲输出端口、响应信号反馈端口和使能端口;每一个单片机客机都有一个功能执行单元,该功能执行单元用于由译码器输出的输出选通信号触发而执行本单片机从机中的预设程序以实现预设的功能。本发明专利技术采用较少且廉价的外围芯片,使用很少的单片机IO端口线就解决了多单片机阵列的协同工作的应用技术障碍,充分发挥了单片机价格低廉,性价比极高,具有很广的应用前景。
【技术实现步骤摘要】
本专利技术属于单片机
,涉及一种多单片机协同工作方法及多单片机协同工作系统。
技术介绍
由于单片机价格低廉,应用方便可靠的优点,其应用十分广泛和普及,但单片机作 为一个单机来说,由于其IO端口线有限,也使其应用受到了限制,随着应用领域的不断扩 大,有时单个单片机的控制就显得力不从心了,因此在一些较大的系统中要应用单片机的 话,需要用到多个单片机构成单片机阵列来参与控制,并且往往要求这些单片机协同工作。 例如,在LED大屏幕显示装置中就需要使用多个单片机,为确保LED大屏幕显示装置画面的 统一完整,各单片机必须能够协同工作。目前,实现单片机协同工作方式可以借助于使用单片机的串行口进行通信组成一 个单片机网络系统工作,这种方式存在以下缺陷1)不能灵活地选用单片机的IO 口线,只 能固定使用单片机的串行端口线;2)主客单片机的串行口都要被占用,系统不能通过串行 口与上位机(PC机)或者其它装置进行通信;2)软件设计复杂度较高。另一种方式是将单片机通过2根IO端口线直接相联,这种方式的主要问题是单片 机扩大的数量受到限制,仍然只适合于需要单片机的IO端口控制线还不太多的应用,而且 还要以失去主单片机的IO端口线和控制功能为代价。要解决上述问题,需要寻找一种仅占用单片机的IO端口线资源很少、能够避开单 片机特定的IO端口线、即IO端口线可以是任选的、外围芯片十分廉价、客机数量又不受限 制的方案。
技术实现思路
本专利技术所要解决的技术问题是提供一种多单片机协同工作方法及多单片机协同 工作系统,该多单片机协同工作方法及多单片机协同工作系统易于实施、成本低、完成任务 效率高。本专利技术的技术解决方案如下一种多单片机协同工作系统,其特征在于,由一个单片机主机、多个单片机客机、 一个计数器、一个译码器和一个数据选择器组成;单片机主机上的4个IO端口作为控制端 口,该4个IO端口分别是计数器复位端口(10X0)、计数脉冲输出端口(10X1)、响应信号反 馈端口 (10X2)和使能端口 (10X3);计数器复位端口(10X0)与计数器的复位端(RST)相接,计数脉冲输出端口(IOXl) 与计数器的时钟信号输入端(CLK)相接;计数器的数据输出端(QO-Qm)与译码器的数据输 入端以及数据选择权的通道选择数据输对应选通IO端口 一一连接;使能端口(10X3)接译码器的使能端(EN)和数据选择器的选通端(G);数据选择 器的多个输入通道(Dl-Dn)分别与多个单片机客机的响应IO端口一一连接,数据选择器的输出端(Z)与响应信号反馈端口(10X2)相接;每一个单片机客机都有一个功能执行单元,该功能执行单元用于由译码器输出的 输出选通信号触发而执行本单片机从机中的预设程序以实现预设的功能。 所述的译码器为74LS138D芯片,计数器采用4024BP芯片,单片机主机和从机均采 用为51系列单片机,数据选择器采用74LS251D芯片。一种多单片机协同工作方法,采用前述的多单片机协同工作系统的硬件,单片机 主机的工作步骤为步骤1 二进制计数器清零,置数据选择器使能端有效,置译码器使能端无效;步骤2 发送要呼叫的单片机客机的编号到计数器;步骤3 根据响应信号反馈端口(10X2)的状态判断被呼叫的单片机客机是否空 闲,如果空闲,则进入下一步,否则返回步骤3 ;步骤4:置数据选择器使能端无效,置译码器使能有效,使得译码器输出单片机客 机选通信号;步骤5 延时,然后计数器清零;步骤6 置数据选择器使能端有效,置译码器使能端无效,呼叫操作结束;单片机从客机的工作步骤为步骤A 复位响应端口状态,表示空闲可响应呼叫;步骤B 查询选通IO端口的状态,判断是否有呼叫,如果有呼叫则进入下一步,否 则返回步骤B;步骤C 置相应端口状态为有效,表示响应呼叫;步骤D 启动功能执行单元,完成呼叫所规定的操作;步骤E 复位响应端口状态,表示空闲可响应呼叫,并返回步骤B。本专利技术包含有多个单片机、一个二进制计数器、一个译码器、一个数据选择器及其 连接线路(见附图)、编程流程图,并有列有应用示例。本专利技术中多个单片机协同工作方 法体现为在需要使用多个单片机协同工作时,可以设定一个单片机为呼叫单片机(简称主 机),其他单片机为被呼叫单片机(简称客机),它们之间的关系为主_客关系,当主机发现 系统中需要客机协助完成某项的工作时,呼叫客机,使客机及时完成该工作。它们各自有相 对的独立性,有单独的任务要完成,但又需要协同工作,它们的空间位置比较近,传输的信 息量并不大,只传送命令及执行命令的情况,不传送数据,这一点不同于主_从式通信,因 而它类似于人类社会领导与成员之间的关系。有益效果本专利技术采用较少且廉价的外围芯片,使用很少的单片机IO端口线就解决了多单 片机阵列的协同工作的应用技术障碍,充分发挥了单片机价格低廉,应用方便可靠的特点, 而且编程容易,易于实施,能取得良好的应用效果,因此,实施本专利技术的性价比极高,具有很 广的应用前景。附图说明图1为本专利技术电路示意图。图2为软件设计流程图,a为单片机主机工作流程图,b为单片机客机工作流程图。具体实施例方式下面结合附图以具体实施例对本专利技术的技术方案及工作过程作进一步的说明,但本专利技术的保护范围不限于此实施例1参见图1,一种多单片机协同工作系统,其特征在于,由一个单片机主机、多个单片 机客机、一个计数器、一个译码器和一个数据选择器组成;单片机主机上的4个IO端口作为 控制端口,该4个IO端口分别是计数器复位端口 10X0、计数脉冲输出端口 10X1、响应信号 反馈端口 10X2和使能端口 10X3 ;计数器复位端口 10X0与计数器的复位端RST相接,计数脉冲输出端口 IOXl与计 数器的时钟信号输入端CLK相接;计数器的数据输出端QO-Qm与译码器的数据输入端以及 数据选择权的通道选择数据输对应选通IO端口 一一连接;使能端口 10X3接译码器的使能端EN和数据选择器的选通端G ;数据选择器的多 个输入通道Dl-Dn分别与多个单片机客机的响应IO端口一一连接,数据选择器的输出端Z 与响应信号反馈端口 10X2相接;每一个单片机客机都有一个功能执行单元,该功能执行单元用于由译码器输出的 输出选通信号触发而执行本单片机从机中的预设程序以实现预设的功能。单片机主机和单片机客机协同工作的时候,单片机主机和单片机客机之间的通信 只是起到协同和同步的作用,并不传输复杂的数据和复杂的控制命令。不同的单片机客机 执行不同的功能程序,比如1号单片机客机完成功能1,η号单片机客机完成功能η。所述的译码器为74LS138D芯片,计数器采用4024ΒΡ芯片,单片机主机和从机均采 用为51系列单片机,数据选择器采用74LS251D芯片。参见图2,一种多单片机协同工作方法,采用前述的多单片机协同工作系统的硬 件,单片机主机的工作步骤为步骤1 二进制计数器清零,置数据选择器使能端有效,置译码器使能端无效;步骤2 发送要呼叫的单片机客机的编号到计数器;步骤3 根据响应信号反馈端口 10X2的状态判断被呼叫的单片机客机是否空闲, 如果空闲,则进入下一步,否则返回步骤3 ;步骤4 置数据选择器使能端无效,置译码器使能有效,使得译码器输出单片机客 机选通信号;步骤5 延时本文档来自技高网...
【技术保护点】
一种多单片机协同工作系统,其特征在于,由一个单片机主机、多个单片机客机、一个计数器、一个译码器和一个数据选择器组成;单片机主机上的4个IO端口作为控制端口,该4个IO端口分别是计数器复位端口(IOX0)、计数脉冲输出端口(IOX1)、响应信号反馈端口(IOX2)和使能端口(IOX3);计数器复位端口(IOX0)与计数器的复位端(RST)相接,计数脉冲输出端口(IOX1)与计数器的时钟信号输入端(CLK)相接;计数器的数据输出端(Q0-Qm)与译码器的数据输入端以及数据选择权的通道选择数据输对应选通IO端口一一连接;使能端口(IOX3)接译码器的使能端(EN)和数据选择器的选通端(G);数据选择器的多个输入通道(D1-Dn)分别与多个单片机客机的响应IO端口一一连接,数据选择器的输出端(Z)与响应信号反馈端口(IOX2)相接;每一个单片机客机都有一个功能执行单元,该功能执行单元用于由译码器输出的输出选通信号触发而执行本单片机从机中的预设程序以实现预设的功能。
【技术特征摘要】
【专利技术属性】
技术研发人员:王新辉,王梓全,马凌云,
申请(专利权)人:王新辉,
类型:发明
国别省市:43[中国|湖南]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。