【技术实现步骤摘要】
基于中断和缓冲区的SPI数据传输方法、系统和控制器
[0001]本申请涉及数据传输
,具体涉及一种基于中断和缓冲区的SPI数据传输方法、基于中断和缓冲区的SPI数据传输系统、控制器及计算机存储介质。
技术介绍
[0002]现有技术中,在通过SPI进行数据传输的时候,一般会有阻塞传输,中断传输及DMA传输3种方式,对于后两种传输一般是利用系统SPI硬件自带的缓冲区加快数据传输的效率,当涉及大数据量的SPI传输时,为了兼顾系统的实时性,一般都采用后两种传输方式;
[0003]然而,当在一个没有DMA及SPI硬件不带缓存的MCU中,对于大数据量的传输一般都是采取阻塞的方式进行,当传输数据量较大时会影响系统数据传输的实时性,使得没有DMA及SPI硬件不带缓存的MCU无法有效的进行数据传输,影响用户的使用体验。
技术实现思路
[0004]本申请实施例提供一种基于中断和缓冲区的SPI数据传输方法、基于中断和缓冲区的SPI数据传输系统、控制器及计算机存储介质,至少能保证,本申请方案通过根据传输数据启动SPI传 ...
【技术保护点】
【技术特征摘要】
1.一种基于中断和缓冲区的SPI数据传输方法,所述SPI数据传输方法应用于SPI数据传输系统,其特征在于,所述SPI数据传输系统设置于无DMA和/或硬件SPI无缓存区的MCU控制器中,所述SPI数据传输方法包括:根据传输数据启动SPI传输,并获取所述传输数据的数据地址和数据量;根据所述数据地址和所述数据量生成缓冲区的传输状态参数,所述传输状态参数包括数据传输地址、传输数据总量、已传输数据量和传输完成标志;根据所述数据传输地址和所述已传输数据量,将所述传输数据中的目标数据储存至SPI的传输寄存器,对所述目标数据进行SPI传输,并进行SPI的硬件中断;根据所述传输数据总量和所述已传输数据量更新所述传输完成标志;根据所述传输完成标志关闭SPI的硬件中断,以停止SPI传输。2.根据权利要求1所述的基于中断和缓冲区的SPI数据传输方法,其特征在于,所述根据所述数据地址和所述数据量生成缓冲区的传输状态参数,包括:将所述数据传输地址确定为所述数据地址;将所述传输数据总量确定为所述数据量;将已传输数据量和传输完成标志确定为0。3.根据权利要求2所述的基于中断和缓冲区的SPI数据传输方法,其特征在于,所述根据所述数据传输地址和所述已传输数据量,将所述传输数据中的目标数据储存至SPI的传输寄存器,包括:根据所述数据传输地址和所述已传输数据量确定目标数据地址;根据所述目标数据地址得到所述传输数据中的目标数据;将所述传输数据中的目标数据储存至SPI的传输寄存器,并更新所述已传输数据量。4.根据权利要求3所述的基于中断和缓冲区的SPI数据传输方法,其特征在于,所述目标数据的大小为1字节,所述根据所述数据传输地址和所述已传输数据量,将所述传输数据中的目标数据储存至SPI的传输寄存器,对所述目标数据进行SPI传输,并进行SPI的硬件中断,包括:根据所述数据传输地址和所述已传输数据量,将所述传输数据中的目标数据储存至SPI的传输寄存器,对所述目标数据进行SPI传输;在根据所述目标数据进行SPI传输,并传输完成1字节后,进行SPI的硬件中断。5.根据权利要求4所述的基于中断和缓冲区的SPI数据传输方法,其特征在于,在根据所述目标数据进行SPI传输,并传输完成1字节后,进行SPI的硬件中断...
【专利技术属性】
技术研发人员:贺竹玉,
申请(专利权)人:东信和平科技股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。