📄 8583.c
字号:
#include<reg51.h>
#include<intrins.h>
#define nop4() _nop_();_nop_();_nop_();_nop_();
#define nop5() _nop_();_nop_();_nop_();_nop_();_nop_();
#define rAdd 0xa1
#define wAdd 0xa0
typedef unsigned char uchar;
sbit VSCL = P3^6;
sbit VSDA = P3^7;
sbit p10 = P1^0;
void StartIIC()
{
VSDA = 1;//hi
VSCL = 1;
nop4();
VSDA = 0;//low
nop4();
VSCL = 0;
}
void StopIIC()
{
VSDA = 0;
VSCL = 1;
nop4();
VSDA = 1;
nop5();
VSDA = 0;
VSCL = 0;
}
void CheckAckIIC()
{
VSDA = 0;//prepare to read
VSCL = 1;//
nop4();
VSCL = 0;
}
void SendByteIIC(char schar)
{
unsigned char data i;
for(i = 8;i!=0;--i)
{
schar = schar<<1;
VSDA = CY;
VSCL = 1;
nop4();
VSCL = 0;
VSDA = 0;
}
}
void WriteByteEE(uchar addr,uchar wChar)
{
StartIIC();
SendByteIIC(wAdd);
CheckAckIIC();
SendByteIIC(addr);
CheckAckIIC();
SendByteIIC(wChar);
CheckAckIIC();
StopIIC();
}
void INT() interrupt 2{
WriteByteEE(7,0x95);
p10 = ~p10;
WriteByteEE(0,0x04);
}
void main(){
IT1 = 1;
EA = 1;
EX1 = 1;
WriteByteEE(8,0x0A);//默认是天记数, A是秒记数,9是百分之一秒记数;
WriteByteEE(7,0x95);
WriteByteEE(0,0x04);
while(1);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -