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

基于Linux的SPI通信方法及系统 

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

申请/专利权人:重庆长安科技有限责任公司

摘要:本发明提供一种基于Linux的SPI通信方法,通过定义SPI设备的优先级,并在内核中创建多个优先级的虚拟SPI总线控制器驱动,对高优先级的SPI设备发送的消息可添加至高优先级的虚拟SPI总线控制器驱动的消息队列中,内核中预先创建的消息处理线程可优先将高优先级的虚拟SPI总线控制器驱动的消息队列中的消息发送至SPI总线控制器驱动,然后通过SPI总线将消息发送至对应的SPI设备。本发明还提供一种基于Linux的SPI通信系统。本发明实现了较高优先级的SPI设备总是比较低优先级的SPI设备优先进行通信,避免了较高优先级的设备因等待较长时间而无法及时收发SPI消息,进而影响SPI通信效率的问题。

主权项:1.一种基于Linux的SPI通信方法,用于在Linux主机端和外设端之间进行SPI通信,所述Linux主机端配置有Linux系统,所述外设端包括多个SPI设备,多个所述SPI设备均通过物理SPI总线与所述Linux主机端连接并进行数据传输,所述Linux系统配置有用于管理所述物理SPI总线的SPI总线控制器,所述Linux系统的内核中创建有SPI设备驱动和SPI总线控制器驱动,其特征在于,该SPI通信方法包括以下步骤:将多个所述SPI设备按照优先级分配为第一数量的设备组,同一个所述设备组中的SPI设备具有相同的优先级;在内核中创建第一数量的虚拟SPI总线控制器驱动;对所述虚拟SPI总线控制器驱动进行初始化,每个所述虚拟SPI总线控制器驱动注册生成虚拟SPI总线并创建对应的消息队列;所述虚拟SPI总线控制器驱动的设备树获得所述物理SPI总线的总线号,以使所述虚拟SPI总线获得所述物理SPI总线的总线号,同时所述虚拟SPI总线控制器驱动的设备树获得代表对应的设备组的优先级的优先级编号,以将所述设备组的优先级分配给对应的虚拟SPI总线控制器驱动;进行设备驱动初始化,将第一数量的所述设备组分别挂载在第一数量的所述虚拟SPI总线上;在内核中创建消息处理线程;对挂载在所述虚拟SPI总线上的SPI设备发起SPI传输;调用与所述虚拟SPI总线对应的虚拟SPI总线控制器驱动的transfer函数,将待传输的数据添加到该虚拟SPI总线控制器驱动的消息队列中,同时唤醒所述消息处理线程;所述消息处理线程按照优先级由高到底依次将第一数量的所述虚拟SPI总线控制器驱动的消息队列中的消息发送至所述SPI总线控制器驱动;所述SPI总线控制器驱动通过所述物理SPI总线将所述消息发送至对应的SPI设备。

全文数据:

权利要求:

百度查询: 重庆长安科技有限责任公司 基于Linux的SPI通信方法及系统

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