i2cI2C通信的内容

i2c  时间:2021-07-30  阅读:()

I2C通信的内容

I2C的时序是比较复杂的,你如果能把I2C的时序弄清,那其他器件的时序都不成问题了。

我就按照我的理解来跟你讲吧。

直接用程序来说明吧。

NOP(),一个机器周期时间的延迟,12M晶振时为1微秒 NOPS(),4个NOP()。

sbit SDA P2^0; sbit SCL P2^1; 定义数据线和时钟线接口 首先,I2C有2个重要的线,SDA数据线SCL时钟线,当总线上没有进行信息传送时,SDA和SCL都为高电平,我们称之为释放总线。

开始传送信息时,要有一个开始信号, 开始信号 :定义为在SCL为高电平的时候,SDA从高电平拉低。

start() { SDA=1; NOP(); //同你图中 SDA/SCL上升/下降所用时间 1US SCL=1; NOPS(); //建立开始信号(同你图中TSU起始信号建立时间一样4US) SDA=0; //SDA拉低 NOPS(); SCL=0; //SCL拉低, 钳住总线,准备发送或接收数据 NOP(); } 结束信号:与开始信号相反,在SCL为高电平时,SDA从低拉高 () { SDA=0; NOP(); SCL=1; NOPS(); //建立信号时间 SDA=1; //拉高 结束。

NOPS(); } 我晕,发现写了半天还有好多。



算了 帮人帮到底了 发送/接收一个数据:数据的发送和接收都是在SCL为低电平的时候发生,因为SCL为高电平时已给了开始和结束信号。

发送数据时,当数据准备读入时,将SCL线暂时拉高(SCL为高时,SDA无法改变状态),保持一段时间然后拉低(同你图中的TDH,数据输出保持时间),这时数据则发送完毕到SDA上。

接收则与之大同小异。

当SDA线上有数据过来时,先将SCL拉高,建立好时间,然后拉低,数据则被读入。

(关于如何被发出以及如何被读入则是芯片做的事,我们不用管,只需记住SCL拉低,数据发出/读入) 用程序来讲就是: send(uchar c) //发送一个字节 { uint i; for(i=0;i

白丝云-美国圣何塞4837/德国4837大带宽/美西9929,26元/月起

官方网站:点击访问白丝云官网活动方案:一、KVM虚拟化套餐A1核心 512MB内存 10G SSD硬盘 800G流量 2560Mbps带宽159.99一年 26一月套餐B1核心 512MB内存 10G SSD硬盘 2000G流量 2560Mbps带宽299.99一年 52一月套餐...

NameCheap新注册.COM域名$5.98

随着自媒体和短视频的发展,确实对于传统的PC独立网站影响比较大的。我们可以看到云服务器商家的各种促销折扣活动,我们也看到传统域名商的轮番新注册和转入的促销,到现在这个状态已经不能说这些商家的为用户考虑,而是在不断的抢夺同行的客户。我们看到Namecheap商家新注册域名和转入活动一个接一个。如果我们有需要新注册.COM域名的,只需要5.98美元。优惠码:NEWCOM598。同时有赠送2个月免费域名...

legionbox:美国、德国和瑞士独立服务器,E5/16GB/1Gbps月流量10TB起/$69/月起

legionbox怎么样?legionbox是一家来自于澳大利亚的主机销售商,成立时间在2014年,属于比较老牌商家。主要提供VPS和独立服务器产品,数据中心包括美国洛杉矶、瑞士、德国和俄罗斯。其中VPS采用KVM和Xen架构虚拟技术,硬盘分机械硬盘和固态硬盘,系统支持Windows。当前商家有几款大硬盘的独立服务器,可选美国、德国和瑞士机房,有兴趣的可以看一下,付款方式有PAYPAL、BTC等。...

i2c为你推荐
360杀毒在线安装怎样使用360度安全卫士在线查杀病毒空间克隆器免费下载安装为什么“空间克隆器”下载不了啊??限制局域网网速怎么限制局域网的网速?发博客怎么发博客?智能机刷机软件安卓手机刷机,用什么软件最简单?bt4破解教程怎么破解无线网络密码:WPA/WPA2 PSK,最好有软件,教程,破了加分!!北漂论坛请问北票有论坛吗云图好看吗云图这部电影好看吗云图好看吗电影云图好看吗?无法清除dns缓存急求无法清除DNS缓存怎么解决要有效的!
美国vps服务器 大连虚拟主机 深圳主机租用 国际域名抢注 VPS之家 域名停靠一青草视频 免备案空间 免费cdn加速 宕机监控 网通代理服务器 嘉洲服务器 智能骨干网 福建天翼加速 全站静态化 个人域名 网络空间租赁 umax120 Updog 789电视剧 net空间 更多