📄 10.1.c
字号:
#include <reg51.h>
//P1.2 SCL
//P1.3 SDA
sbit SDA=P1^3; //SDA
sbit SCL=P1^2; //SCL
//#define DIR_IN P3DIR &=~ BIT3; SDA_1 //I/O口为输入
//#define DIR_OUT P3DIR |= BIT3 //I/0口为输出
//#define SDA_IN ((P3IN >> 3) & 0x01) //Read SDA
unsigned char SystemError;
unsigned char errtime;
int i;
void SomeNOP();
void main()
{
EA=0;
SDA=0;
SCL=1;
SomeNOP(); //初始化
SDA=0;
SomeNOP(); //开始
SCL=0;
SCL=0; SDA=0; SomeNOP(); //开始
SCL=1; SomeNOP(); SDA=1; //停止
EA=1;
errtime=255; //因故障接收方无ACK,超时值为255。
SDA=1;
SCL=1;
while(1)
{
errtime--;
}
SCL=0;
//写数据
SDA=1;
SomeNOP();
SCL=1;
SomeNOP();
SCL=0;
i=8;
while (i--)
{
SCL=0;
SomeNOP();
SomeNOP();
SCL=1;
SomeNOP();
}
SCL=0;
}
void SomeNOP()
{
for(i=0;i<255;i++)
{
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -