1简介
中微爱芯电子有限公司的许多显示驱动芯片采用了类I2C接口,客户可通过MCU与我司的显示驱动芯片进行通信,类I2C总线具有低功耗、抗干扰强、传输距离长等优点,相比于标准I2C,不需要寻址操作,操作更加简单。下面将对我司类I2C通信及注意事项进行说明。
2分类
类I2C接口有与标准I2C接口相同的start和stop信号,无从机地址,部分威廉希尔官方网站 有与标准I2C接口相同的应答信号。主要分为以下两类:
无应答信号ACK位,以AiP1640、AiP33624、AiP33620等威廉希尔官方网站 为例;
有应答信号ACK位,以AiP650、AiP1637等威廉希尔官方网站 为例。
3通信介绍
(1)无应答信号的类I2C介绍
以AiP33624为例:
◆start和stop信号
start信号:SCL为高电平时,SDA由高电平向低电平跳变,开始传送数据。
stop信号:SCL为高电平时,SDA由低电平向高电平跳变,结束传送数据。
◆数据位的有效性规定
在进行数据传送时,在SCL的上升沿锁存数据,SCL为高电平期间,SDA线上的数据必须保持稳定,只有在SCL线上的信号为低电平期间,SDA线上的数据状态才允许改变,且SDA线上的数据不能在SCL为下降沿改变。
◆单字节通信
单字节通信中8个时钟一个周期,高位在前。
◆多字节通信
在多字节通信时,第一个字节为指令,第二个字节开始是RAM的数据。第二个字节开始,数据会从地址0x00开始,依次存入RAM中。
(2)有应答信号的类I2C介绍
以AiP650为例:
AiP650威廉希尔官方网站 与AiP33624相比,有相同的start、stop信号和数据位有效规定。AiP650在传输数据的过程中,在时钟线的第九个时钟,芯片内部会产生一个应答信号ACK将DIO管脚拉低。无论是命令写入或者是数据写入读出时,在一个8位字节后的第9位都是ACK信号输出。
4常见问题及处理办法
(1)ACK半高问题
◆ 常见不良现象
在有ACK应答信号的通讯波形中,会发现ACK信号存在“半高波形”,严重的会影响信号识别,例如AiP650威廉希尔官方网站 应用中会存在ACK“半高”导致无显示问题。
◆原因
若读取ACK时主控未将SDA端口设置为输入,而是保持为高电平输出,AiP650会在ACK应答时会返回低电平,因此会造成电平冲突存在半高波形,严重时甚至影响功能。
若读取ACK信号时将SDA设为输入状态后,又通过指令SDA端口置高,同样造成电平冲突存在半高波形,导致ACK信号出现异常。
◆改善措施
在读取ACK时,需将主控的SDA端口设置为输入模式,建议设为高阻输入。
(2)初始化处理
◆常见不良现象
初始化第一条指令未识别,导致功能异常。例如AiP33624方案中曾出现第一条指令全局亮度未识别,导致整体亮度偏暗。AiP5908、AiP5916等威廉希尔官方网站 需要注意此问题。
◆原因
初始化可能存在如下两个状态:
当执行端口初始化程序时,为了执行子函数,在子函数运行前将SCL和SDA的端口置低,但该操作误写入一个start信号,如下图所示。
整机上电时,MCU端口电平可能处于不可控状态,此时的SCL、SDA电平则有可能在通信初期识别为start信号,如下图所示。
前两种状态均在正常指令前多一个异常start信号,即:出现连续两个start信号。当识别第一个start信号时,总线被占用,后一个start信号则被识别为数据信号,导致第一条指令识别错误。常见的异常波形如下所示:
◆改善措施
建议上电后第一条指令或初始化部分写2遍,做好防错机制,避免信号识别错误,增强抗干扰能力。
可在第一条指令前增加1个结束信号,以释放通信总线。
(3)时钟频率注意事项
由于频率越快越容易受到干扰,建议时钟频率保持在1MHz以下,若说明书有特殊说明,请参照说明书。如AiP33624、AiP33620、AiP33616说明书注明建议时钟频率大于100KHz。
(4)AiP33624系列通信注意事项
在对AiP33624(AiP33620、AiP33616)威廉希尔官方网站 进行通信时,第七个时钟和第八个时钟不可暂停通信。
上图所示标注时段,不管是从“指令→RAM数据”或“RAM数据→RAM数据”,从一组通信数据的第7个时钟开始,到下一组通信数据的第1个时钟上升沿期间,内部显示地址总线将被通信接口模块占用,此时将暂停显示。因此如果主机在第7和第8个时钟时暂停通信,会导致显示暂时关闭。
(5)推荐外围接法
建议通讯端口串联220Ω电阻,接100pF对地电容,10K上拉电阻,增强抗干扰能力;建议靠近IC放置。
(6)初始化中显示RAM区处理
在上电完成后,需对所有的显示RAM进行数据写入,然后再开显示,避免因显示RAM数据未清导致的显示异常。
(7)SDA、SCL边沿问题
◆常见不良现象
SDA在SCL的上升沿变化时,容易导致数据识别错误。
◆原因
SDA在SCL的边沿变化,SDA与SCL边沿存在交叉,若交叉点位于翻转电平附近,易受干扰导致数据识别错误。如图所示:
◆改善措施
建议SDA在SCL低电平变化,避免在SCL边沿变化,增强抗干扰能力。
审核编辑:汤梓红
全部0条评论
快来发表一下你的评论吧 !