LCD12864_ST7920并行驱动程序详解与测试

4星 · 超过85%的资源 需积分: 10 20 下载量 3 浏览量 更新于2024-12-12 收藏 27KB TXT 举报
本文档主要介绍了如何使用LCD12864液晶显示模块配合ST7920接口进行并行测试。LCD12864是一种128x64像素的字符型液晶显示器,而ST7920是其常用的驱动接口,它支持8位并行数据传输,适用于5V工作电压,时钟频率为11.0592MHz。 首先,编程环境设置中定义了一些关键的引脚,如LCD_RS(数据/命令选择线)、LCD_RW(读写控制线)、LCD_EN(使能信号线)和LCD_PSB(页选信号线)。LCD_DATAP0被用来连接LCD的数据线,这些引脚通过宏定义的方式简化了与液晶模块的交互操作。 在初始化过程中,文档中提到的几个重要命令包括: 1. CLEAR_SCREEN (0x01):用于清屏操作,设置显示模式为AC(行地址计数器)值为00H,清除屏幕内容。 2. AC_INIT (0x02):初始化AC为00H,设置显示起始位置为第一行第一列。 3. CURSE_ADD (0x06):用于移动光标或字符到下一个位置,如果AC值达到最大,会自动回滚到第一行。 4. FUN_MODE (0x30):设置功能模式,通常用于改变显示的字体、大小等特性。 5. DISPLAY_ON (0x0c):打开显示,使液晶屏处于正常工作状态。 6. DISPLAY_OFF (0x08):关闭显示,屏幕进入待机状态。 7. CURSE_DIR (0x14):控制光标移动方向,当AC增加时,光标向右移动;反之则向左移动。 8. SET_CG_AC (0x40):设置光标/图形地址寄存器(Character Generator Address Register),用于指定字符或图形的位置。 9. SET_DD_AC (0x80):设置数据显示地址寄存器(Display Data Address Register),控制数据的写入位置。 在实际操作中,文档提供了一个“delayms”函数,用于延时处理,确保数据传输稳定,这在高频率下尤为关键。该函数通过循环计数实现定时,可以根据需要调整延时时间。 这份并行测试程序的核心在于通过控制这些特定的寄存器和命令,实现LCD12864液晶显示模块的基本功能,包括初始化、控制字符显示、移动和清屏等。这对于开发基于LCD12864的嵌入式系统或电子设备的用户界面非常重要,提供了基本的硬件控制和操作指南。