进度二
熟悉外设GSL1680
下载查看GSL1680的datasheet,了解“电路结构,工作原理,寄存器,通信时序”
第一步上ALLDATASHEET.com找芯片数据手册
第二步用知云文献翻译阅读芯片数据手册
第三步总结需要用到的地方
-
电路结构:GSL1680通过4个引脚与主机控制器连接(除了电源),使用I2C接口进行通信,包括SDA、SCL、IRQ和SHUTDOWN引脚。
-
工作原理:当触摸屏上的某个通道被触摸时,设备会转入激活模式并等待激活超时后返回到低速扫描模式。如果没有通道被触摸,则保持低速扫描模式直到超时后进入绿色模式。
-
通信时序:GSL1680的I2C通信遵循标准的I2C协议,包括START条件、写地址、写数据、STOP条件等步骤。每个周期至少有一次数据采集,并且可以通过配置来调整这些周期的时间。此外,对于中断的使用,如果需要读取消息而IRQ线未被断言,建议进行双重读取以检查一致性,从而确保没有同时发生读操作和消息更新的情况。
-
中断:根据文本片段,GSL1680设备通过I2C接口与主机控制器通信,并使用中断信号IRQ来通知主机有新的消息准备好。当某个通道被触摸时,设备会转入激活模式并等待激活超时后返回到低速扫描模式,然后设备将进入绿色模式,在绿色模式下以更慢的速度监视触摸屏。如果需要利用这个中断功能,您需要编写代码来检测IRQ引脚的状态变化,并在检测到低电平(即IRQ信号激活)时执行相应的操作。
Device Address
GSL168X支持单个i2c兼容设备地址0x40。通过兼容i2c的接口传输时,会向左移位形成SLA+W或SLA+R地址,如下表所示。 SLA+W和SLA+R格式
Writing to the Device
写设备的一个写周期包括START条件和设备的i2c兼容地址(SLA+W)。下一个字节是开始写入的位置的地址。
多字节传输中的后续字节——实际数据——被写入地址指针的位置,地址指针的位置+1,地址指针的位置+ 2,依此类推。
WRITE操作以i2c兼容总线上的STOP条件结束。一个新的写周期涉及发送另一个地址指针。注意,WRITE周期必须以STOP条件结束;如果一个周期被新的START条件终止,GSL168X可能无法正确响应。
下图显示了一个将四个字节的数据写入从0x80开始的连续地址的示例。
4字节的示例,0x12345678写地址0x80(?)
Reading from the Device
从设备读取为了从设备读取,通常会发生两个兼容i2c的总线活动:第一个是兼容i2c的写操作来设置地址指针,第二个是实际的兼容i2c的读操作来接收数据。当检测到READ周期的STOP条件时,地址指针返回到其起始值。
没有必要在每次读取之前设置地址指针。每次读操作后,地址指针都会自动更新,所以如果读操作顺序正确,地址指针就是正确的。
WRITE和READ周期由START条件和设备的i2c兼容地址(分别为SLA+W或SLA+R)组成。每个循环必须以STOP条件结束;如果一个周期被新的START条件终止,GSL168X可能无法正确响应。
下图显示了从地址0x80读取四个字节的i2c兼容命令。
从地址0x80读取一个4字节的例子
熟悉6818的IIC控制器
下载查看6818的datasheet,了解iic“电路结构,工作原理,寄存器,通信时序”
1.IIC是一种数据传输协议(SPI,USB,SDIO,UART......)
2.速度比较:IIC(100K,400K,3.4M)<SPI<SDIO<网络< USB
3.IIC是一个半双工通信方式,两根总线(SCL,SDA),每个设备都有唯一设备地址
4.一次传输8bit,高位在前,低位在后;总线空闲状态:数据线SDA拉为高电平