【技术实现步骤摘要】
—种减少MCU中断占用I2C总线时间的方法
本专利技术涉及I2C硬件数据读取过程,尤其涉及一种减少MCU中断占用I2C总线时间的方法。
技术介绍
I2C总线以其简单的物理构架在现今的通讯过程中广泛应用,尤其是具有硬件I2C接口 MCU的应用更为广泛,在I2C数据的读取过程中,I2C从机的读取响应速度直接影响到该设备的I2C兼容性。从机MCU接收到I2C主机的读取命令后,首先进入I2C中断,拉低SCL将I2C总线占用,然后反馈ACK给主机,之后进行待发送数据的处理计算,当计算成功后从机MCU将待发送的数据写入I2C发送寄存器并释放SCL释放I2C总线,完成此处中断操作。由于从机MCU数据处理计算量的不确定性,导致该I2C中断处理时间的不确定,这样也就导致了从机占用I2C总线时间的不确定性。此种处理方法如果I2C主机端不具有SCL等待功能,若此时从机I2C中断处理数据时间过长造成从机占用I2C总线时间过长,就会造成主机读取I2C数据的异常。
技术实现思路
本专利技术的目的在于提供一种减少MCU中断占用I2C总线时间的方法,解决了目前I2C从机的读取时中断处理时间的不确定,造成从机占用I2C总线时间不确定的问题。为解决上述问题,本专利技术所采取的技术方案是:一种减少MCU中断占用I2C总线时问的方法,包括以下步骤:步骤一,当从机MCU接收到主机端写入的I2C读取数据起始地址后,从机反馈ACK然后释放SCL释放I2C总线,然后准备待发送的数据并缓存;步骤二,当从机MCU接收到主机读取I2C数据命令后,从机反馈ACK并将步骤一中准备待发送的数据写入到I2C数 ...
【技术保护点】
一种减少MCU中断占用I2C总线时间的方法,其特征在于包括以下步骤:步骤一,当从机MCU接收到主机端写入的I2C读取数据起始地址后,从机反馈ACK然后释放SCL释放I2C总线,然后准备待发送的数据并缓存;步骤二,当从机MCU接收到主机读取I2C数据命令后,从机反馈ACK并将步骤一中准备待发送的数据写入到I2C数掘寄存器然后释放SCL释放I2C总线,进行下一个待发送的数据的处理准备工作;步骤三,主机收到数据后反馈ACK给从机,从机MCU收到ACK后进入中断将步骤二中待发送的数据写入到I2C数据寄存器并释放SCL释放I2C总线,然后进行下一个待发送的数据的处理准备工作,以此类推直至主机结束此次I2C读取过程。
【技术特征摘要】
1.一种减少MCU中断占用I2C总线时间的方法,其特征在于包括以下步骤: 步骤一,当从机MCU接收到主机端写入的I2C读取数据起始地址后,从机反馈ACK然后释放SCL释放I2C总线,然后准备待发送的数据并缓存; 步骤二,当从机MCU接收到主机读取I2C数据命令后,从机反馈ACK并将步骤一中准备待发送的数据写入...
【专利技术属性】
技术研发人员:李耀威,许建锐,罗建刚,郭继伟,王彦伟,
申请(专利权)人:深圳市共进电子股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。