600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > IIC的驱动程序 – CSS – 前端 css样式float属性

IIC的驱动程序 – CSS – 前端 css样式float属性

时间:2018-12-22 08:00:03

相关推荐

IIC的驱动程序 – CSS – 前端 css样式float属性

SPI和IIC都是比较常用的短距离通讯方式,主要用在PCB板间或者芯片之间实现近距离通信。比如AT24C02就是通过IIC和单片机实现数据通信的,BMP280即可以通过IIC又可以通过SPI和单片机进行数据通信。

这两种通信方式都有着各自的时序图,在编程时需要认真研究时序图,根据时序图编写程序,下面举例子。

SPI通讯时序介绍

SPI是比较高速的通讯方式,具有三线制和四线制之分,四线制有CS,SCK,MISO,MOSI等。SPI具有四种工作模式,并且时钟极性CPOL和时钟相位CPHA可以配置,这个在编程序时需要注意:如果CPOL=0,则空闲状态为低电平;如果CPOL=1,则空闲状态为高电平。CPHA决定着在哪个边沿进行数据采集。如果 CPHA=0,则在第一个跳变沿进行数据采样;如果CPHA=1,则在第二个跳变沿进行数据采样。

对于具体程序代码的编写,可以根据时序图慢慢研究,或者参考别人的代码和时序图进行对比。

IIC通讯时序介绍

IIC只有两根线,分别为SCL和SDA。主从式结构,一个主机可以接多个主机,典型的拓扑结构图如下所示。

IIC在通讯时,需要需要有三个过程/信号:开始信号、应答信号和结束信号。每种信号都有严格的时序要求。以起始和结束为例介绍一下,时序图如下所示。

在SCL为高电平期间,如果SDA出现下降沿则为起始信号;如果SCL为高电平期间,SDA为上升沿,则为结束信号。在编程时就要依据这个时序图。IIC可以使用普通GPIO口模拟,也可以使用单片机的片上资源,开始信号的实现代码如下所示。

程序的实现没法细细解释,只能自己去编代码,可以自己对着时序图去编写,也可以从网上参考代码。

如果有具体的问题可以再次在悟空提问。

以上就是这个问题的回答,感谢留言、评论、转发。更多电子设计、硬件设计、单片机等内容请关注本头条号:玩转嵌入式。感谢大家。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。