CN108259134A - 一种基于afp协议的数据传输方法 - Google Patents
一种基于afp协议的数据传输方法 Download PDFInfo
- Publication number
- CN108259134A CN108259134A CN201810022069.2A CN201810022069A CN108259134A CN 108259134 A CN108259134 A CN 108259134A CN 201810022069 A CN201810022069 A CN 201810022069A CN 108259134 A CN108259134 A CN 108259134A
- Authority
- CN
- China
- Prior art keywords
- data
- frame
- receiving terminal
- bus
- afp
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40169—Flexible bus arrangements
- H04L12/40176—Flexible bus arrangements involving redundancy
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0061—Error detection codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/0008—Synchronisation information channels, e.g. clock distribution lines
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Communication Control (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本发明提供了一种基于AFP协议的数据传输方法,包括步骤S100发送端判断总线是否处于空闲状态;步骤S200当所述总线处于空闲状态时,所述发送端向所述总线发送数据帧;步骤S300接收端根据所述发送端配置的时钟频率,接收所述发送端发送的所述数据帧。本发明通过发送端驱动时钟线与数据线的方式,实现总线上各端口地位平等,无需区分主从模式的目的。
Description
技术领域
本发明涉及数据通信技术领域,尤指一种基于AFP协议的数据传输方法。
背景技术
目前微控制器组网、通信,通常是基于单总线、I2C和SPI等总线进行的,这些总线能有效完成单个字节数据收发,对于自定义帧收发处理有所不足。目前,单个产品的微处理器和外围芯片越来越多,处理器之间的通信显得非常重要,以上接口协议对于构建芯片间的通信网络实现起来较为复杂,有着各自的缺陷。单总线属于异步通信,它的缺点是对于时钟有所要求,需要满足特定脉宽条件,不容易扩展多种速度;I2C的缺点是多设备通信时,设备需要在主从间做切换,主机和从机在某些条件下可拉低时钟线,系统设计不周全总线可能锁死;SPI的缺点是四线制占用硬件资源,多机通讯模式为一主多从,各接口间地位不统一,从机总是在等待主机发送指令。
针对上述情况,本申请提供了一种解决以上技术问题的技术方案。
发明内容
本发明的目的是提供一种基于AFP协议的数据传输方法,通过发送端驱动时钟线与数据线的方式,实现总线上各端口地位平等,无需区分主从模式。
本发明提供的技术方案如下:
一种基于AFP协议的数据传输方法,包括:步骤S100发送端判断总线是否处于空闲状态;步骤S200当所述总线处于空闲状态时,所述发送端向所述总线发送数据帧;步骤S300接收端根据所述发送端配置的时钟频率,接收所述发送端发送的所述数据帧。
优选的,步骤S200具体包括:步骤S210所述发送端向所述总线发送起始信号;步骤S220当所述发送端发送所述起始信号完成后,所述发送端向所述总线发送所述数据帧中的数据;步骤S230所述发送端判断发送的所述数据帧中的数据数量是否小于预设发送数据数量,当小于时,执行步骤S220,否则,所述数据帧发送完成。
优选的,步骤S300具体包括:步骤S310所述接收端接收所述总线上的所述起始信号;步骤S320当所述接收端接收所述起始信号完成后,所述接收端根据所述发送端配置的时钟频率,接收所述数据帧中的所述帧头数据;步骤 S330当所述接收端接收所述数据帧中的所述帧头数据完成后,所述接收端接收所述数据帧中的所述帧数据。
优选的,步骤S320具体包括:步骤S321当所述接收端接收所述起始信号完成后,清除累计接收的历史数据数量;步骤S322所述接收端根据所述发送端配置的时钟频率,判断总线上的数据是否有效,当有效时,接收所述数据,并累计接收的所述数据的数量后,执行步骤S323,否则,执行步骤S324;步骤S323所述接收端判断累计接收的数据数量是否小于第一预设接收数据数量,当小于时,执行步骤S322,否则,所述数据帧中的所述帧头数据接收完成,并执行步骤S325;步骤S324所述接收端判断等待接收数据的时间是否大于预设等待时间,当大于时,执行步骤S310,否则,执行步骤S322;步骤S325所述接收端判断接收的所述帧头数据是否有效,当有效时,执行步骤S330,否则,执行步骤S310。
优选的,步骤S330具体包括:步骤S331当所述接收端接收所述数据帧中的所述帧头数据完成后,判断总线上的数据是否有效,当有效时,接收所述数据,并累计接收的所述数据的数量后,执行步骤S332,否则,执行步骤S333;步骤S332所述接收端判断累计接收的数据数量是否小于第二预设接收数据数量,当小于时,执行步骤S331,否则,所述数据帧中的所述帧数据接收完成;步骤S333所述接收端判断等待接收数据的时间是否大于所述预设等待时间,当大于时,执行步骤S310,否则,执行步骤S331。
优选的,步骤S330之后还包括:步骤S340当所述接收端接收所述数据帧中的所述帧数据完成后,所述接收端接收所述数据帧中的所述帧尾数据
优选的,步骤S330之后还包括:步骤S350所述接收端判断是否进入校验模式,当需要校验时,校验所述数据帧后,所述数据帧接收完成,当不需要校验时,所述数据帧接收完成。
优选的,所述AFP协议包括:硬件接口;所述硬件接口由数据线以及时钟线组成;所述数据线以及时钟线均为双向通讯线;所述数据线以及时钟线均为线与逻辑。
优选的,所述AFP协议还包括:时序;所述时序包括空闲信号、起始信号、数据信号;所述空闲信号为所述时钟线与所述数据线均为高电平;所述起始信号为所述时钟线为高电平,并且所述数据线为下降沿;所述数据信号为所述时钟线的上升沿采集所述数据线上的信号。
优选的,所述数据信号为8bit以及1bit停止位。
通过本发明提供的基于AFP协议的数据传输方法及AFP协议,能够带来以下至少一种有益效果:
1、在本发明中,各端口发送数据之前先判断总线状态,只有当总线处于空闲状态时,最先请求的端口就能向总线发送数据,总线上各端口地位平等,无需区分主从模式;同时总线发送逻辑与接收逻辑采用非应答机制,因此总线不会出现锁死现象。
2、在本发明中,发送端先发送起始信号再发送数据帧,并通过比较实际发送的数据数量是否达到参数设置的需要发送的数据数量来判断数据帧是否发送完成,使得数据帧中的数据发送不会被遗漏,从而保证了数据帧发送的完整性。
3、在本发明中,时钟线由发送端驱动,接收端根据发送端配置的时钟频率接收总线上的数据,实现时钟同步逻辑,对系统时钟精度无过多要求。
4、在本发明中,接收端首先接收帧头数据,并且判断接收的帧头数据是否与预先设置的帧头参数匹配,当匹配时,继续接收后续数据,当不匹配时,忽略后续数据,从而保证了数据帧能够被准确地传输至目标端口。
5、在本发明中,接收端接收数据帧完成后,对接收的数据帧进行校验,用于验证数据传输过程中是否出现数据丢失,从而保证了数据传输的正确性和完整性。
6、在本发明中,总线电平结构简洁,并且只需两根输入输出线和超时判断机制就可完成数据传输,无需占用过多硬件资源,从而节约了硬件成本,并且更容易搭建应用环境。
附图说明
下面将以明确易懂的方式,结合附图说明优选实施方式,对一种基于AFP 协议的数据传输方法的上述特性、技术特征、优点及其实现方式予以进一步说明。
图1是本发明的基于AFP的数据传输方法的一个实施例的流程图;
图2是本发明的基于AFP的数据传输方法的另一实施例的流程图;
图3是本发明的基于AFP的数据传输方法的另一实施例的流程图。
具体实施方式
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。
为使图面简洁,各图中只示意性地表示出了与本发明相关的部分,它们并不代表其作为产品的实际结构。另外,以使图面简洁便于理解,在有些图中具有相同结构或功能的部件,仅示意性地绘示了其中的一个,或仅标出了其中的一个。在本文中,“一个”不仅表示“仅此一个”,也可以表示“多于一个”的情形。
本发明提供了一种基于AFP协议的数据传输方法的一个实施例,参见图1,包括:步骤S100发送端判断总线是否处于空闲状态;步骤S200当所述总线处于空闲状态时,所述发送端向所述总线发送数据帧;步骤S300接收端根据所述发送端配置的时钟频率,接收所述发送端发送的所述数据帧。
具体的,AFP(Application Frame Protocol)协议是一种自定义接口协议,包括硬件接口、时序、参数和状态。硬件接口包括数据线以及时钟线,其中时钟线由发送端控制,数据线和时钟线均为双向通讯线,且均为线与逻辑,即两个或以上输出端直接互连就可以实现“与”的逻辑功能,以时钟线为例,若所有端口时钟线输出高电平,则总线时钟线为高电平,若有一个端口时钟线输出低电平,则总线时钟线为低电平。时序包括空闲信号、起始信号、数据信号;空闲信号为时钟线以及数据线均为高电平;起始信号为时钟线为高电平,数据线为下降沿;数据信号为时钟线的上升沿采集数据线上的信号,数据为8bit, 1bit停止位,无起始位,无校验位。参数包括帧头屏蔽位(FH_MASK):对应帧头长度,1有效,0无效;帧头长度(FL_HEAD):帧头字节长度;帧头期望值(FH_VALUEx):希望接收的帧头数据;假设帧头长度(FL_HEAD)为 8字节,根据设置的8字节的帧头屏蔽位(FH_MASK)中对应位为1时,将接收的帧头数据与帧头期望值(FH_VALUEx)对应位进行比对,当所有帧头屏蔽位(FH_MASK)中对应位为1时,接收的帧头数据与帧头期望值 (FH_VALUEx)对应位均相同时,则帧头匹配,当前接收端接收剩余数据;目标帧长度(FL_TAR):希望接收的帧数据长度,可被实时修改;使能校验位(FC_ENABLE):1使能校验,0不校验;帧校验值长度(FL_TAR-2):帧校验值字节长度;帧校验值(FC_VALUEx):希望接收的帧校验值数据;实时帧长度(FL_CUR):当前接收的数据长度;帧数据缓冲基地址(FBASE_ADD):与实时帧长度结合存放当前数据;超时限制计数(FTOC_TAR):同一帧中连续两个数据最大时钟间隔;超时实时计数(FTOC_CUR):同一帧中连续两个数据之间的时钟计数,接收新数据时超时计数从0递增。状态包括起始状态(SF):接收到总线上起始信号时置1,产生帧起始事件,清除实时帧长度 (FL_CUR)以及超时实时计数(FTOC_CUR);帧头状态(FH_STA):帧头匹配时置1,帧头不匹配时忽略接下来的数据帧就,直到检测到下一个起始信号;校验状态(FC_RT):指示当前帧校验结果,校验有效时置1;帧完成状态(FR_FINISH):接收的有效数据到达指定个数时置1,并且当此状态为1 时忽略新的帧信号,直至手动清除为0;超时状态(FTOC_STA):有效数据非空且未到达指定个数,在规定周期内没有新数据响应,超时实时计数 (FTOC_CUR)大于超时限制计数(FTOC_TAR)置1。
具体的,在本实施例中,总线上无数据收发时,各端口均保持接收态,即各端口均为接收端,总线处于空闲信号,此时其中一个端口控制数据线以及时钟线,开始向总线发送数据帧,则其余端口根据发送端口配置的时钟频率,并根据各自设置的参数接收总线上的数据帧。可以理解的是,数据的发送及接收是实时进行的,即发送端即发接收端即收,而并非发送端发送数据帧完成后,接收端再接收数据帧。
在本发明中,各端口发送数据之前先判断总线状态,只有当总线处于空闲状态时,最先请求的端口就能向总线发送数据,总线上各端口地位平等,无需区分主从模式;同时总线发送逻辑与接收逻辑采用非应答机制,因此总线不会出现锁死现象。
在以上实施例的基础上,本发明还提供一个实施例,参照图2,步骤S200 具体包括:步骤S210所述发送端向所述总线发送起始信号;步骤S220当所述发送端发送所述起始信号完成后,所述发送端向所述总线发送所述数据帧中的数据;步骤S230所述发送端判断发送的所述数据帧中的数据数量是否小于预设发送数据数量,当小于时,执行步骤S220,否则,所述数据帧发送完成。
具体的,在本实施例中,当发送端判断到总线处于空闲信号时,即时钟线以及数据线均为高电平时,发送端驱动数据线,将数据线由高电平拉低,并提供时钟,产生起始信号,接着开始发送数据帧中的数据,即数据在时钟线低电平时被送出,高电平被保持,数据以字节形式发送到总线上,每字节数据发送后跟一位停止位,数据循环发送直到最后一个字节数据发出后,发送的数据字节数量等于发送端预先设置的发送数据字节数量时,数据帧发送完成,总线恢复空闲信号。
在本发明中,发送端先发送起始信号再发送数据帧,并通过比较实际发送的数据数量是否达到参数设置的需要发送的数据数量来判断数据帧是否发送完成,使得数据帧中的数据发送不会被遗漏,从而保证了数据帧发送的完整性。
在本实施例的另一个优选的实施方式中,步骤S300具体包括:步骤S310 所述接收端接收所述总线上的所述起始信号;步骤S320当所述接收端接收所述起始信号完成后,所述接收端根据所述发送端配置的时钟频率,接收所述数据帧中的所述帧头数据;步骤S330当所述接收端接收所述数据帧中的所述帧头数据完成后,所述接收端接收所述数据帧中的所述帧数据。
具体的,在本实施例中,接收端等待起始信号,当接收到起始信号时,即时钟线高电平时数据线出现下降沿,此时接收端根据时钟线上的时钟频率,依次接收数据帧中的帧头数据、帧数据。
在本发明中,时钟线由发送端驱动,接收端根据发送端配置的时钟频率接收总线上的数据,实现时钟同步逻辑,对系统时钟精度无过多要求。
在以上实施例的基础上,本发明还提供一个实施例,参照图3,步骤S320 具体包括:步骤S321当所述接收端接收所述起始信号完成后,清除累计接收的历史数据数量;步骤S322所述接收端根据所述发送端配置的时钟频率,判断总线上的数据是否有效,当有效时,接收所述数据,并累计接收的所述数据的数量后,执行步骤S323,否则,执行步骤S324;步骤S323所述接收端判断累计接收的数据数量是否小于第一预设接收数据数量,当小于时,执行步骤 S322,否则,所述数据帧中的所述帧头数据接收完成,并执行步骤S325;步骤 S324所述接收端判断等待接收数据的时间是否大于预设等待时间,当大于时,执行步骤S310,否则,执行步骤S322;步骤S325所述接收端判断接收的所述帧头数据是否有效,当有效时,执行步骤S330,否则,执行步骤S310。
具体的,在本实施例中,接收端接收起始信号后,清除实时帧长度 (FL_CUR),并根据时钟线上的时钟频率,开始接收数据,每接收一个数据,实时帧长度(FL_CUR)加一。当接收的数据数量即当前实时帧长度(FL_CUR) 达到第一预设接收数据数量即帧头长度(FL_HEAD)时,帧头接收完成。帧头接收完成后,检验帧头是否有效,即根据帧头屏蔽位(FH_MASK)中对应位为1时,将接收的帧头数据与帧头期望值(FH_VALUEx)对应位进行比对,当所有帧头屏蔽位(FH_MASK)中对应位为1时,接收的帧头数据与帧头期望值(FH_VALUEx)对应位均相同时,则帧头有效,帧头状态(FH_STA)被置位,并且继续接收剩余数据;否则帧头无效,并且忽略剩余数据,直到接收到下一个起始信号。在接收数据的过程中,实时检测连续两个数据之间的时钟间隔,当连续两个数据之间的时钟间隔即超时实时计数(FTOC_CUR)大于预设等待时间即超时限制计数(FTOC_TAR)时,忽略剩余数据,直到接收到下一个起始信号。
在本发明中,接收端首先接收帧头数据,并且判断接收的帧头数据是否与预先设置的帧头参数匹配,当匹配时,继续接收后续数据,当不匹配时,忽略后续数据,从而保证了数据帧能够被准确地传输至目标端口。
在本实施例的另一个优选的实施方式中,步骤S330具体包括:步骤S331 当所述接收端接收所述数据帧中的所述帧头数据完成后,判断总线上的数据是否有效,当有效时,接收所述数据,并累计接收的所述数据的数量后,执行步骤S332,否则,执行步骤S333;步骤S332所述接收端判断累计接收的数据数量是否小于第二预设接收数据数量,当小于时,执行步骤S331,否则,所述数据帧中的所述帧数据接收完成;步骤S333所述接收端判断等待接收数据的时间是否大于所述预设等待时间,当大于时,执行步骤S310,否则,执行步骤S331。
具体的,在本实施例中,接收端接收帧头数据并且当帧头有效后,开始接收帧数据,每接收一个数据,实时帧长度(FL_CUR)继续累加。当接收的数据数量即当前实时帧长度(FL_CUR)达到第二预设接收数据数量即目标帧长度(FL_TAR)时,帧数据接收完成。在接收数据的过程中,实时检测连续两个数据之间的时钟间隔,当连续两个数据之间的时钟间隔即超时实时计数 (FTOC_CUR)大于预设等待时间即超时限制计数(FTOC_TAR)时,忽略剩余数据,直到接收到下一个起始信号。
在本实施例的另一个优选的实施方式中,步骤S330之后还包括:步骤S340 当所述接收端接收所述数据帧中的所述帧数据完成后,所述接收端接收所述数据帧中的所述帧尾数据。
具体的,在本实施例中,数据帧还包含帧尾数据,帧尾数据可以是帧校验值,可以通过帧校验值长度(FL_TAR-2)以及帧校验值(FC_VALUEx)来设置参数。在其他实施例中,帧校验值也可以包含在帧数据中。接收端接收帧数据后,继续接收帧尾数据。
在本实施例的另一个优选的实施方式中,步骤S330之后还包括:步骤S350 所述接收端判断是否进入校验模式,当需要校验时,校验所述数据帧后,所述数据帧接收完成,当不需要校验时,所述数据帧接收完成。
具体的,在本实施例中,数据帧接收完成后,帧完成状态(FR_FINISH) 被置位,此时检测使能校验位(FC_ENABLE),当使能校验位(FC_ENABLE) 为1时,继续进行数据帧校验,如果校验成功,说明数据帧长度接收正确,校验状态(FC_RT)被置位,接收帧过程完成;当使能校验位(FC_ENABLE) 为0时,则不进行数据帧校验,接收帧过程完成。
在本发明中,接收端接收数据帧完成后,对接收的数据帧进行校验,用于验证数据传输过程中是否出现数据丢失,从而保证了数据传输的正确性和完整性。
在以上实施例的基础上,本发明还提供一个实施例,所述AFP协议包括:硬件接口;所述硬件接口由数据线以及时钟线组成;所述数据线以及时钟线均为双向通讯线;所述数据线以及时钟线均为线与逻辑。
具体的,在本实施例中,硬件接口包括数据线以及时钟线,其中时钟线由发送端控制,数据线和时钟线均为双向通讯线,且均为线与逻辑,即两个或以上输出端直接互连就可以实现“与”的逻辑功能,以时钟线为例,若所有端口时钟线输出高电平,则总线时钟线为高电平,若有一个端口时钟线输出低电平,则总线时钟线为低电平。
在本实施例的另一个优选的实施方式中,所述AFP协议还包括:时序;所述时序包括空闲信号、起始信号、数据信号;所述空闲信号为所述时钟线与所述数据线均为高电平;所述起始信号为所述时钟线为高电平,并且所述数据线为下降沿;所述数据信号为所述时钟线的上升沿采集所述数据线上的信号。
具体的,在本实施例中,时序包括空闲信号、起始信号、数据信号;空闲信号为时钟线以及数据线均为高电平;起始信号为时钟线为高电平,数据线为下降沿;数据信号为时钟线的上升沿采集数据线上的信号。
在本实施例的另一个优选的实施方式中,所述数据信号为8bit以及1bit停止位。
具体的,在本实施例中,数据为8bit,1bit停止位,无起始位,无校验位。
在以上实施例的基础上,本发明还提供一个实施例,参照图1-3所示,包括:步骤S100发送端判断总线是否处于空闲状态;步骤S210所述发送端向所述总线发送起始信号;步骤S220当所述发送端发送所述起始信号完成后,所述发送端向所述总线发送所述数据帧中的数据;步骤S230所述发送端判断发送的所述数据帧中的数据数量是否小于预设发送数据数量,当小于时,执行步骤S220,否则,所述数据帧发送完成;步骤S310所述接收端接收所述总线上的所述起始信号;步骤S321当所述接收端接收所述起始信号完成后,清除累计接收的历史数据数量;步骤S322所述接收端根据所述发送端配置的时钟频率,判断总线上的数据是否有效,当有效时,接收所述数据,并累计接收的所述数据的数量后,执行步骤S323,否则,执行步骤S324;步骤S323所述接收端判断累计接收的数据数量是否小于第一预设接收数据数量,当小于时,执行步骤S322,否则,所述数据帧中的所述帧头数据接收完成,并执行步骤S325;步骤S324所述接收端判断等待接收数据的时间是否大于预设等待时间,当大于时,执行步骤S310,否则,执行步骤S322;步骤S325所述接收端判断接收的所述帧头数据是否有效,当有效时,执行步骤S331,否则,执行步骤S310;步骤S331当所述接收端接收所述数据帧中的所述帧头数据完成后,判断总线上的数据是否有效,当有效时,接收所述数据,并累计接收的所述数据的数量后,执行步骤S332,否则,执行步骤S333;步骤S332所述接收端判断累计接收的数据数量是否小于第二预设接收数据数量,当小于时,执行步骤S331,否则,所述数据帧中的所述帧数据接收完成,并执行步骤S340;步骤S333所述接收端判断等待接收数据的时间是否大于所述预设等待时间,当大于时,执行步骤S310,否则,执行步骤S331;步骤S340当所述接收端接收所述数据帧中的所述帧数据完成后,所述接收端接收所述数据帧中的所述帧尾数据;步骤 S350所述接收端判断是否进入校验模式,当需要校验时,校验所述数据帧后,所述数据帧接收完成,当不需要校验时,所述数据帧接收完成。
具体的,在本实施例中,完整帧结构示例如下:
1、数据帧:0x550xAA 0x800x010x660x010x020x030x040xXX 0xXX
2、接收本帧信息需设置:帧头长度(FL_HEAD)=4;帧头屏蔽位 (FH_MASK)=0xFFFFFFFF;目标帧长度(FL_TAR)=0x0B;帧校验值长度 (FL_TAR-2)=2;使能校验位(FC_ENABLE)=1;超时限制计数(FTOC_TAR) =100;
3、当帧头4字节接收完成且匹配时,帧头状态(FH_STA)=1;
4、继续接收数据字节,接收至9字节时,计算校验值;
5、继续接收数据字节,接收至11字节时,校验状态(FC_RT)指示当前校验状态,帧完成状态(FR_FINISH)指示接收完成状态;
6、此时接收端可以进行数据处理。
本发明通过发送端驱动时钟与数据的方式,实现总线上端口地位平等,无需区分主从模式的目的。
应当说明的是,上述实施例均可根据需要自由组合。以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种基于AFP协议的数据传输方法,其特征在于,包括:
步骤S100发送端判断总线是否处于空闲状态;
步骤S200当所述总线处于空闲状态时,所述发送端向所述总线发送数据帧;
步骤S300接收端根据所述发送端配置的时钟频率,接收所述发送端发送的所述数据帧。
2.根据权利要求1所述的基于AFP协议的数据传输方法,其特征在于,步骤S200具体包括:
步骤S210所述发送端向所述总线发送起始信号;
步骤S220当所述发送端发送所述起始信号完成后,所述发送端向所述总线发送所述数据帧中的数据;
步骤S230所述发送端判断发送的所述数据帧中的数据数量是否小于预设发送数据数量,当小于时,执行步骤S220,否则,所述数据帧发送完成。
3.根据权利要求1所述的基于AFP协议的数据传输方法,其特征在于,步骤S300具体包括:
步骤S310所述接收端接收所述总线上的所述起始信号;
步骤S320当所述接收端接收所述起始信号完成后,所述接收端根据所述发送端配置的时钟频率,接收所述数据帧中的所述帧头数据;
步骤S330当所述接收端接收所述数据帧中的所述帧头数据完成后,所述接收端接收所述数据帧中的所述帧数据。
4.根据权利要求3所述的基于AFP协议的数据传输方法,其特征在于,步骤S320具体包括:
步骤S321当所述接收端接收所述起始信号完成后,清除累计接收的历史数据数量;
步骤S322所述接收端根据所述发送端配置的时钟频率,判断总线上的数据是否有效,当有效时,接收所述数据,并累计接收的所述数据的数量后,执行步骤S323,否则,执行步骤S324;
步骤S323所述接收端判断累计接收的数据数量是否小于第一预设接收数据数量,当小于时,执行步骤S322,否则,所述数据帧中的所述帧头数据接收完成,并执行步骤S325;
步骤S324所述接收端判断等待接收数据的时间是否大于预设等待时间,当大于时,执行步骤S310,否则,执行步骤S322;
步骤S325所述接收端判断接收的所述帧头数据是否有效,当有效时,执行步骤S330,否则,执行步骤S310。
5.根据权利要求4所述的基于AFP协议的数据传输方法,其特征在于,步骤S330具体包括:
步骤S331当所述接收端接收所述数据帧中的所述帧头数据完成后,判断总线上的数据是否有效,当有效时,接收所述数据,并累计接收的所述数据的数量后,执行步骤S332,否则,执行步骤S333;
步骤S332所述接收端判断累计接收的数据数量是否小于第二预设接收数据数量,当小于时,执行步骤S331,否则,所述数据帧中的所述帧数据接收完成;
步骤S333所述接收端判断等待接收数据的时间是否大于所述预设等待时间,当大于时,执行步骤S310,否则,执行步骤S331。
6.根据权利要求3所述的基于AFP协议的数据传输方法,其特征在于,步骤S330之后还包括:
步骤S340当所述接收端接收所述数据帧中的所述帧数据完成后,所述接收端接收所述数据帧中的所述帧尾数据。
7.根据权利要求3或6所述的基于AFP协议的数据传输方法,其特征在于,步骤S330之后还包括:
步骤S350所述接收端判断是否进入校验模式,当需要校验时,校验所述数据帧后,所述数据帧接收完成,当不需要校验时,所述数据帧接收完成。
8.根据权利要求1所述的基于AFP协议的数据传输方法,其特征在于,所述AFP协议包括:硬件接口;
所述硬件接口由数据线以及时钟线组成;
所述数据线以及时钟线均为双向通讯线;
所述数据线以及时钟线均为线与逻辑。
9.根据权利要求8所述的基于AFP协议的数据传输方法,其特征在于,所述AFP协议还包括:时序;
所述时序包括空闲信号、起始信号、数据信号;
所述空闲信号为所述时钟线与所述数据线均为高电平;
所述起始信号为所述时钟线为高电平,并且所述数据线为下降沿;
所述数据信号为所述时钟线的上升沿采集所述数据线上的信号。
10.根据权利要求9所述的基于AFP协议的数据传输方法,其特征在于:
所述数据信号为8bit以及1bit停止位。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810022069.2A CN108259134B (zh) | 2018-01-10 | 2018-01-10 | 一种基于afp协议的数据传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810022069.2A CN108259134B (zh) | 2018-01-10 | 2018-01-10 | 一种基于afp协议的数据传输方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108259134A true CN108259134A (zh) | 2018-07-06 |
CN108259134B CN108259134B (zh) | 2021-04-13 |
Family
ID=62726120
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810022069.2A Active CN108259134B (zh) | 2018-01-10 | 2018-01-10 | 一种基于afp协议的数据传输方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108259134B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109672600A (zh) * | 2018-12-27 | 2019-04-23 | 北京航天飞腾装备技术有限责任公司 | 弹上单机互联系统 |
CN112667540A (zh) * | 2020-11-17 | 2021-04-16 | 猫岐智能科技(上海)有限公司 | 用于多设备总线通讯方法及电子设备 |
CN114301572A (zh) * | 2021-11-15 | 2022-04-08 | 北京智芯微电子科技有限公司 | 发送端、接收端及其数据帧的传输方法、存储介质 |
CN114647607A (zh) * | 2020-12-18 | 2022-06-21 | 新唐科技股份有限公司 | 恢复通信接口中断的方法及通信接口控制器 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1306358A (zh) * | 2000-01-20 | 2001-08-01 | 华为技术有限公司 | 通过数据总线发送及接收数据的方法和装置 |
CN1747442A (zh) * | 2004-09-06 | 2006-03-15 | 中兴通讯股份有限公司 | 用于通信系统的数据传输变换装置 |
WO2009046300A2 (en) * | 2007-10-05 | 2009-04-09 | Violin Memory, Inc. | Mesosynchronous data bus apparatus and method of data transmission |
CN101477640A (zh) * | 2009-01-09 | 2009-07-08 | 北京工业大学 | 基于现场可编程门阵列的识别卡接口控制器与实现方法 |
CN104360970A (zh) * | 2014-10-11 | 2015-02-18 | 中国船舶重工集团公司第七二四研究所 | 一种串行总线协议自动适配传输技术 |
-
2018
- 2018-01-10 CN CN201810022069.2A patent/CN108259134B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1306358A (zh) * | 2000-01-20 | 2001-08-01 | 华为技术有限公司 | 通过数据总线发送及接收数据的方法和装置 |
CN1747442A (zh) * | 2004-09-06 | 2006-03-15 | 中兴通讯股份有限公司 | 用于通信系统的数据传输变换装置 |
WO2009046300A2 (en) * | 2007-10-05 | 2009-04-09 | Violin Memory, Inc. | Mesosynchronous data bus apparatus and method of data transmission |
CN101477640A (zh) * | 2009-01-09 | 2009-07-08 | 北京工业大学 | 基于现场可编程门阵列的识别卡接口控制器与实现方法 |
CN104360970A (zh) * | 2014-10-11 | 2015-02-18 | 中国船舶重工集团公司第七二四研究所 | 一种串行总线协议自动适配传输技术 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109672600A (zh) * | 2018-12-27 | 2019-04-23 | 北京航天飞腾装备技术有限责任公司 | 弹上单机互联系统 |
CN109672600B (zh) * | 2018-12-27 | 2021-11-16 | 北京航天飞腾装备技术有限责任公司 | 弹上单机互联系统 |
CN112667540A (zh) * | 2020-11-17 | 2021-04-16 | 猫岐智能科技(上海)有限公司 | 用于多设备总线通讯方法及电子设备 |
CN114647607A (zh) * | 2020-12-18 | 2022-06-21 | 新唐科技股份有限公司 | 恢复通信接口中断的方法及通信接口控制器 |
CN114301572A (zh) * | 2021-11-15 | 2022-04-08 | 北京智芯微电子科技有限公司 | 发送端、接收端及其数据帧的传输方法、存储介质 |
CN114301572B (zh) * | 2021-11-15 | 2024-01-26 | 北京智芯微电子科技有限公司 | 发送端、接收端及其数据帧的传输方法、存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN108259134B (zh) | 2021-04-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108259134A (zh) | 一种基于afp协议的数据传输方法 | |
CN101620551B (zh) | 一种面向多虚拟机应用的网卡中断控制方法 | |
CN102306136B (zh) | 基于单片机输入捕获功能的波特率自适应方法 | |
CN101483646B (zh) | 一种总线高速通信的方法及接口 | |
CN110990312B (zh) | 一种用于随钻探测中的芯片级数据通信方法 | |
CN107967227A (zh) | 一种基于spi的通信方法及spi主机、spi从机 | |
CN103746889A (zh) | 半竞争式rs-485总线多主通讯系统及其工作方法 | |
US7353300B2 (en) | Apparatus to improve the firmware efficiency for a multiframe serial interface | |
CN101146090B (zh) | 一种基于usart总线的发送接收数据的方法及其装置 | |
CN105512005B (zh) | 控制/远程节点与总线监控节点同步工作的电路及方法 | |
CN107257277A (zh) | 串行帧同步多型锁定控制方法 | |
CN107659456A (zh) | 一种基于rs485通信的数据冲突传输方法 | |
CN103577362A (zh) | 改善数据传输的方法及其相关计算机系统 | |
CN110138761A (zh) | 基于mipi协议的设备间通信方法及设备拓扑结构 | |
CN104486187B (zh) | 一种动态同步的can通讯设备和方法 | |
CN109408426A (zh) | 一种灵活通用的串行通信方法及系统 | |
CN104199799A (zh) | 基于cpld的波特率自适应方法及装置 | |
WO2023011351A1 (zh) | 基于通用串行总线供电的通信方法及相关装置 | |
US6732262B1 (en) | Method and system for controlling reset of IEEE 1394 network | |
CN113890783B (zh) | 一种数据收发系统、方法、电子设备及存储介质 | |
US20200366522A1 (en) | Communication Method And Communication Device For Multi-Machine Communication System And Multi-Machine Communication System | |
CN206993134U (zh) | 一种基于can总线收发器的通信装置 | |
CN101383819B (zh) | 异步串行数据线信息收发方法及异步串行收发器 | |
EP2726992B1 (en) | Network control model driver | |
CN101027918B (zh) | 一种在phs中实现多基站捆绑通信的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |