Midas LCD SSD1803A控制器初始化代码实现

需积分: 9 2 下载量 135 浏览量 更新于2024-09-08 收藏 6KB TXT 举报
"Midas公司的LCD模块MCCOG42005A6W-BNMLWI使用SSD1803A控制器的初始化代码。该代码涉及了I²C通信、LCD显示设置以及按键定义等关键部分。" 在嵌入式系统中,初始化SSD1803A控制器是配置LCD显示屏的重要步骤。SSD1803A是一款常用的LCD控制器,用于驱动420x5行的点阵字符型液晶显示器。以下是对标题和描述中涉及知识点的详细解释: 1. **SSD1803A控制器**: SSD1803A是一款8位并行接口的LCD控制器,支持2行或4行显示,可显示5x7点阵的字符。它具有内置振荡器,可以通过设置控制字来调节显示模式、亮度和对比度。 2. **初始化过程**: - **Function Set** (0x31): 设置数据线宽度为8位(DL=1),显示器行数为2行(N=1),并确定内部寄存器选择(IS=1,RE=0)。 - **Internal Divider/OSC Frequency** (0x18+0x03): 设置内部分频器,选择振荡器频率为540kHz,并设置基址分频比为1/4。 - **Entry Mode Set** (0x06): 设定数据地址递增方式(I/D=1),表示每次写操作后地址自动加1。 - **Display ON/OFF Control** (0x0C): 开启显示(D=1),不显示光标(C=1,B=0)。 - **Contrast Setting**: 虽然在给定的代码中注释掉了,但通常会发送一个命令来设定对比度,以适应不同环境下的清晰度需求。 3. **I²C通信**: SDA和SCL引脚(P1^1和P1^0)被用来进行I²C通信,这是一种多主设备总线协议,用于连接低速外围设备。在这个例子中,可能用于与SSD1803A控制器进行通信。 4. **按键定义**: P2口的某些引脚(如P2^0, P2^1, P2^2)被定义为按键输入,分别对应Add键、Sub键和Run键,这对于用户交互和系统控制至关重要。 5. **数据数组**: - `codea` 和 `codeb` 数组可能用于设置正负偏置,例如设置显示的正负温度值。 - `Init` 数组包含了初始化所需的命令序列,按照顺序发送到SSD1803A控制器。 6. **SetVLCD函数**: 未在给出的代码中定义,但根据上下文,这个函数很可能是用来设置LCD的电压等级(VLCD),从而调整显示的亮度。 总结来说,这段代码提供了SSD1803A控制器的初始化流程,包括设置显示参数、通信接口配置以及用户交互界面的初步定义。在实际应用中,开发者可能需要根据具体的硬件平台和应用需求对这些参数进行微调。