1. IMX6ULL的 I2C频率标准模式 100kbit/S,快速模式为 400Kbit/S
2. 时钟源选择 perclk_clk_root=ipg_clk_root=66MHz(由之前的时钟实验章节可以知道是 66MHz)。
I2Cx_IFDR寄存器:分频寄存器。
I2Cx_IFDR寄存器设置 I2C频率,bit5:0位是设置频分值。
假如,我们现在需要 100kbit 的速率,那么,/=660。可以通过查找与 660接近的数值,经过查找IC位设置位 0X38或 0X15时,为 640分频,/640=103.125Kbit。
分频值与寄存器所设置的值对应表,如下所示(在《IMX6ULL参考手册》中的 I2C章节):
bit7 为I2C使能位,置1使能I2C。
bit5 为主从模式选择位,为0表示从机,为1表示主机。
Bit4 为发送/接收设置位,为0的时候是接收,为1的时候是发送。
I2SR寄存器:
bit7:传输完成位,为 0 表示正在发送,为 1 表示发送完成。
Bit5:I2C忙闲位,为0表示 I2C总线空闲,为 1表示 I2C总线忙。
Bit0:是读确认位,也就是ACK信号
I2DR寄存器: 数据寄存器。
yu
到此这篇imx6ull芯片介绍(imx6ull i2c)的文章就介绍到这了,更多相关内容请继续浏览下面的相关 推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/bcyy/25937.html