当前位置: 首页 > 专利查询>兰州大学专利>正文

基于SPI总线的数据通信方法及系统技术方案

技术编号:38751419 阅读:19 留言:0更新日期:2023-09-09 11:18
本申请公开了基于SPI总线的数据通信方法及系统,包括:获取SPI总线的主机的信号,差分信号将主机的第一周期数据信号和第一周期时钟信号分开,先行传输第一周期时钟信号;匹配与主机对应模式的从机,从机对接收到信号解码,得到第一周期时钟信号后给出第一周期应答信号;主机等待接收匹配的从机的第一周期应答信号,接收到第一周期应答信号后传输第一周期数据信号,得到写入数据;从机在发送应答数据后,对接收到的数据解码,得到写入数据,存储在寄存器中,记为接收数据;主机发送第二周期时钟信号,同时读取第一周期从机的接收数据,得到读取数据,对比写入数据和读取数据,不一致时立刻调整为停止模式。本申请提高了数据通信的准确性和便捷性。的准确性和便捷性。的准确性和便捷性。

【技术实现步骤摘要】
基于SPI总线的数据通信方法及系统


[0001]本申请涉及数据通信的
,尤其是涉及基于SPI总线的数据通信方法及系统。

技术介绍

[0002]SPI是串行外设接口总线,最早由Motorola首先提出的全双工三线同步串行外围接口,采用主从模式(Master—Slave)架构,支持一个或多个Slave设备。具有高速、全双工、同步的传输优点,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,被广泛运用于数据通信中。
[0003]相关技术中,SPI总线传输技术具有简单的软件配置、灵活的数据传输等优点,但是也具有无法应答的缺点。从机无法在接收数据时对主机做出应答,会导致主机无法知道从机是否接收到数据,或者导致主机后续操作出现错误,最终造成数据通信的不准确,存在改进之处。
[0004]为此我们提出基于SPI总线的数据通信方法及系统用于解决上述问题。

技术实现思路

[0005]本专利技术的目的在于提供基于SPI总线的数据通信方法及系统,以解决上述
技术介绍
中提出的问题。
[0006]第一方面,本申请提供的基于SPI总线的数据通信方法,采用如下的技术方案:
[0007]获取SPI总线的主机的信号,利用差分信号将主机的第一周期数据信号和第一周期时钟信号分开,先行传输第一周期时钟信号;
[0008]基于所述第一周期时钟信号,匹配与主机对应模式的从机,从机对接收到信号解码,得到所述第一周期时钟信号后给出第一周期应答信号;
[0009]主机等待接收匹配的从机的所述第一周期应答信号,接收到所述第一周期应答信号后开始传输所述第一周期数据信号,得到写入数据;
[0010]基于所述写入数据,从机在发送所述应答数据后,对接收到的数据解码,得到所述写入数据,存储在寄存器中,记为接收数据;
[0011]基于所述接收数据,主机发送第二周期时钟信号,同时读取第一周期从机的所述接收数据,得到读取数据,对比所述写入数据和所述读取数据,不一致时立刻调整为停止模式。
[0012]通过采用上述技术方案,在确认从机接收到主机发送的信号后,发送应答信号,再进行数据通信。一方面解决了SPI总线无应答的缺陷,另一方面,确认从机接收后再传输数据,节省了错误传输的能量,以及减少了数据泄露的情况发生。提高了基于SPI总线的数据通信的准确性和便捷性。
[0013]优选的,所述获取SPI总线的主机的信号,利用差分信号将主机的第一周期数据信号和第一周期时钟信号分开,先行发送第一周期时钟信号的步骤,具体包括以下步骤:
[0014]获取SPI总线主机的信号,利用差分信号区分数据信号和时钟信号,主机将第一周期时钟信号CLK拉低,此时主机开始发送信号;
[0015]通过设置滤波器的频段,拦截第一周期数据信号,只发送所述第一周期时钟信号;
[0016]所述第一周期时钟信号经过差分编码后,与原始第一周期时钟信号并不相同,解码后才一致。
[0017]通过采用上述技术方案,将时钟信号和数据信号区分开来,可以实现时钟信号和数据信号不同时传输的效果。通过时钟信号确认从机是否接收,减少了数据错误传输的情况,降低了时钟信号和数据信号同时传输的弊端。提高了基于SPI总线的数据通信的实用性和安全性。
[0018]优选的,所述基于所述第一周期时钟信号,匹配与主机对应模式的从机,从机对接收到信号解码,得到所述第一周期时钟信号后给出第一周期应答信号的步骤,具体包括以下步骤:
[0019]获取主机的当下模式和所有从机的模式,对所有从机进行标号,通过主机的当下模式,匹配到与主机当下模式一致的从机,得到从机标号;
[0020]根据所述从机标号,检测对应标号的从机是否接收到信号,接收到信号则利用差分分析器对信号进行解码,得到解码信号;
[0021]根据所述解码信号,设置触发器的数值,在接收到所述时钟信号后输出所述第一周期应答信号。
[0022]通过采用上述技术方案,主机与从机只有在同一模式下才可以进行数据的传输,首先匹配到对应的从机,从机接收到经过查分的信号后,需要进行解码得到原始信号。接收到时钟信号后,从机对主机应答,表示收到信号。解决了SPI总线传输无法应答的弊端,提高了基于SPI总线的数据通信的实用性和适用范围。
[0023]优选的,所述根据所述从机标号,检测对应标号的从机是否接收到信号,接收到信号则利用差分分析器对信号进行解码,得到解码信号的步骤,还包括以下步骤:
[0024]通过模拟/数字转换器对所述解码信号多次采样,并且采取滤波方式对信号进行处理,更新所述解码信号。
[0025]通过上述技术方案,数据通信中常常存在大量的干扰信号,导致数据传输的不稳定性,还会导致传输的数据出错、丢失等错误。通过采样、滤波后得到的信号更加稳定、准确。提高了基于SPI总线的数据通信的稳定性和抗干扰性,提高了通信过程中数据的可靠性。
[0026]优选的,所述根据所述解码信号,设置触发器的数值,在接收到所述时钟信号后输出所述第一周期应答信号的步骤,还包括以下步骤:
[0027]在任何数据通信周期内,所述触发器在接收到所述解码信号并输出应答信号后,触发器将自动重置,一直循环。
[0028]通过采用上述技术方案,数据通信中数据的传输是一个周期一个周期进行的,而通过每个周期都在收到应答后再进行数据的传输,可以减少中途断开连接,但是主机仍然传输数据的事故发生。同时,也减少了数据泄露的情况。提高了基于SPI总线的数据通信的安全性和智能性。
[0029]优选的,所述主机等待接收匹配的从机的所述第一周期应答信号,接收到所述第
一周期应答信号后开始发送所述第一周期数据信号,得到写入数据的步骤,具体包括以下步骤:
[0030]根据所述从机标号,得到从机的片选信号SS的引脚信息,检测引脚是否接收到所述第一周期应答信号;
[0031]若在第一周期时间内未接收到所述第一周期应答信号,则不发送所述数据信号;
[0032]若在第一周期时间内,所述滤波器接收到所述第一周期应答信号,则调整滤波频段至其余频段,不再拦截所述第一周期数据信号,发送所述第一周期数据信号,得到所述写入数据;
[0033]将第一周期时钟信号CLK拉高,第一周期结束,第一周期数据传输完成。
[0034]通过采用上述技术方案,不同的从机具有其独特的片选信号,一个主机通常会连接多个从机,确认与主机同模式的从机引脚,确认应答信号的来源,可以减少发送错误的事件发生。减少了多从机造成的混乱,降低了基于SPI总线的数据通信的错误率,提高了数据通信的准确性。
[0035]优选的,所述基于所述接收数据,主机发送第二周期时钟信号,同时读取第一周期从机的所述接收数据,得到读取数据,对比所述写入数据和所述读取数据,不一致时立刻调整为停止模式的步骤,具体包括以下步骤:
[0036]第一周期结束,开启第二周期时,主机发送第二周期时钟信号,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于SPI总线的数据通信方法,其特征在于,具体包括以下步骤:获取SPI总线的主机的信号,利用差分信号将主机的第一周期数据信号和第一周期时钟信号分开,先行传输第一周期时钟信号;基于所述第一周期时钟信号,匹配与主机对应模式的从机,从机对接收到信号解码,得到所述第一周期时钟信号后给出第一周期应答信号;主机等待接收匹配的从机的所述第一周期应答信号,接收到所述第一周期应答信号后开始传输所述第一周期数据信号,得到写入数据;基于所述写入数据,从机在发送所述应答数据后,对接收到的数据解码,得到所述写入数据,存储在寄存器中,记为接收数据;基于所述接收数据,主机发送第二周期时钟信号,同时读取第一周期从机的所述接收数据,得到读取数据,对比所述写入数据和所述读取数据,不一致时立刻调整为停止模式。2.根据权利要求1所述的基于SPI总线的数据通信方法,其特征在于,所述获取SPI总线的主机的信号,利用差分信号将主机的第一周期数据信号和第一周期时钟信号分开,先行传输第一周期时钟信号的步骤,具体包括以下步骤:获取SPI总线主机的信号,利用差分信号区分数据信号和时钟信号,主机将第一周期时钟信号CLK拉低,此时主机开始发送信号;通过设置滤波器的频段,拦截第一周期数据信号,只传输所述第一周期时钟信号;所述第一周期时钟信号经过差分编码后,与原始第一周期时钟信号并不相同,解码后才一致。3.根据权利要求1所述的基于SPI总线的数据通信方法,其特征在于,所述基于所述第一周期时钟信号,匹配与主机对应模式的从机,从机对接收到信号解码,得到所述第一周期时钟信号后给出第一周期应答信号的步骤,具体包括以下步骤:获取主机的当下模式和所有从机的模式,对所有从机进行标号,通过主机的当下模式,匹配到与主机当下模式一致的从机,得到从机标号;根据所述从机标号,检测对应标号的从机是否接收到信号,接收到信号则利用差分分析器对信号进行解码,得到解码信号;根据所述解码信号,设置触发器的数值,在接收到所述时钟信号后输出所述第一周期应答信号。4.根据权利要求3所述的基于SPI总线的数据通信方法,其特征在于,所述根据所述从机标号,检测对应标号的从机是否接收到信号,接收到信号则利用差分分析器对信号进行解码,得到解码信号的步骤,还包括以下步骤:通过模拟/数字转换器对所述解码信号多次采样,并且采取滤波方式对信号进行处理,更新所述解码信号。5.根据权利要求3所述的基于SPI总线的数据通信方法,其特征在于,所述根据所述解码信号,设置触发器的数值,在接收到所述时钟信号后输出所述第一周期应答信号的步骤,还包括以下步骤:在任何数据通信周期内,所述触发器在接收到所述解码信号并输出应答信号后,触发器将自动重置,一直循环。6.根据权利要求2所述的基于SPI总线的数据通信方法,其特征在于,所...

【专利技术属性】
技术研发人员:栗军帅曹得慧
申请(专利权)人:兰州大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1