资源简介
24C08驱动程
代码片段和文件信息
//I2C总线与2404芯片实验主要时序程序
/*本程序以P3.7位sda,以P3.6为scl,所用芯片为AT2404*/
#include
#include
#define uchar unsigned char
#define uint unsigned int
void delay1ms(uint k); //延时程序.........1
void delay5us(void);//.....................2
void Start(void); //启动程序.........3
void Stop(void); //停止程序..............4
void Ack(void); //应答信号程序..........5
void Send(uchar Data);//发送字节程序.......6
uchar Read(void); //读取1字节程序..........7
void WriteToRom(uchar Data[]uchar Adduchar Num);//把Data[]Num个数发送到以Add为起始地址中...8
void ReadFromRom(uchar Data[]uchar Adduchar Num);//读以Add为起始地址的Num个数读取到数组Data[]中..9
sbit sda=P3^7;
sbit scl=P3^6;
/////////
void main()
{ uint i;
uchar a[8]={0xfe0xfd0xfb0xf70xef0xdf0xbf0x7f};
//uchar a[8]={0x110x220x330x440x550x660x770x88};
uchar b[]={00000000};
WriteToRom(a08);//写入数据
delay1ms(100);//必须加延时
ReadFromRom(b08);//读出
while(1)
{for(i=0;i<8;i++){P0=b[i];
delay1ms(400);
}
}
}
//////////////
void delay1ms(uint k) //延时程序
{k=k*125;
while(--k);
}
///////////////
void delay5us(void)//5us延时
{_nop_();_nop_();
_nop_();_nop_();
}
////////////////
void Start(void)//启动程序
{sda=1;
scl=1;delay5us();//1到0
sda=0;delay5us();
scl=0;
}
v
- 上一篇:尚硅谷最新大数据培训视频
- 下一篇:stdint.h
评论
共有 条评论