本帖最后由 STM23小白 于 2017-5-12 17:22 编辑
资料中伪代码如下
START;
Send device address + write mode
Send address of FIFO_DATA;
REPEATED_START;
Send device address + read mode
for (i = 0; i < NUM_SAMPLES_TO_READ; i++) {
Read FIFO_DATA;
Save LED1[23:16];
Read FIFO_DATA;
Save LED1[15:8];
Read FIFO_DATA;
Save LED1[7:0];
Read FIFO_DATA;
Save LED2[23:16];
Read FIFO_DATA;
Save LED2[15:8];
Read FIFO_DATA;
Save LED2[7:0];
Read FIFO_DATA;
}
STOP;
我的程序
IIC_Start();
IIC_Send_Byte(DEVICE_ADR_W);
IIC_Wait_Ack();
IIC_Send_Byte(0x06);
IIC_Wait_Ack();
IIC_Start();
IIC_Send_Byte(DEVICE_ADR_R);
IIC_Wait_Ack();
for(u8 i=0; i<NUM_AVAILABLE_SAMPLES; i++)
{
LED1[0]=IIC_Read_Byte(1);
LED1[1]=IIC_Read_Byte(1);
LED1[2]=IIC_Read_Byte(1);
LED2[0]=IIC_Read_Byte(1);
LED2[1]=IIC_Read_Byte(1);
LED2[2]=IIC_Read_Byte(0);
}
IIC_Stop();
这样对吗?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>