16.3.7 单字节写子函数

单字节写子函数用于向从器件写入单个字节的数据。程序中,可以通过for循环语句,逐位将数据发送到I2C数据总线上。该函数在使用之前,必须先使用起始信号子函数启动I2C总线数据传输。单字节写子函数的流程图如图16.7所示,其函数示例如下。


bit Write8Bitic(unsigned char input)//input为待发送的数据

{

unsigned char temp;

for(temp=8;temp!=0;temp—)//循环移位,逐位发送数据

{

SDA=(bit)(input&0x80);//取数据的最高位

Delays(1);SCL=1;

Delays(1);SCL=0;

Delays(1);

input=input<<1;//左移一位

}

return 1;

}