[发明专利]I2C总线通信控制方法、装置、系统及可读存储介质有效
申请号: | 202010589296.0 | 申请日: | 2020-06-24 |
公开(公告)号: | CN111737173B | 公开(公告)日: | 2022-03-22 |
发明(设计)人: | 林宁亚;童元满 | 申请(专利权)人: | 浪潮(北京)电子信息产业有限公司 |
主分类号: | G06F13/12 | 分类号: | G06F13/12;G06F13/42 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 徐丽 |
地址: | 100085 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | i2c 总线 通信 控制 方法 装置 系统 可读 存储 介质 | ||
本发明公开了一种I2C总线通信控制方法、装置、系统及可读存储介质,该方法包括:接收上层应用发送的I2C总线的配置信息;解析所述配置信息,得到多条轮询参数;将多条所述轮询参数写入轮询表中;控制所述I2C总线,按照所述轮询表执行对应的读写操作。该方法中,I2C总线上执行的读写操作是按照轮询表进行的,因而无需轮询访问总线状态,便可直接基于轮询表得到精准的I2C总线的通信情况;可降低拥塞风险,存在多个主器件时,也可达到单个主器件的访问效率。对于管理维护方便;若发生硬件或功能变化,仅需对轮询表进行更新即可,而无需修改程序,能够快速适应功能更新或硬件更替。
技术领域
本发明涉及通信技术领域,特别是涉及一种I2C总线通信控制方法、装置、系统及可读存储介质。
背景技术
I2C(Inter-Integrated Circuit)总线是一种两线式串行总线,用于连接微控制器及其外围设备。是微电子通信控制领域广泛采用的一种总线标准。
I2C通过串行数据(SDA)线和串行时钟(SCL)线在连接到总线的器件间传递信息。每个器件都有一个唯一的地址识别,而且都可以作为一个发送器或接收器(由器件的功能决定)。主机是初始化总线的数据传输并产生允许传输的时钟信号的器件(即主器件)。相应地,任何被寻址的器件(从器件)都被认为是从机。
在现有的I2C控制器访问方案中,提出在访问I2C控制器获取总线状态时,采用轮询方式,来解决现有I2C访问标准流程效率不高的问题。但是,在此类方案中,轮询方式需要开发人员专门设计轮询程序,每当有硬件改动,轮询程序也必须随之发生变化,而且当总线处于繁忙拥塞状态时,上层会频繁获取总线状态信息,占用系统资源,管理效率极低。也就是说,I2C访问效率低这个问题仍然没有被很好的解决。
综上所述,如何有效地提高I2C访问效率等问题,是目前本领域技术人员急需解决的技术问题。
发明内容
本发明的目的是提供一种I2C总线通信控制方法、装置、系统及可读存储介质,上层应用和底层硬件可以基于轮询表精准的得到总线的通信情况,可避免频繁获取总线通信情况,按照轮询表来控制I2C总线的通信控制,可避免出现拥塞风险,可提高多个主器件应用场景下的访问效率。
为解决上述技术问题,本发明提供如下技术方案:
一种I2C总线通信控制方法,包括:
接收上层应用发送的I2C总线的配置信息;
解析所述配置信息,得到多条轮询参数;
将多条所述轮询参数写入轮询表中;
控制所述I2C总线,按照所述轮询表执行对应的读写操作。
优选地,还包括:
接收所述上层应用发送的配置修改信息;
利用所述配置修改信息对所述轮询表进行更新。
优选地,解析所述配置信息,得到多条轮询参数,包括:
解析所述配置信息,得到各个所述读写操作分别对应的操作类型、主器件、从器件、字节数、轮询时间和优先级;
利用每一种所述读写操作对应的所述字节数和所述轮询周期,计算出所述读写操作对应的剩余时间;
将一种所述读写操作对应的所述操作类型、所述主器件、所述从器件、所述字节数、所述轮询时间、所述剩余时间和所述优先级作为一条所述轮询参数。
优选地,利用每一种所述读写操作对应的所述字节数和所述轮询周期,计算出所述读写操作对应的剩余时间,包括:
利用所述字节数以及总线频率,计算出执行一次所述读写操作的执行用时;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮(北京)电子信息产业有限公司,未经浪潮(北京)电子信息产业有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010589296.0/2.html,转载请声明来源钻瓜专利网。