PCF8591的I2C是如何驱动的

2019-07-16 05:02发布

void Start_I2c()
{
  SDA=1;         /*发送起始条件的数据信号*/
  _Nop();
  SCL=1;
  _Nop();        /*起始条件建立时间大于4.7us,延时*/
  _Nop();
  _Nop();
  _Nop();
  _Nop();   
  SDA=0;         /*发送起始信号*/
  _Nop();        /* 起始条件锁定时间大于4μs*/
  _Nop();
  _Nop();
  _Nop();
  _Nop();      
  SCL=0;       /*钳住I2C总线,准备发送或接收数据 */
  _Nop();
  _Nop();
}
_Nop()在这里的作用是延时吗?为什么不用delay延时?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
12条回答
lvyijie421
1楼-- · 2019-07-16 09:56
 精彩回答 2  元偷偷看……
lvyijie421
2楼-- · 2019-07-16 13:56
还有个问题,就是在用PCF8591编程时,要先驱动I2C,给I2C编完程序后,在AD编程时就可以直接调用I2C里的子程序吗?为什么是分两个工程编程,可以在一个工程中完成吗?
oyl
3楼-- · 2019-07-16 18:12
lvyijie421
4楼-- · 2019-07-16 19:18
帮忙回答一下吧,小弟正在学单片机,有些东西真的不是很明白啊。
jy02326166
5楼-- · 2019-07-16 23:09
用写和读吧
lvyijie421
6楼-- · 2019-07-17 00:54
 精彩回答 2  元偷偷看……

一周热门 更多>