OLED中SSD1306数据手册IIC通讯中1. 传输从站地址后,可以通过控制字节或数据字节发送1 SDA。控制字节主要由Co和D / C#位组成,后跟六个“ 0”。
一个。如果将Co位设置为逻辑“ 0”,则以下信息的传输将仅包含数据字节。
D / C#位确定下一个数据字节用作命令还是数据。如果D / C#位设置为逻辑“ 0”,则它将以下数据字节定义为命令
其中这个不是控制字节,我看中景园例程吧Co为设置为了0,这是为什么???
2. [color=rgba(0, 0, 0, 0.87)]从站地址位(SA0)
[color=rgba(0, 0, 0, 0.87)] [color=rgba(0, 0, 0, 0.87)] [color=rgba(0, 0, 0, 0.87)]设备将响应从机地址,后跟从机地址位(“ SA0”位)
[color=rgba(0, 0, 0, 0.87)] 以及具有以下字节格式的读/写选择位(“ R / W#”位),
[color=rgba(0, 0, 0, 0.87)] b7 b6 b5 b4 b3 b2 b1 b0
[color=rgba(0, 0, 0, 0.87)] 0 1 1 1 1 0 SA0 R / W#
[color=rgba(0, 0, 0, 0.87)] “ SA0”位提供从机地址的扩展位。[color=rgba(0, 0, 0, 0.87)] [color=rgba(0, 0, 0, 0.87)]“ 0111100”或“ 0111101”可以是
[color=rgba(0, 0, 0, 0.87)] 选择作为SSD1306的从地址。[color=rgba(0, 0, 0, 0.87)] [color=rgba(0, 0, 0, 0.87)]D / C#引脚用作从机地址选择的SA0。SA0是什么意思啊???[color=rgba(0, 0, 0, 0.87)]“ 0111100”或“ 0111101”这两个改变的就是SA0的位,“[color=rgba(0, 0, 0, 0.87)]D / C#引脚用作从机地址选择的SA0”这句话又是什么意思???
3. 还有那个中景园的例程中的等待应答信号,为不把IO口改为输入???
void I2C_WaitAck(void) //测数据信号的电平
{
OLED_SDA_Set();
IIC_delay();
OLED_SCL_Set();
IIC_delay();
OLED_SCL_Clr();
IIC_delay();
}
|