📄 iic.c
字号:
// extern int8 buffer[8];
//================================
void iic_start(){
i2c_start();
}
//----------------------------------
void iic_stop(){
i2c_stop();
}
//-----------------------------------
void wriic(int m,int subad,int*p){
int8 i;
i2c_write(subad);
for(i=0;i<m;i++){
i2c_write(*p);
p++;
}
iic_stop();
}
/************I2C总线连续读操作******************/
/**/
void reiic(int sla,int m,int *p){
int8 i;
iic_start();
i2c_write(sla);
for(i=1;i<m;i++){
*p=i2c_read();
p++;
}
*p=i2c_read(0);
iic_stop();
}
//------------------------------------
//***********************************/
void Test_iic()
{
int8 i;
puts("write 0~7 to IIC Bus eeprom .and then read it\n");
for(i = 0;i < 8; i++)
{
buffer[i] = i;
printf("%d",buffer[i]);
}
printf("\n");
iic_start();
i2c_write(ADDR_IIC_EEP);
wriic(8,0,buffer);
for(i = 0;i < 8; i++)
{
buffer[i] = 0;
}
delay_ms(10); //delay 10 ms
iic_start();
i2c_write(ADDR_IIC_EEP);
i2c_write(0);
reiic(ADDR_IIC_EEP+1,8,buffer);
for(i = 0;i < 8; i++)
{
printf("%d",buffer[i]);
}
printf("\n");
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -