单片机 > 单片机程序设计 > 详情

51单片机IIC通信底层程序

发布时间:2024-10-14 发布时间:
|

#include"IIC.H"

#include

unsigned char ask;

void delay()

{

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

_nop_();

}

void IICinit()

{

SDA=1;

delay();

SCL=1;

delay();

SDA=0;

delay();

SCL=0;

}

void IICstart()

{

SDA=1;

delay();

SCL=1;

delay();

SDA=0;

delay();

SCL=0;

}

void IICrespons()

{

unsigned char i=0;

SCL=1;

delay();

while((SDA==1)&&(i<255))

i++;

SCL=0;

delay();

}

void IICstop()

{

SDA=0;

delay();

SCL=1;

delay();

SDA=1;

delay();

SCL=0;

}

void IICwritebyte(unsigned char date)

{

unsigned char i,temp;

temp=date;

for(i=0;i<8;i++)

{

temp=temp<<1;

SCL=0;

delay();

SDA=CY;

delay();

SCL=1;

delay();

}

SCL=0;

delay();

SDA=1;

delay();

}

unsigned char IICreadbyte()

{

unsigned char i,k;

SCL=0;

delay();

SDA=1;

for(i=0;i<8;i++)

{

SCL=1;

delay();

k=(k<<1)|SDA;

SCL=0;

delay();

}

delay();

return k;

}



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
MSP430低功耗模式-while循环失效