CN104216863A - 多个arm间的通信电路及其通信方法 - Google Patents

多个arm间的通信电路及其通信方法 Download PDF

Info

Publication number
CN104216863A
CN104216863A CN201410440881.9A CN201410440881A CN104216863A CN 104216863 A CN104216863 A CN 104216863A CN 201410440881 A CN201410440881 A CN 201410440881A CN 104216863 A CN104216863 A CN 104216863A
Authority
CN
China
Prior art keywords
arm
machine
main frame
communication
address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410440881.9A
Other languages
English (en)
Other versions
CN104216863B (zh
Inventor
王灿
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing dry weft Intelligent Technology Co., Ltd.
Original Assignee
Nanjing Institute of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing Institute of Technology filed Critical Nanjing Institute of Technology
Priority to CN201410440881.9A priority Critical patent/CN104216863B/zh
Publication of CN104216863A publication Critical patent/CN104216863A/zh
Application granted granted Critical
Publication of CN104216863B publication Critical patent/CN104216863B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Small-Scale Networks (AREA)

Abstract

本发明公开了多个ARM间的通信电路,包括一个ARM主机和若干ARM从机;所有ARM从机包括若干自带串口模块的ARM从机和若干不带串口模块的ARM从机,自带串口模块的ARM从机在串行总线的任意位置接入,所有不带串口模块的ARM从机通过第二串口模块接入串行总线,第一串口模块、第二串口模块以及ARM从机自带的串口模块结构一致,主要由一个作为控制口的USB-TTL串口模块和一个作为数据口的USB-TTL串口模块构成,第二串口模块的两个USB-TTL串口模块的数据发送引脚均与不带串口模块的ARM从机的数据接收引脚连接,第二串口模块的两个USB-TTL串口模块的数据接收引脚均与不带串口模块的ARM从机的数据发送引脚连接;本发明也公开了该电路的通信方法。本发明达到高效可靠通信的目的。

Description

多个ARM间的通信电路及其通信方法
技术领域
本发明涉及一种多个ARM间的通信电路及其通信方法,属于通信技术领域。
背景技术
目前,ARM开发者在多单片机通信系统的设计中往往习惯给每一个从机都配备一个串口来与主机通信。这种方案带来的不仅仅是高效可靠的通信,同时极大的限制了系统的可扩展性,从机数量较多时,布线就已经非常复杂了。
为了解决上述问题,现在通信系统中尽可能少的使用串口,但这同样带来了以下问题:1、同等地位的各个ARM从机如何获得不同的地址;2、拥有唯一地址后ARM从机如何可以不受其他ARM从机干扰地与ARM主机通信。
发明内容
为了解决上述技术问题,本发明提供了多个ARM间的通信电路及其通信方法,实现了在不带串口模块的ARM从机数较多的情况下只使用两个USB-TTL串口模块就达到高效可靠通信的目的,同时解决了同等地位的各个ARM从机如何获得不同的地址,拥有唯一地址后ARM从机如何可以不受其他ARM从机干扰地与ARM主机通信的问题。
为了解决上述技术问题,本发明所采用的技术方案是:
多个ARM间的通信电路,其特征在于:包括一个ARM主机和若干ARM从机;ARM主机通过第一串口模块连接到一个串行总线上,所有ARM从机包括若干自带串口模块的ARM从机和若干不带串口模块的ARM从机,所述自带串口模块的ARM从机在串行总线的任意位置接入,所有不带串口模块的ARM从机通过第二串口模块接入串行总线,所述第一串口模块、第二串口模块以及ARM从机自带的串口模块结构一致,主要由一个作为控制口的USB-TTL串口模块和一个作为数据口的USB-TTL串口模块构成,所述第二串口模块的两个USB-TTL串口模块的数据发送引脚均与不带串口模块的ARM从机的数据接收引脚连接,所述第二串口模块的两个USB-TTL串口模块的数据接收引脚均与不带串口模块的ARM从机的数据发送引脚连接。
多个ARM间的通信电路的通信方法,包括以下步骤,
步骤一,根据不同的ARM从机,连接通信电路;
步骤二,给ARM从机赋地址;赋地址的具体过程为,
步骤A1,ARM主机通过控制口向所有ARM从机发出获取地址命令;
步骤A2,所有接收到命令的ARM从机在一个数字范围内各自产生一个随机整数作为自己的临时地址,数字范围进一步分成n组并依次对n组进行1到n的编号,n为正整数且n≥1;
步骤A3,ARM主机向ARM从机发出表征第1组的数字代码;
步骤A4,组内的ARM从机接收到数字代码后,向从机发送自己的临时地址,如果ARM主机接收到ARM从机发送的临时地址,ARM主机对临时地址进行校验后,赋给ARM从机正式地址;如果ARM主机未接收到回复,ARM主机记录该组组号;
步骤A5,判断是否遍历了步骤A2中的所有组,如果否,则ARM主机向ARM从机发出表征下一组的数字代码,转至步骤A4;如果是,则转至步骤A6;
步骤A6,ARM主机通过控制口向步骤A4中记录的所有组号内的ARM从机发出获取地址命令;
步骤A7,所有接收到命令的ARM从机在一个数字范围内各自产生一个随机整数作为自己的临时地址,数字范围进一步分成n组并依次对n组进行1到n的编号;
步骤A8,ARM主机向ARM从机发出表征第1组的数字代码;
步骤A9,组内的ARM从机接收到数字代码后,向从机发送自己的临时地址,如果ARM主机接收到ARM从机发送的临时地址,ARM主机对临时地址进行校验后,赋给ARM从机正式地址;如果ARM主机未接收到回复,ARM主机记录该组组号;
步骤A10,判断是否遍历了步骤A7中的所有组,如果否,则ARM主机向ARM从机发出表征下一组的数字代码,转至步骤A4;如果是,则转至步骤A11;
步骤A11,ARM主机向ARM从机发出结束命令,各ARM从机进入各自工作作态;
步骤三,ARM主机和若干ARM从机之间实现通信连接,进行数据和命令交换。
ARM主机和若干ARM从机之间实现通信连接包括以下两种方式,
1)ARM主机向若干ARM从机发起通信;具体过程为,
步骤B1,ARM主机通过控制口发送若干个通信命令,所述通信命令包含表征要建立通信连接的ARM从机的包头和正式地址;
步骤B2,所有ARM从机接收通信命令,与通信命令中的包头和正式地址匹配的ARM从机通过控制口发出反馈;
步骤B3,数据口结束高阻状态,配置到串口的工作状态, ARM主机与ARM从机通过数据口交换数据和命令;
2)若干ARM从机向ARM主机发起通信;具体过程为,
当ARM从机有正式地址时:
步骤C1,某个需要建立通信连接的ARM从机通过控制口发送通信请求,所述通信请求包含表征要建立通信连接的ARM从机的包头和正式地址;
步骤C2,如果ARM主机接收到通信请求,向ARM从机反馈一窜数字代码并在数字代码后附上发送通信请求的ARM从机的正式地址;如果ARM主机未接收到通信请求,即产生通信冲突,则先解决通信冲突,然后向ARM从机反馈一窜数字代码并在数字代码后附上发送通信请求的ARM从机的正式地址;
步骤C3,ARM从机接收到响应后,判断ARM主机发送的数字代码后附上的正式地址与自身正式地址是否吻合,如果吻合,转至步骤C4,如果不吻合,ARM从机重新向ARM主机发送通信请求;
步骤C4,数据口结束高阻状态,配置到串口的工作状态, ARM主机与ARM从机通过数据口交换数据和命令;
当ARM从机有无地址时:
步骤D1,某个需要建立通信连接的ARM从机通过控制口发送通信请求,所述通信请求包含表征要建立通信连接的ARM从机的包头和临时地址;
步骤D2,主机接收到通信请求后,向其反馈一窜数字代码,并要求ARM从机原样发回;
步骤D3,如果发回成功,ARM主机赋给ARM从机正式地址,转至步骤D4;如果不成功ARM从机重新向ARM主机发送通信请求;
步骤D4,根据步骤C1至步骤C4的过程实现通信。
所述通信冲突解决方法如下,
步骤E1,发生通信冲突的ARM从机随机产生一个随机数,该随机数介于0和M之间,M为大于0的数字,在M/10毫秒后,发生通信冲突的ARM从机再次发送通信请求,如果收到反馈或者延迟命令,则通信冲突解决;否则转至步骤E2;
步骤E2,发生通信冲突的ARM从机随机产生一个随机数,该随机数介于0和N之间,M为大于0的数字并且N>M,在N/10毫秒后,发生通信冲突的ARM从机再次发送通信请求,如果收到反馈或者延迟命令,则通信冲突解决;否则转至步骤E3;
步骤E3,发生通信冲突的ARM从机随机产生一个随机数,该随机数介于0和P之间,P为大于0的数字并且P>N,在P/10毫秒后,发生通信冲突的ARM从机再次发送通信请求,如果收到反馈或者延迟命令,则通信冲突解决;否则重复执行步骤E3。
某个ARM从机与ARM主机实现通信连接后,T毫秒内无法被其他ARM从机发送的通信请求中断,所述T的值由ARM的性能决定。
所述数字代码是ARM主机与ARM从机约定好的数字代码。
本发明所达到的有益效果:1、本发明在不带串口模块的ARM从机数较多的情况下只使用两个USB-TTL串口模块实现与ARM主机之间的通信,具有很好的可扩展性,布线简单;2、每个ARM从机的通信程序完全相同,不需要根据具体情况改变程序,编程简单;3、本发明实现了同等地位的各个ARM从机获得不同的地址,拥有唯一地址后ARM从机可以不受其他ARM从机干扰地与ARM主机通信,通信效率高且可靠。
附图说明
图1为本发明的电路图。
图2为给ARM从机赋地址的流程图。
图3为通信冲突解决的流程图。
具体实施方式
下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
如图1所示(图中除通信线以外的线路被省略),包括一个ARM主机和若干ARM从机;ARM主机通过第一串口模块连接到一个串行总线上,所有ARM从机包括若干自带串口模块的ARM从机和若干不带串口模块的ARM从机,所述自带串口模块的ARM从机在串行总线的任意位置接入,所有不带串口模块的ARM从机通过第二串口模块接入串行总线,所述第一串口模块、第二串口模块以及ARM从机自带的串口模块结构一致,主要由一个作为控制口的USB-TTL串口模块和一个作为数据口的USB-TTL串口模块构成,所述第二串口模块的两个USB-TTL串口模块的数据发送引脚均与不带串口模块的ARM从机的数据接收引脚连接,所述第二串口模块的两个USB-TTL串口模块的数据接收引脚均与不带串口模块的ARM从机的数据发送引脚连接。
在实际运用中,多ARM系统只拥有一个ARM主机,这个系统的ARM主机也可以是属于另一个系统的ARM从机或ARM主机。上述的通信电路在不带串口模块的ARM从机数较多的情况下只使用两个USB-TTL串口模块,一个为控制口,另一个为数据口,控制口引脚为D1+、D1-、TXD1和RXD1,数据口引脚为D2+、D2-、TXD2和RXD2。
上述的多个ARM间的通信电路的通信方法,包括以下步骤。
步骤一,根据不同的ARM从机,连接通信电路;具体结构如图1所示。
步骤二,给ARM从机赋地址。
在通电后,ARM主机立即进入赋地址状态,ARM从机进入受地址状态;所谓赋地址状态是指ARM主机给各个ARM从机授予正式地址状态,在ARM主机失电重启后,ARM从机的正式地址作废,重新获取正式地址;所谓受地址状态是ARM从机等待得到正式地址的状态,在得到正式地址之前,ARM从机自身产生一个随机的临时地址,其具体的赋地址过程如图2所示:
步骤A1,ARM主机通过控制口向所有ARM从机发出获取地址命令;
步骤A2,所有接收到命令的ARM从机在一个数字范围内各自产生一个随机整数作为自己的临时地址,数字范围进一步分成n组并依次对n组进行1到n的编号,n为正整数且n≥1; 
步骤A3,ARM主机向ARM从机发出表征第1组的数字代码,数字代码是ARM主机与ARM从机约定好的数字代码;
步骤A4,组内的ARM从机接收到数字代码后,向ARM主机发送自己的临时地址,如果ARM主机接收到ARM从机发送的临时地址,ARM主机对临时地址进行校验后,赋给ARM从机正式地址;如果ARM主机未接收到回复,ARM主机记录该组组号;
步骤A5,判断是否遍历了步骤A2中的所有组,如果否,则ARM主机向ARM从机发出表征下一组的数字代码,转至步骤A4;如果是,则转至步骤A6;
步骤A6,ARM主机通过控制口向步骤A4中记录的所有组号内的ARM从机发出获取地址命令;
步骤A7,所有接收到命令的ARM从机在一个数字范围内各自产生一个随机整数作为自己的临时地址,数字范围进一步分成n组并依次对n组进行1到n的编号;
步骤A8,ARM主机向ARM从机发出表征第1组的数字代码;
步骤A9,组内的ARM从机接收到数字代码后,向从机发送自己的临时地址,如果ARM主机接收到ARM从机发送的临时地址,ARM主机对临时地址进行校验后,赋给ARM从机正式地址;如果ARM主机未接收到回复,ARM主机记录该组组号;
步骤A10,判断是否遍历了步骤A7中的所有组,如果否,则ARM主机向ARM从机发出表征下一组的数字代码,转至步骤A4;如果是,则转至步骤A11;
步骤A11,ARM主机向ARM从机发出结束命令,各ARM从机进入各自工作作态。
步骤三,ARM主机和若干ARM从机之间实现通信连接,进行数据和命令交换。
ARM主机和若干ARM从机之间实现通信连接包括以下两种方式,
1)ARM主机向若干ARM从机发起通信;具体过程为,
步骤B1,ARM主机通过控制口发送若干个通信命令,所述通信命令包含表征要建立通信连接的ARM从机的包头和正式地址;
步骤B2,所有ARM从机接收通信命令,与通信命令中的包头和正式地址匹配的ARM从机通过控制口发出反馈;
步骤B3,数据口结束高阻状态,配置到串口的工作状态, ARM主机与ARM从机通过数据口交换数据和命令;
2)若干ARM从机向ARM主机发起通信;具体过程为,
当ARM从机有正式地址时:
步骤C1,某个需要建立通信连接的ARM从机通过控制口发送通信请求,所述通信请求包含表征要建立通信连接的ARM从机的包头和正式地址;
步骤C2,如果ARM主机接收到通信请求,向ARM从机反馈一窜数字代码并在数字代码后附上发送通信请求的ARM从机的正式地址;如果ARM主机未接收到通信请求,即产生通信冲突,则先解决通信冲突,然后向ARM从机反馈一窜数字代码并在数字代码后附上发送通信请求的ARM从机的正式地址;
上述通信冲突解决方法如图3所示,
步骤E1,发生通信冲突的ARM从机随机产生一个随机数,该随机数介于0和M之间,M为大于0的数字,在M/10毫秒后,发生通信冲突的ARM从机再次发送通信请求,如果收到反馈或者延迟命令,则通信冲突解决;否则转至步骤E2;
步骤E2,发生通信冲突的ARM从机随机产生一个随机数,该随机数介于0和N之间,M为大于0的数字并且N>M,在N/10毫秒后,发生通信冲突的ARM从机再次发送通信请求,如果收到反馈或者延迟命令,则通信冲突解决;否则转至步骤E3;
步骤E3,发生通信冲突的ARM从机随机产生一个随机数,该随机数介于0和P之间,P为大于0的数字并且P>N,在P/10毫秒后,发生通信冲突的ARM从机再次发送通信请求,如果收到反馈或者延迟命令,则通信冲突解决;否则重复执行步骤E3;
步骤C3,ARM从机接收到响应后,判断ARM主机发送的数字代码后附上的正式地址与自身正式地址是否吻合,如果吻合,转至步骤C4,如果不吻合,ARM从机重新向ARM主机发送通信请求;
步骤C4,数据口结束高阻状态,配置到串口的工作状态, ARM主机与ARM从机通过数据口交换数据和命令。
当ARM从机有无地址时:
步骤D1,某个需要建立通信连接的ARM从机通过控制口发送通信请求,所述通信请求包含表征要建立通信连接的ARM从机的包头和临时地址;
步骤D2,主机接收到通信请求后,向其反馈一窜数字代码,并要求ARM从机原样发回;
步骤D3,如果发回成功,ARM主机赋给ARM从机正式地址,转至步骤D4;如果不成功ARM从机重新向ARM主机发送通信请求;
步骤D4,根据步骤C1至步骤C4的过程实现通信。
在通信过程中,某个ARM从机与ARM主机实现通信连接后,T毫秒内无法被其他ARM从机发送的通信请求中断,T的值由ARM的性能决定,T毫秒后其他ARM从机对ARM主机发送了通信请求,ARM主机通过数据口向已经与其建立通信关系的的ARM从机发送暂停通信的指令,通过控制口向等待与ARM主机通信的ARM从机发送响应指令,响应ARM从机的请求。
在各种情况下数据口和控制口状态变化:
在赋地址过程中数据口所在的两个GPIO端口均置为高阻状态;在正常工作状态下,如果ARM从机在不与ARM主机通信的状态下,ARM从机的数据口所在串口的两个GPIO端口置为高阻状态,只有ARM主机响应了ARM从机的通信请求后这两个GPIO口才能脱离高阻态进入工作状态,ARM从机的控制口的TXD在不需要发送数据的情况下,其对应的GPIO也置为高阻状态;如果ARM从机与ARM主机间不再有通信需求,ARM从机或主机可以通过控制口发送停止通信的请求,另一方收到后发出响应,ARM主机便解除该从机对数据口的使用权,ARM从机的数据口两GPIO端置为高阻状态。
上述的通信电路中,如果两个ARM从机间需要进行数据通信,提出请求的ARM从机通过控制口向ARM主机报告该请求,再由ARM主机发送该命令给目标ARM从机。ARM主机的数据口两GPIO端置为高阻状态,两个需要交换数据的ARM从机的数据口的GPIO端退出高阻状态,进入正常的串口工作状态,两个ARM从机间的通信建立完毕,该通信T毫秒后可以被中断,如果两从机间不再有通信需求,任意一个ARM从机可以通过控制口发送停止通信的请求,ARM主机收到后发出响应,ARM主机便解除两ARM从机对数据口的使用权,ARM从机的数据口两GPIO端置为高阻状态。
综上所述,本发明在不带串口模块的ARM从机数较多的情况下只使用两个USB-TTL串口模块实现与ARM主机之间的通信,具有很好的可扩展性,布线简单;每个ARM从机的通信程序完全相同,不需要根据具体情况改变程序,编程简单;同时也实现了同等地位的各个ARM从机可获得不同的地址,拥有唯一地址后ARM从机可以不受其他ARM从机干扰地与ARM主机通信,通信效率高且可靠。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。

Claims (6)

1.多个ARM间的通信电路,其特征在于:包括一个ARM主机和若干ARM从机;ARM主机通过第一串口模块连接到一个串行总线上,所有ARM从机包括若干自带串口模块的ARM从机和若干不带串口模块的ARM从机,所述自带串口模块的ARM从机在串行总线的任意位置接入,所有不带串口模块的ARM从机通过第二串口模块接入串行总线,所述第一串口模块、第二串口模块以及ARM从机自带的串口模块结构一致,主要由一个作为控制口的USB-TTL串口模块和一个作为数据口的USB-TTL串口模块构成,所述第二串口模块的两个USB-TTL串口模块的数据发送引脚均与不带串口模块的ARM从机的数据接收引脚连接,所述第二串口模块的两个USB-TTL串口模块的数据接收引脚均与不带串口模块的ARM从机的数据发送引脚连接。
2.基于权利要求1所述的多个ARM间的通信电路的通信方法,其特征在于:包括以下步骤,
步骤一,根据不同的ARM从机,连接通信电路;
步骤二,给ARM从机赋地址;
所述赋地址的具体过程为,
步骤A1,ARM主机通过控制口向所有ARM从机发出获取地址命令;
步骤A2,所有接收到命令的ARM从机在一个数字范围内各自产生一个随机整数作为自己的临时地址,数字范围进一步分成n组并依次对n组进行1到n的编号,n为正整数且n≥1;
步骤A3,ARM主机向ARM从机发出表征第1组的数字代码;
步骤A4,组内的ARM从机接收到数字代码后,向ARM主机发送自己的临时地址,如果ARM主机接收到ARM从机发送的临时地址,ARM主机对临时地址进行校验后,赋给ARM从机正式地址;如果ARM主机未接收到回复,ARM主机记录该组组号;
步骤A5,判断是否遍历了步骤A2中的所有组,如果否,则ARM主机向ARM从机发出表征下一组的数字代码,转至步骤A4;如果是,则转至步骤A6;
步骤A6,ARM主机通过控制口向步骤A4中记录的所有组号内的ARM从机发出获取地址命令;
步骤A7,所有接收到命令的ARM从机在一个数字范围内各自产生一个随机整数作为自己的临时地址,数字范围进一步分成n组并依次对n组进行1到n的编号;
步骤A8,ARM主机向ARM从机发出表征第1组的数字代码;
步骤A9,组内的ARM从机接收到数字代码后,向从机发送自己的临时地址,如果ARM主机接收到ARM从机发送的临时地址,ARM主机对临时地址进行校验后,赋给ARM从机正式地址;如果ARM主机未接收到回复,ARM主机记录该组组号;
步骤A10,判断是否遍历了步骤A7中的所有组,如果否,则ARM主机向ARM从机发出表征下一组的数字代码,转至步骤A4;如果是,则转至步骤A11;
步骤A11,ARM主机向ARM从机发出结束命令,各ARM从机进入各自工作作态;
步骤三,ARM主机和若干ARM从机之间实现通信连接,进行数据和命令交换。
3.根据权利要求2所述的多个ARM间的通信电路的通信方法,其特征在于:ARM主机和若干ARM从机之间实现通信连接包括以下两种方式,
1)ARM主机向若干ARM从机发起通信;具体过程为,
步骤B1,ARM主机通过控制口发送若干个通信命令,所述通信命令包含表征要建立通信连接的ARM从机的包头和正式地址;
步骤B2,所有ARM从机接收通信命令,与通信命令中的包头和正式地址匹配的ARM从机通过控制口发出反馈;
步骤B3,数据口结束高阻状态,配置到串口的工作状态, ARM主机与ARM从机通过数据口交换数据和命令;
2)若干ARM从机向ARM主机发起通信;具体过程为,
当ARM从机有正式地址时:
步骤C1,某个需要建立通信连接的ARM从机通过控制口发送通信请求,所述通信请求包含表征要建立通信连接的ARM从机的包头和正式地址;
步骤C2,如果ARM主机接收到通信请求,向ARM从机反馈一窜数字代码并在数字代码后附上发送通信请求的ARM从机的正式地址;如果ARM主机未接收到通信请求,即产生通信冲突,则先解决通信冲突,然后向ARM从机反馈一窜数字代码并在数字代码后附上发送通信请求的ARM从机的正式地址;
步骤C3,ARM从机接收到响应后,判断ARM主机发送的数字代码后附上的正式地址与自身正式地址是否吻合,如果吻合,转至步骤C4,如果不吻合,ARM从机重新向ARM主机发送通信请求;
步骤C4,数据口结束高阻状态,配置到串口的工作状态, ARM主机与ARM从机通过数据口交换数据和命令;
当ARM从机有无地址时:
步骤D1,某个需要建立通信连接的ARM从机通过控制口发送通信请求,所述通信请求包含表征要建立通信连接的ARM从机的包头和临时地址;
步骤D2,主机接收到通信请求后,向其反馈一窜数字代码,并要求ARM从机原样发回;
步骤D3,如果发回成功,ARM主机赋给ARM从机正式地址,转至步骤D4;如果不成功ARM从机重新向ARM主机发送通信请求;
步骤D4,根据步骤C1至步骤C4的过程实现通信。
4.根据权利要求3所述的多个ARM间的通信电路的通信方法,其特征在于:所述通信冲突解决方法如下,
步骤E1,发生通信冲突的ARM从机随机产生一个随机数,该随机数介于0和M之间,M为大于0的数字,在M/10毫秒后,发生通信冲突的ARM从机再次发送通信请求,如果收到反馈或者延迟命令,则通信冲突解决;否则转至步骤E2;
步骤E2,发生通信冲突的ARM从机随机产生一个随机数,该随机数介于0和N之间,M为大于0的数字并且N>M,在N/10毫秒后,发生通信冲突的ARM从机再次发送通信请求,如果收到反馈或者延迟命令,则通信冲突解决;否则转至步骤E3;
步骤E3,发生通信冲突的ARM从机随机产生一个随机数,该随机数介于0和P之间,P为大于0的数字并且P>N,在P/10毫秒后,发生通信冲突的ARM从机再次发送通信请求,如果收到反馈或者延迟命令,则通信冲突解决;否则重复执行步骤E3。
5.根据权利要求3所述的多个ARM间的通信电路的通信方法,其特征在于:某个ARM从机与ARM主机实现通信连接后,T毫秒内无法被其他ARM从机发送的通信请求中断,所述T的值由ARM的性能决定。
6.根据权利要求2或3所述的多个ARM间的通信电路的通信方法,其特征在于:所述数字代码是ARM主机与ARM从机约定好的数字代码。
CN201410440881.9A 2014-09-02 2014-09-02 多个arm间的通信电路及其通信方法 Expired - Fee Related CN104216863B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410440881.9A CN104216863B (zh) 2014-09-02 2014-09-02 多个arm间的通信电路及其通信方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410440881.9A CN104216863B (zh) 2014-09-02 2014-09-02 多个arm间的通信电路及其通信方法

Publications (2)

Publication Number Publication Date
CN104216863A true CN104216863A (zh) 2014-12-17
CN104216863B CN104216863B (zh) 2017-04-19

Family

ID=52098370

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410440881.9A Expired - Fee Related CN104216863B (zh) 2014-09-02 2014-09-02 多个arm间的通信电路及其通信方法

Country Status (1)

Country Link
CN (1) CN104216863B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106060187A (zh) * 2016-05-26 2016-10-26 杭州华三通信技术有限公司 一种地址分配方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5548767A (en) * 1993-10-06 1996-08-20 Intel Corporation Method and apparatus for streamlined handshaking between state machines
CN202257569U (zh) * 2011-09-30 2012-05-30 华自科技股份有限公司 基于arm内核的嵌入式人机交互装置
CN203038064U (zh) * 2013-01-04 2013-07-03 南京工程学院 基于多arm处理器的高性能数控系统
CN103970711A (zh) * 2014-05-14 2014-08-06 南京化工职业技术学院 基于arm及fpga双处理器的移动终端硬件扩展装置
CN204087203U (zh) * 2014-09-02 2015-01-07 南京工程学院 多个arm间的通信电路

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5548767A (en) * 1993-10-06 1996-08-20 Intel Corporation Method and apparatus for streamlined handshaking between state machines
CN202257569U (zh) * 2011-09-30 2012-05-30 华自科技股份有限公司 基于arm内核的嵌入式人机交互装置
CN203038064U (zh) * 2013-01-04 2013-07-03 南京工程学院 基于多arm处理器的高性能数控系统
CN103970711A (zh) * 2014-05-14 2014-08-06 南京化工职业技术学院 基于arm及fpga双处理器的移动终端硬件扩展装置
CN204087203U (zh) * 2014-09-02 2015-01-07 南京工程学院 多个arm间的通信电路

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106060187A (zh) * 2016-05-26 2016-10-26 杭州华三通信技术有限公司 一种地址分配方法及装置

Also Published As

Publication number Publication date
CN104216863B (zh) 2017-04-19

Similar Documents

Publication Publication Date Title
CN105260337B (zh) 一种单片机的自动编址方法及系统
CN101167341A (zh) 对现场总线安全用户的地址分配
CN103490966A (zh) 一种双冗余can总线数据接收处理方法
CN103490931B (zh) 一种不中断业务升级过程中协议不中断的方法和装置
US9544258B2 (en) Network, head subscriber and data transmission method
CN108255756A (zh) 一种多芯片串联通信系统
CN115168081B (zh) 转换电路和报文转换方法
CN105786734B (zh) 数据传输的方法、扩展装置、外围设备及系统
CN103914007A (zh) 用于程序重调的方法和系统
CN102404414A (zh) 基于mmc/sd接口的以太网通信系统及方法
CN101507193B (zh) 基于can通信控制器及提高数据吞吐量的通信系统的建立方法及设备
CN204087203U (zh) 多个arm间的通信电路
KR102303424B1 (ko) 랜덤 액세스 메모리를 포함하는 하나 이상의 처리 유닛을 위한 직접 메모리 액세스 제어 장치
CN108873769A (zh) 自动化系统和运行方法
CN104216863A (zh) 多个arm间的通信电路及其通信方法
CN107222379A (zh) 一种串口通信的方法和装置
CN104683130A (zh) 一种配置堆叠端口的方法和设备
CN105867881B (zh) 一种用于机器人的通讯方法及数据交互装置
US20130191501A1 (en) Procedures for the Transfer of User Data
CN104639917A (zh) 一种视频监控系统及其控制方法
US11863468B2 (en) Control of ethernet link-partner GPIO using OAM
CN108234361A (zh) 用于传输数据的方法
CN110687854B (zh) 一种pa总线控制器以及一种pa总线控制系统
CN107046493B (zh) 通信方法及装置
CN107577202A (zh) 自动化系统和用于运行的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20180704

Address after: 211000 two, B unit 300, Zhihui Road, Kirin science and Technology Innovation Park, Jiangning District, Nanjing, Jiangsu.

Patentee after: Nanjing dry weft Intelligent Technology Co., Ltd.

Address before: 211167 1 Hong Kong Avenue, Jiangning Science Park, Nanjing, Jiangsu

Patentee before: Nanjing Institute of Technology

TR01 Transfer of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170419

Termination date: 20190902

CF01 Termination of patent right due to non-payment of annual fee