基于NIOS II系统的LCD液晶显示
2012-08-20付宗见
付宗见 李 明
(1.郑州铁路职业技术学院,河南 郑州 450052;2.河南机电高等专科学校,河南 新乡 453002)
NIOS II系统是Altera公司推出的第二代基于FPGA的32位RSIC嵌入式处理器,它具有的软硬件可裁减、可扩充、可升级等特性使其得到了广泛地应用。液晶显示器件因其显示内容丰富已成为嵌入式系统重要的输出器件。Altera Quarter II开发软件的SOPC Builder系统开发工具不仅可直接定制NIOS II软核处理器,还可以添加其相关组件。其中就集成了专门的LCD16027控制IP核,可直接完成液晶的扩展,并提供HAL系统库的软件支持,使用十分方便。
本文以常用的液晶显示屏LCD1602为例,重点介绍基于NIOS II软核处理器系统的LCD1602液晶显示屏的硬件电路设计和软件编程方法。
1 硬件电路设计
LCD1602液晶显示屏采用单+5V供电,具有价格低廉、外围电路配置简单等特点,应用十分广泛。该液晶为黑白屏字符型液晶,可显示标准ASCII码字符,共两行,每行显示16个字符。其引脚接口如表1所示。
表1 LCD1602引脚功能表
续上表
与NIOS II系统的LCD显示IP核引脚连接,主要有数据D0-D7,使能E,寄存器选择RS,读写R/W,背光可通过PIO扩展来实现。图1为LCD1602与FPGA的连接示意及外围电路图。
图1 LCD1602与FPGA的连接示意及外围电路图
2 LCD控制IP核
LCD1602的控制可以直接采用SOPC Builder提供的16207LCD控制IP核。该IP核基于Avalon总线接口,提供了16×2个ASCII字符显示控制的软硬件控制器。该驱动提供HAL系统库支持,NIOS II程序可以直接通过ANSI C标准库如printf()实现液晶显示。
LCD控制IP核连接到LCD1602的引脚主要有:
◆EN——使能(输出类型)
◆RS——寄存器选择(输出类型)
◆R/W——读或写控制(输出类型)
◆DB0~7——数据总线(双向口)
图2为LCD控制器方框图。LCD控制IP核与Avalon-MM从接口相连。该控制 IP核可以在SOPC Builder里定制。在SOPC Builder里这个LCD控制IP核叫Character LCD(16×2,Optrex16207)。
该IP核可直接添加使用,不需要任何设置。
表2 LCD控制IP核支持的VT100控制协议
图2 LCD控制器方框图
3 软件编程
该LCD控制IP核驱动提供HAL系统库支持,液晶屏可以作为一个标准输出设备,使用ANSI C标准库中的printf(),很容易地将需要显示的字符写到显示屏上。
该IP核支持VT100部分协议,除显示16×2字符外,还可以控制光标的位置。表2为LCD控制IP核支持的VT100控制协议。
需要注意的是,在实际编程中,上表的“ESC”等用‘’加该控制符对应的16进制数形式表示,如“ESC[K”表示为“33[K”。
该IP核与以下文件一起使用,这些文件提供了硬件接口,和HAL驱动程序。
◆altera_avalon_lcd_16207_regs.h-这个文件定义了核心的寄存器映射,符号常量来提供访问底层硬件。
◆altera_avalon_lcd_16207.h,altera_avalon_lcd_16207.c-这些文件执行LCD控制器的HAL系统库设备驱动程序。
下面的代码是LCD1602显示的一个实例:
HAL的设备驱动程序使用户不必直接访问寄存器。
4 结束语
基于NIOS II软核处理器系统的LCD液晶显示组件可根据需要灵活定制,使用者可以不必了解液晶屏原理就可以用标准C语言函数来操作使用。采用NIOS II软核处理器扩展LCD1602液晶的设计方案具有灵活、方便、高效和低成本的特点。
[1]曹勇,沈斌,熊伟.SOPC中NIOS II的LCD显示驱动IP设计[J].单片机与嵌入式系统应用,2010,(6).
[2]张芝贤,王明贺等.LCD显示模块并行接口驱动程序设计[J].国外电子测量技术,2009,(10).
[3]江晋剑.基于SOPC实验平台的创新实验方法研究[J].微型电脑应用,2009,(3).