买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】一种使用ARM处理器串口进行实时通讯的方法_北京自动化控制设备研究所_202010966993.3 

申请/专利权人:北京自动化控制设备研究所

申请日:2020-09-15

公开(公告)日:2024-04-02

公开(公告)号:CN112131153B

主分类号:G06F13/28

分类号:G06F13/28;G06F13/42

优先权:

专利状态码:有效-授权

法律状态:2024.04.02#授权;2021.01.12#实质审查的生效;2020.12.25#公开

摘要:本发明公开一种使用ARM处理器串口进行实时通讯的方法,采用DMA和串口空闲中断相结合的方法实现串口数据的发送和接收,DMA保证将数据的接收和发送转入后台操作,不占用主处理器的时间;在与接收DMA缓存交换数据时需将CACHE使能关闭,保证数据交换的可靠性;发送和接收数据的DAM通道完全独立,互不影响,保证串口的全双工通讯和数据的实时性;利用空闲中断方式,可以实现整包数据接收,在串口通讯线上完成一包数据发送后再进入中断程序进行数据接收,减少进入接收中断的次数,提高程序运行效率;此方法节省发送和接收数据占用主处理器的时间,可以缩短导航周期,提高微惯导系统的精度。

主权项:1.一种使用ARM处理器串口进行实时通讯的方法,其特征在于,包括:串口数据的接收,采用ARM处理器的串口空闲中断方式,硬件在检测到串行通讯线上连续发送的数据包中有一段空闲时间后触发空闲中断,数据存储在接收DMA缓存中;串口数据的发送,采用主动周期性发送方式,软件将要发送的串口数据及数据长度放入相应的存储器中,并启动串口DMA发送,DMA会自动连续进行发送,完成发送后置位相应的标志或者触发发送中断;在数据的接收、发送之前,首先进行初始化,步骤如下:串口物理层链路的初始化,设置波特率、模式、字长和采样率;使能串口CR3中DMA发送和DMA接收位;使能CR1寄存器中的空闲中断位,设置串口中断入口和中断优先级分组;串口接收DMA初始化,首先进行DMA通道设置,设置串口DMA接收通道,将串口的外设地址赋值给DMA流,指定DMA存储器的起始地址,设置DMA要接收的数据流长度,将DMA的CR寄存器清零,DMA操作方式设置为外设流控制,外设串口设置为非增量模式,存储器设置为增量模式,根据串口协议设置数据位长度,传输方式设置为单次突发传输,选择要设置的通道号;串口发送DMA初始化,首先进行DMA通道设置,设置串口DMA发送通道,将串口的外设地址赋值给DMA流,指定DMA存储器的起始地址,设置DMA要发送的数据长度;将DMA的CR寄存器清零,DMA操作方式设置为存储器控制,外设串口设置为非增量模式,存储器设置为增量模式,根据串口协议设置数据位长度,传输方式应设置为单次突发传输;根据需要设置的串口发送对应的通道号;所述串口数据的接收步骤具体包括:空闲中断为通讯线出现大于一个字节长度的空闲传输时,触发中断,硬件检测到串口中断进入到中断服务流程中后,首先读取串口中断状态寄存器,判断是否为空闲中断位触发的中断,如果为否则清除中断状态寄存器后退出中断服务流程;如果为是则关闭DMA接收,关闭串口DMA接收,读取DMA数据长度寄存器,清除DMA接收标志,按照读取到的数据长度将数据从DMA缓存中取出;在读取之前,关闭CACHE,按照接收数据长度读取完成后,再使能CACHE。

全文数据:

权利要求:

百度查询: 北京自动化控制设备研究所 一种使用ARM处理器串口进行实时通讯的方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。