一种单线IO口通讯方法、装置和存储介质与流程

未命名 08-02 阅读:220 评论:0

一种单线io口通讯方法、装置和存储介质
技术领域
1.本发明属于单片机io口通讯领域,尤其涉及一种单线io口通讯方法、装置和存储介质。


背景技术:

2.市面上存在大量的单片机缺少标准的串行通讯口uart,同时也没有iic、spi等接口,mcu外围硬件接口不多,导致这些单片机设备需要和其他设备或者器件进行简单的通讯时,将会受硬件版面限制,很多时候只能通过一根通讯线来通讯。而这种通过仅一根通讯线进行通讯的方法相比于传统的uart串行通讯有诸多限制,例如稳定性不高,且需要占用一个定时器终端,无法适应不允许中断的场合。


技术实现要素:

3.本发明的目的在于提供一种稳定性强、允许中断且结构简单,性能可靠,硬件门槛低,成本较低的单线通讯方式。
4.本发明所采取的技术方案是:
5.本发明提供了一种单线io口通讯方法,包括:
6.第一通讯装置向第二通讯装置发送开始信号;
7.根据所述开始信号,所述第二通讯装置接收所述第一通讯装置发送的通讯数据;所述通讯数据包括地址信号、数据长度信号、校验头信号、数据信号、校验尾信号;
8.所述第二通讯装置解析所述通讯数据,并执行相应的动作。
9.进一步地,当所述第二通讯装置具有多个时,所述第二通讯装置解析所述通讯数据,并执行相应的动作的步骤,包括:
10.获取所述通讯数据的所述地址信号;
11.确定所述地址信号对应的目标第二通讯装置;
12.所述目标第二通讯装置解析所述通讯数据,并执行相应的动作。
13.进一步地,所述第二通讯装置设置有缓存数组;当所述第二通讯装置接收所述通讯数据时,将所述通讯数据存放在所述缓存数组中。
14.进一步地,所述第二通讯装置解析所述通讯数据,并执行相应的动作的步骤,包括:
15.所述第二通讯装置获取所述缓存数组的所述通讯数据;
16.检验所述通讯数据的所述校验头信号和所述校验尾信号;
17.校验无误后,解析所述通讯数据的所述数据信号,并执行相应的动作。
18.进一步地,所述校验无误后,解析所述通讯数据的所述数据信号,并执行相应的动作后,还包括:
19.清空所述缓存数组和释放所述缓存数组。
20.另一方面,本发明还提供了一种单线io口通讯方法,包括以下步骤:
21.第一通讯装置中的其中一个第一通讯从机发送开始信号;所述第一通讯装置包括第一通讯主机和多个所述第一通讯从机;
22.根据所述开始信号,所述第一通讯主机及其余所述第一通讯从机接收发送所述开始信号的所述第一通讯从机所发送的通讯数据;所述通讯数据包括地址信号、数据长度信号、校验头信号、数据信号、校验尾信号,所述地址信号包括转发标记和地址数据,所述转发标记包括第一状态和第二状态,所述第一状态用于表征所述通讯数据需要转发,所述第二状态用于表征所述通讯数据不需要转发;
23.检验所述转发标记,当所述转发标记为所述第一状态时,所述第一通讯主机将所述通讯数据转发给第二通讯装置的第二通讯主机;其中,所述第二通讯装置包括所述第二通讯主机及多个第二通讯从机;
24.所述第二通讯主机将所述状态标记修改为所述第二状态,并将所述通讯数据发送给所述地址信号对应的所述第二通讯从机;
25.所述第二通讯装置解析所述通讯数据,并执行相应的动作。
26.进一步地,所述检验所述转发标记的步骤,当所述转发标记为所述第二状态时,,则所述第一通讯主机不转发所述通讯数据,由所述通讯数据的所述地址信号对应的第一通讯装置解析所述通讯数据,并执行相应的动作。
27.进一步地,所述第二通讯主机将所述状态标记修改为所述第二状态,并将所述通讯数据发送给所述地址信号对应的所述第二通讯从机这一步骤,所述第二通讯主机将状态标记修改为所述第二状态后,若所述地址信号对应的第二通讯装置为所述第二通讯主机,则所述第二通讯主机解析所述通讯数据,并执行相应的动作。
28.另一方面,本发明还提供了一种计算机装置,包括存储器和处理器,所述存储器用于存储至少一个程序,所述处理器用于加载所述至少一个程序以执行上述任一项所述的单线io口通讯方法。
29.另一方面,本发明还提供了一种计算机可读存储介质,其中存储用处理器可执行的程序,其特征在于,所述处理器可执行的程序在由处理器执行时用于执行上述任一项所述的单线io口通讯方法。
30.本发明的有益效果是:本发明提供了一套单片机系统之间数据收发通讯的方法,确保数据发送端和数据接收端按一种确定且稳定的方法进行数据传输、缓存、处理等,该数据通讯方法的数据负载格式为“开始信号+地址信号+数据长度信号+校验头+数据信号+校验尾”,工作方式采用单线双工通讯方式模式,即只需要一根传输线,各单片机系统相互之间既可作为发送方,也可作为接收方。本发明稳定性强、结构简单、性能可靠、硬件门槛低、适应绝大多数的单片机,且支持多个单片机组成单片机网络进行通讯。
附图说明
31.图1为本发明第一种实施例的单线io口通讯方法的通讯流程图;
32.图2为本发明实施例的“一对一”通讯示意图;
33.图3为本发明第二种实施例的单线io口通讯方法的通讯流程图;
34.图4为本发明实施例的“一对多”通讯示意图;
35.图5为本发明第三种实施例的单线io口通讯方法的通讯流程图;
36.图6为本发明实施例的“多对多”通讯示意图;
37.图7为本发明实施例的几个通讯信号波形时序图实例;
38.图8为本发明实施例的缓存器内数据处理过程示意图;
39.图9为本发明实施例的数据消抖过程示意图。
具体实施方式
40.下面结合说明书附图和具体的实施例对本技术进行进一步的说明。所描述的实施例不应视为对本技术的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
41.在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
42.除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本技术实施例的目的,不是旨在限制本技术。
43.市面上存在大量的单片机缺少标准的串行通讯口uart,同时也没有iic、spi等接口,mcu外围硬件接口不多,导致这些单片机设备需要和其他设备或者器件进行简单的通讯时,将会受硬件版面限制,很多时候只能通过一根通讯线来通讯。而这种通过仅一根通讯线进行通讯的方法相比于传统的uart串行通讯有诸多限制,例如稳定性不高,且需要占用一个定时器终端,无法适应不允许中断的场合。因此,目前需要有一种稳定性强、允许中断且结构简单,性能可靠,硬件门槛低,成本较低的单线通讯方式。
44.为了解决这个问题,本发明实施例了提供了一种在两个或多个芯片之间,利用单根引线进行数据的高速传输和可靠接收的方法和技术,可以替代传统的串行通讯口uart(两根数据线),在外围硬件接口较少的单片机系统中也可以使用。本发明实施例的特点是电路结构简单,性能可靠,硬件门槛低,成本较低。
45.本发明实施例中,使用该方法通讯的基础条件要满足至少以下两点:
46.(1)系统为芯片级系统;
47.(2)具备运行嵌入式操作系统能力,具备数据缓存需要。
48.为了实现这一目标,本发明实施例提供了一套单片机系统之间数据收发通讯的方法,确保数据发送端和数据接收端按一种确定且稳定的方法进行数据传输、缓存、处理等。本发明实施例中,该数据通讯方法的数据负载格式为“开始信号+地址信号+数据长度信号+校验头+数据信号+校验尾”。工作方式采用单线双工通讯方式模式,即只需要一根传输线,各单片机系统相互之间既可作为发送方,也可作为接收方。
49.本发明实施例中,将完整的一组数据设置为一个数据帧,每次通讯将在单片机系统之间传输整数倍个数的数据帧。其中,一个完整的数据帧由开始信号、地址信号、数据长度信号、校验头、数据信号、校验尾六部分组成。本发明实施例中,通讯装置还包括内部时钟,用于在通讯过程中计时,用于判断接收信号的长度,从而判断接收到的信号是何种信号。
50.本发明实施例中,所述开始信号由10ms的低电平+1ms的高电平组成,所述开始信
号是一个用于确定数据发送开始的标志信号。
51.本发明实施例中,所述地址信号采用对脉冲的时间间隔进行计数,用于识别不同地址的单片机,由“转发标记+地址数据”组成。所述转发标记中,0表示数据将不会转发,1表示数据将准备转发,在实际通讯过程中,转发标记0代表所处单片机系统的低电平,转发标记1代表所处单片机系统的高电平,且转发标记的持续时间为1ms。本发明实施例中,所述地址数据的长度为4bit,通讯过程中的传输1bit数据的通讯时间为1ms。本发明实施例中,每个通讯装置在自己所处的通讯网络中,自身会被人为赋予专属且唯一的地址标识,以区分不同的通讯装置。
52.下面举两个地址数据的例子,便于更好的解释此本发明实施例。例如,地址为0x0f表示数据要发送给所有的单片机,其中“0x0f”的“0x”表示该数据以十六进制计数,“0x0f”中的第二个“0”所处的位置为转发标记所处位置,“f”所处的位置为地址数据所处位置,f为16进制里每一位中最大的数值,在本发明实施例中,地址数据为f,代表接收到该地址信号的通讯装置,必须接收地址信号的后续信号。若“f”所处位置的数值为小于f的十六进制数,如a,则只有自身的地址标识为a的通讯装置会接收地址信号的后续信号。若地址为0x1f:表示数据要转发给下一个网络中的所有的单片机(适合多对多通讯)。
53.本发明实施例中,所述数据长度信号采用对脉冲的时间间隔进行计数,每个脉冲的时间间隔为1ms,用于确定所述数据信号的有效个数,通常为4ms。
54.本发明实施例中,所述校验头信号采用长度半个为byte任意的一个确定值表示校验头,所述校验头信号用于验证传输的信号是否正确。
55.本发明实施例中,所述数据信号采用对脉冲的时间间隔进行计数,用于确定需要发送的有效数据。数据信号中的每一个位可以是逻辑“1”,也可以是逻辑“0”,利用脉冲的时间间隔来区分,其中,逻辑“1”代表高电平时间1ms,逻辑“0”代表低电平时间1ms。数据信号中的数据内容采用单字节传输方式,数据信号每字节由4位二进制bit组成,b0是字节的最低有效位,b3是字节的最高有效位。收发数据时,先传输数据的最低有效位b0,再传输数据的次低有效位b1,以此类推,最后传输数据的最高有效位b3。
56.本发明实施例中,所述校验尾信号采用长度半个为byte任意的一个确定值表示校验尾,所述校验尾信号用于验证传输的信号是否正确。
57.本发明实施例中,可通过本发明提供的通讯方法,完成至少三种通讯工作模式,“一对一”通讯,“一对多”通讯和“多对多”通讯。
58.本发明实施例中,所述“一对一”通讯模式流程包括:
59.s101.第一通讯装置向第二通讯装置发送开始信号;
60.s102.根据所述开始信号,所述第二通讯装置接收所述第一通讯装置发送的通讯数据;所述通讯数据包括地址信号、数据长度信号、校验头信号、数据信号、校验尾信号;
61.s103.所述第二通讯装置解析所述通讯数据,并执行相应的动作。
62.下面结合实施例,说明“一对一”通讯模式具体流程,图1为本发明实施例的通讯流程图(一),“一对一”通讯示意图如图2所示,下面对本发明实施例的“一对一”通讯模式的过程具体阐述:
63.上述所提到的第一通讯装置和第二通讯装置可以是指单片机,下面用单片机a表示第一通讯装置,用单片机b表示第二通讯装置;
64.s110.单片机a的一个gpio口连接到单片机b的gpio口,单片机a和单片机b均可作为主机,可以双向通讯;
65.s111.单片机a和b的gpio通讯口平时都处于睡眠状态(上拉输入状态,如果单片机gpio口内部不支持上拉输入设置,可以选择外部硬件上拉,接一个10k电阻到单片机的电源vcc);
66.s112.单片机a通过gpio通讯接口发出“开始信号”;
67.s113.单片机b收到“开始信号”立即从睡眠状态中被唤醒,单片机b被唤醒后开始计时,顺序接收通讯数据,包括:地址信号(0x00)、数据长度信号、校验头信号、数据信号、校验尾信号,并进行解读,执行数据信号内容中包含的相应指令;
68.s114.发送结束后,单片机a和b的gpio通讯口将被恢复为睡眠状态(上拉输入),等待下一次通讯。
69.本发明实施例中,所述“一对多”通讯模式流程包括:
70.s201.第一通讯装置向第二通讯装置发送开始信号;
71.s202.根据所述开始信号,所述第二通讯装置接收所述第一通讯装置发送的通讯数据;所述通讯数据包括地址信号、数据长度信号、校验头信号、数据信号、校验尾信号;
72.s203.获取所述通讯数据的所述地址信号;
73.s204.确定所述地址信号对应的目标第二通讯装置;
74.s205.所述目标第二通讯装置解析所述通讯数据,并执行相应的动作。
75.下面结合实施例,说明“一对多”通讯模式具体流程,图3为本发明实施例的通讯流程图(二),“一对多”通讯示意图如图4所示,下面对本发明实施例的“一对多”通讯模式的过程具体阐述:
76.上述所提到的第一通讯装置和第二通讯装置可以是指单片机,下面用单片机a表示第一通讯最终,用单片机b-e表示第二通讯装置,其中,b-e指b、c、d、e四个单片机,用以代指多个;
77.s210.单片机a的一个gpio口连接到多个单片机(例如b-e)的各个gpio口上,任意一个单片机可以同时发送数据给其它的单片机。
78.例如,单片机a发送数据给单片机b-e:
79.s211.单片机a-e处于上拉输入状态,等待数据的输入;
80.s212.单片机a等待gpio通讯口空闲,本发明实施例中,所述gpio口保持高电位10ms以上就表示空闲;
81.s213.通讯口空闲时,单片机a通过该gpio通讯口向单片机b-e发送“开始信号”;
82.s214.单片机b-e收到“开始信号”立即从睡眠状态中被唤醒,开始计时,顺序接收通讯数据包括:地址信号(0x0f)、数据长度信号、校验头信号、数据信号、校验尾信号,并进行解读,执行数据信号内容中包含的相应指令;
83.s215.发送结束后,单片机a-e的gpio通讯口将被恢复为睡眠状态(上拉输入),等待下一次通讯。
84.本发明实施例中,所述“多对多”通讯模式流程包括:
85.s301.第一通讯装置中的其中一个第一通讯从机发送开始信号;所述第一通讯装置包括第一通讯主机和多个所述第一通讯从机;
86.s302.根据所述开始信号,所述第一通讯主机及其余所述第一通讯从机接收发送所述开始信号的所述第一通讯从机所发送的通讯数据;所述通讯数据包括地址信号、数据长度信号、校验头信号、数据信号、校验尾信号,所述地址信号包括转发标记和地址数据,所述转发标记包括第一状态和第二状态,所述第一状态用于表征所述通讯数据需要转发,所述第二状态用于表征所述通讯数据不需要转发;
87.s303.检验所述转发标记,当所述转发标记为所述第一状态时,所述第一通讯主机将所述通讯数据转发给第二通讯装置的第二通讯主机;其中,所述第二通讯装置包括所述第二通讯主机及多个第二通讯从机;
88.s304.所述第二通讯主机将所述状态标记修改为所述第二状态,并将所述通讯数据发送给所述地址信号对应的所述第二通讯从机;
89.s305.所述第二通讯装置解析所述通讯数据,并执行相应的动作。
90.此外:
91.s306.所述检验所述转发标记,当所述转发标记为所述第一状态时,所述第一通讯主机将所述通讯数据转发给第二通讯装置的第二通讯主机这一步骤时,若所述转发标记为所述第二状态,则第一通讯主机不转发,所述第一通讯装置解析所述通讯数据,并执行相应的动作。
92.此外:
93.s307.所述第二通讯主机将所述状态标记修改为所述第二状态,并将所述通讯数据发送给所述地址信号对应的所述第二通讯从机这一步骤时,若所述第二通讯主机将状态标记修改为所述第二状态后,若所述地址信号对应的第二通讯装置为所述第二通讯主机,则所述第二通讯主机解析所述通讯数据,并执行相应的动作。
94.本发明实施例中,所述第一状态为所述地址信号的转发标记为1时,所述第二状态为转发标记为0时。
95.下面结合实施例,说明“多对多”通讯模式具体流程,图5为本发明实施例的通讯流程图(三),“多对多”通讯示意图如图6所示,下面对本发明实施例的“多对多”通讯模式的过程具体阐述:
96.上述所提到的第一通讯装置和第二通讯装置可以是指单片机,下面用单片机a第一通讯主机,用单片机a1、a2、a3表示第一通讯从机,用单片机b表示第二通讯主机,用单片机b1、b2、b3表示第二通讯从机;
97.s310.单片机a、a1、a2、a3、b、b1、b2、b3进行通讯,假设通讯时将单片机a和单片机b作为通讯主机,单片机a与单片机a1、a2、a3组成网络,进行一对多通讯,单片机b与b1、b2、b3组成网络,进行一对多通讯,单片机a与单片机b进行一对一通讯,如果单片机a1与单片机b1存在通讯需求,则需要单片机a和单片机b作为中转。
98.例如单片机a1需要发送数据到单片机b1:
99.s311.所有单片机a、a1、a2、a3、b、b1、b2、b3处于上拉输入状态,等待数据的输入;
100.s312.单片机a1等待gpio通讯口空闲,本发明实施例中,所述gpio口保持高电位10ms以上就表示空闲;
101.s313.通讯口空闲时,单片机a1通过该gpio通讯口,向单片机a组成的通讯网络发出“开始信号”,即向单片机a、a2、a3发送开始信号;
102.s314.单片机a、a2、a3收到“开始信号”立即从睡眠状态中被唤醒,开始计时,顺序接收需要传输给b1的通讯数据,包括:地址信号(0x11)、数据长度信号、校验头信号、数据信号、校验尾信号,并进行解读,当a2、a3接收到地址信号中的地址数据(0x11),由于自己不是主机所以就忽略后面的处理,当主机a接收到地址数据(0x11),通过转发标记位可以识别出是需要转发的数据,就开始转发数据到单片机b,即和b进行一对一通讯,地址仍然使用是0x11;
103.s315.单片机b接收到来自单片机a的数据,通过数据地址为0x11可识别出是需要转发给单片机b1(地址0x01)的数据,单片机b立即与单片机b1进行一对多通讯,但地址使用0x01发送数据:b1地址信号(0x01)、数据长度信号、校验头信号、数据信号、校验尾信号;
104.s316.单片机b1接收到单片机b发出来的数据并做数据处理,单片机b2、b3也会收到同样的数据,通过地址0x01可以知道不是发给自己的数据,故忽略数据,不做处理,这样就完成了从单片机a1发送数据到单片机b1的过程。
105.s317.发送结束后,单片机a、a1、a2、a3、b、b1、b2、b3的gpio通讯口将被恢复为睡眠状态(上拉输入),等待下一次通讯。
106.本发明实施例中的“一对多通讯”模式中,如果单片机a只需要将数据发送给单片机b,只需要把地址信号中的0x0f修改为0x01即可,类似一对一通讯,只是单片机c-e也会接收到同样的数据,但通过地址0x01可以识别出不是发送给自己的数据,从而不做处理。
107.图7为几个通讯信号波形时序图实例。第一行是发送数据0x0的波形时序图为发送数据0x0波形时序图,第二行是发送数据0x1波形时序图,第三行是发送数据0x12波形时序图,发送的数据信号为8个bit,第四行是发送数据0x123波形时序图。图5中,每个数据的开始信号为10ms的低电平和1ms的高电平;图5中所有数据的转发标记都为0,即这些数据无需转发,为发送给本机,需要本机进行处理的数据;图5中的校验头信号数值为0x7,校验尾信号数值尾0x8;图5中,数据0x0、0x1的数据长度为0x3,数据0x12的数据长度为0x4,数据0x123的数据长度为0x5。
108.本发明实施例中,通讯装置的接收方,即第二通讯装置接收到数据后,在装置缓存器内对接收到的信号的确认过程包括:确认开始信号是否出现,当开始信号出现后,创建一个数组缓存接收到的数据,数组容量等于一帧数据的大小,将接收到的数据向数组里逐一放入,当不再接收到数据时,判断校验头是否是数据校验头,校验尾是否是数据校验尾,就可以得知当前是否已经接收到了一帧完整的数据,然后再将数据从数组中取出,上述缓存器内数据处理流程包括:数组初始化、数据存至数组、数据校验、清空数组和释放数组。图8为数据处理过程示意图。为了保证通用性,数组底层使用类似于双向链表的实现,需要封装的结构有数组容量、校验头节点和校验尾节点。
109.在本发明的一些实施例中,为了防止数据传输过程中出现丢帧现象,当完整接收到一帧数据时,还需要校验到目标数据,才能执行下一步相应的指令,所述完整的一帧数据在本发明实施例中为一组“地址信号+数据长度信号+校验头+数据信号+校验尾”,上述过程称为数据消抖,图9为数据消抖过程示意图。
110.以上是对本发明的较佳实施例进行了具体说明,但对本发明创造并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做作出种种的等同变形或替换,这些等同的变形或替换均包含在本技术权利要求所限定的范围内。

技术特征:
1.一种单线io口通讯方法,其特征在于,包括:第一通讯装置向第二通讯装置发送开始信号;根据所述开始信号,所述第二通讯装置接收所述第一通讯装置发送的通讯数据;所述通讯数据包括地址信号、数据长度信号、校验头信号、数据信号、校验尾信号;所述第二通讯装置解析所述通讯数据,并执行相应的动作。2.根据权利要求1所述的单线io口通讯方法,其特征在于,当所述第二通讯装置具有多个时,所述第二通讯装置解析所述通讯数据,并执行相应的动作的步骤,包括:获取所述通讯数据的所述地址信号;确定所述地址信号对应的目标第二通讯装置;所述目标第二通讯装置解析所述通讯数据,并执行相应的动作。3.根据权利要求1所述的单线io口通讯方法,其特征在于,所述第二通讯装置设置有缓存数组;当所述第二通讯装置接收所述通讯数据时,将所述通讯数据存放在所述缓存数组中。4.根据权利要求3所述的单线io口通讯方法,其特征在于,所述第二通讯装置解析所述通讯数据,并执行相应的动作的步骤,包括:所述第二通讯装置获取所述缓存数组的所述通讯数据;检验所述通讯数据的所述校验头信号和所述校验尾信号;校验无误后,解析所述通讯数据的所述数据信号,并执行相应的动作。5.根据权利要求4所述的单线io口通讯方法,其特征在于,所述校验无误后,解析所述通讯数据的所述数据信号,并执行相应的动作后,还包括:清空所述缓存数组和释放所述缓存数组。6.一种单线io口通讯方法,其特征在于,包括以下步骤:第一通讯装置中的其中一个第一通讯从机发送开始信号;所述第一通讯装置包括第一通讯主机和多个所述第一通讯从机;根据所述开始信号,所述第一通讯主机及其余所述第一通讯从机接收发送所述开始信号的所述第一通讯从机所发送的通讯数据;所述通讯数据包括地址信号、数据长度信号、校验头信号、数据信号、校验尾信号,所述地址信号包括转发标记和地址数据,所述转发标记包括第一状态和第二状态,所述第一状态用于表征所述通讯数据需要转发,所述第二状态用于表征所述通讯数据不需要转发;检验所述转发标记,当所述转发标记为所述第一状态时,所述第一通讯主机将所述通讯数据转发给第二通讯装置的第二通讯主机;其中,所述第二通讯装置包括所述第二通讯主机及多个第二通讯从机;所述第二通讯主机将所述状态标记修改为所述第二状态,并将所述通讯数据发送给所述地址信号对应的所述第二通讯从机;所述第二通讯装置解析所述通讯数据,并执行相应的动作。7.根据权利要求6所述的一种单线io口通讯方法,其特征在于,所述检验所述转发标记的步骤,当所述转发标记为所述第二状态时,则所述第一通讯主机不转发所述通讯数据,由所述通讯数据的所述地址信号对应的第一通讯装置解析所述通讯数据,并执行相应的动作。
8.根据权利要求6所述的一种单线io口通讯方法,其特征在于,所述第二通讯主机将所述状态标记修改为所述第二状态,并将所述通讯数据发送给所述地址信号对应的所述第二通讯从机这一步骤,所述第二通讯主机将状态标记修改为所述第二状态后,若所述地址信号对应的第二通讯装置为所述第二通讯主机,则所述第二通讯主机解析所述通讯数据,并执行相应的动作。9.一种计算机装置,其特征在于,包括存储器和处理器,所述存储器用于存储至少一个程序,所述处理器用于加载所述至少一个程序以执行权利要求1-5任一项所述的单线io口通讯方法或者权利要求6-8任一项所述的单线io口通讯方法。10.一种计算机可读存储介质,其中存储用处理器可执行的程序,其特征在于,所述处理器可执行的程序在由处理器执行时用于执行权利要求1-5任一项所述的单线io口通讯方法或者权利要求6-8任一项所述的单线io口通讯方法。

技术总结
一种单线IO口通讯方法,其特征在于,包括:第一通讯装置向第二通讯装置发送开始信号;根据所述开始信号,所述第二通讯装置接收所述第一通讯装置发送的通讯数据;所述通讯数据包括地址信号、数据长度信号、校验头信号、数据信号、校验尾信号;所述第二通讯装置解析所述通讯数据,并执行相应的动作。本发明提供了一套单片机之间数据收发通讯方法,确保数据发送端和数据接收端按一种确定且稳定的方法进行数据传输、缓存、处理等,该数据通讯方法的数据负载格式为“开始信号+地址信号+数据长度信号+校验头+数据信号+校验尾”,工作方式采用单线双工通讯方式,仅需要一根传输线,各单片机既可作为发送方,也可作为接收方。也可作为接收方。也可作为接收方。


技术研发人员:姚洪波
受保护的技术使用者:珠海惠威科技有限公司
技术研发日:2023.04.13
技术公布日:2023/8/1
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐