完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
SDA和SCL是IIC/I2C中用到的两个线,一根是数据线,一根是时钟线。SPI也是一种通讯方式,一般为三线或者四线制。IIC和SPI都是非常常用的近距离通讯总线,一般芯片的通讯接口以IIC和SPI居多,例如ADS1115系列采样芯片的通讯总线就是IIC;而气压传感器BMP280则是IIC和SPI可选的,这两种通讯接口都是用在芯片之间近距离通讯的,并且相互独立,不能共用。
但是,这两种通讯方式有比较特别,都是可以通过单片机的GPIO口来模拟实现的。题目中的芯片是IIC的,所以,如果单片机没有硬件IIC的片上资源的话,可以使用GPIO口来模拟实现IIC,只要单片机的引脚能配置为输入/输出就可以当作IIC来用,哪怕是该引脚具有SPI功能。 所以,单片机的普通GPIO如何来实现IIC功能了,不需要考虑SPI了。IIC具有数据线SDA和时钟线SCL等两根线。其中SCL是作为输出引脚使用的,所以将单片机的SCL配置为输出功能;而SDA既能输出又能输入,所以需要根据IIC的时需配置为输入或者输出功能。 IIC通讯在编程的时候需要参考器件的时序图,时序图是编程的基础。比如,IIC通讯中需要用到起始信号和终止信号。通过查看时许可以发现,起始信号时需要将SCL时钟线拉高,SDA数据线为下降沿;而终止信号中SCL是高电平,而SDA是上升沿。所以,用单片机的GPIO口来模拟这个过程即可。起始信号的C程序如下图所示。 如果芯片的通讯接口为IIC,就要设计IIC电路和单片机进行通讯;如果芯片的通讯接口为SPI就要设计SPI电路和单片机进行通讯。IIC和SPI都是可以通过普通的IO口来实现的,不一定需要单片机具有该两种硬件片上资源。 |
|
相关推荐
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
4947 浏览 1 评论
【⌈嵌入式机电一体化系统设计与实现⌋阅读体验】+《智能化技术在船舶维护中的应用探索》
2726 浏览 0 评论
2544 浏览 0 评论
2259 浏览 0 评论
1672 浏览 0 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-16 21:27 , Processed in 0.484759 second(s), Total 39, Slave 32 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号