模具钢厂家
免费服务热线

Free service

hotline

010-00000000
模具钢厂家
热门搜索:
技术资讯
当前位置:首页 > 技术资讯

HOLTEK主I2C的源程序代码

发布时间:2020-06-30 17:46:59 阅读: 来源:模具钢厂家

HOLTEK 主I2C的源程序代码

本文引用地址:调用的代码 case C_READ+C_I2C: return_buf[2] = comm_buf[4]; // read(comm_buf[3],comm_buf[4],return_buf[3]); break; case C_WRITE+C_I2C: return_buf[2] = 0; write(comm_buf[3],comm_buf[4],comm_buf[5]); break;

主I2C的代码

#define CHIP_ADDR 0x78

unsigned char cread(uchar addr);void cwrite(uchar addr,uchar dat);void read(uchar addr, uchar num, uchar * buf);void write(uchar addr, uchar num,uchar * buf);void i2c_start(void);void i2c_stop(void);uchar WaitAck(void);void SendNotAck(void);void SendtAck(void);void delay_5us(void);void delay(unsigned char num);void i2c_writ2(unsigned char dat);uchar i2c_rea2(bit ack);

/*********************************************** 总线启动函数***********************************************/void i2c_start(){ SCL=1;delay_5us(); SDA=1;delay_5us(); SDA=0;delay_5us();delay_5us(); SCL=0;delay_5us();}

/*********************************************** 总线停止函数***********************************************/void i2c_stop(){ SCL=0; SDA=0;delay_5us(); SCL=1;delay_5us(); SDA=1;delay_5us();}

/*********************************************** I2C总线发送数据时的ACK应答***********************************************/uchar WaitAck(void){ uchar errtime=255; //因故障接收方无ACK 超时值为255 SDA=1 ;delay_5us(); SCL=1 ;delay_5us(); while(SDA) { if (--errtime == 0) { i2c_stop(); return 0; } } SCL=0; return 1;}

/*********************************************** I2C总线接收数据时的NO ACK应答***********************************************/void SendNotAck(void){ SDA=1 ; delay_5us(); SCL=1 ; delay_5us(); SCL=0;}

/*********************************************** I2C总线接收数据时的ACK应答***********************************************/void SendtAck(void){ SDA=0 ; delay_5us(); SCL=1 ; delay_5us(); SCL=0;}

/*********************************************** 写1个字节的函数***********************************************/void i2c_writ2(uchar dat){ uchar i; for(i=0;i8;i++) {// SDA=1; if((dat0x80)==0x00) SDA=0; else SDA=1; SCL=1;delay_5us();SCL=0; dat=1; }

济宁职业装制做

日照制做劳保工服

哈尔滨工服制做

山东西装定做