点阵图形液晶模块接口设计

时间:2022-08-02 12:15:07

点阵图形液晶模块接口设计

摘 要:详细介绍点阵图形液晶模块FYD12864-0402B的原理和AT91RM9200特性,具体阐述FYD12864-0402B与AT91RM9200的硬件接口和驱动程序的设计。该接口结构简单、性能稳定,达到了设计要求,取得了良好的显示效果。

关键词:点阵图形液晶模块;AT91RM9200;接口结构;驱动程序

Interface Design of Dot Matrix Liquid Crystal Module

HAO Dingyuan

(College of Information Science and Technology,Chengdu University,Chengdu,610106,Chinaオ

Abstract: The article introduces the principle of graphic dot matrix liquid crystal module FYD12864-0402B and the characteristics of AT91RM9200 in details,elaborates on the hardware interface circuit and the driver between FYD12864-0402B and AT91RM9200.It is proved that the interface has the advantages of simple structure and excellent stability,which satisfies the design require and can get good display effect.

eywords:liquid crystal module;AT91RM9200;interface structure;driverオ

1 引 言

随着嵌入式系统广泛的应用,人们对人机界面的要求也越来越高,简单的显示方法已经不能满足需要。液晶显示器(LCD)具有功耗低、体积小、质量轻、超薄和可编程等优点,广泛用于各种仪器,仪表和低功耗电子产品中。特别是点阵图形液晶显示器,不仅可以显示字符、数字,还可以显示各种图形、曲线及汉字,并且具有实现屏幕上下左右滚动、动画、闪烁、文本特征显示等功能,用途十分广泛[1]。在设计嵌入式开发平台的过程中,以ARM芯片作为嵌入式系统处理器,它具有高性能、低功耗、低成本等特点(具体选型为Atmel公司出品的AT91RM9200芯片),选择ST7920为控制器的FYD12864-0402B液晶显示器的结构,设计了驱动程序。经过调试,系统取得了很好的显示效果。

2 硬件模块简介

(1 显示模块:FYD12864-0402B是内置ST7920控制器的128×32点阵图形液晶显示器,通过对ST7920控制器的编程应用,可以实现字符和图形的显示。FYD12864-0402B是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;其显示分辨率为128×64,内置8 192个16×16点的汉字,和128个16×8点的ASCII字符集。利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。可以显示8×4行16×16点阵的汉字, 也可完成图形显示,低电压低功耗是其又一显著特点。由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构和显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块[2]。它的基本特性如下:

低电源电压(VDD:+3.0~+5.5 V);

显示分辨率:128×64点;

内置汉字字库,提供8 192个16×16点阵汉字(简繁体可选;

内置 128个16×8点阵字符;

2 MHz时钟频率;

显示方式:STN、半透、正显;

驱动方式:1/32DUTY,1/5BIAS;

视角方向:6点;

背光方式:侧部高亮白色LED,功耗仅为普通LED的1/5~1/10;

通讯方式:串行、并口可选;

内置DC-DC转换电路,无需外加负压。

(2) AT91RM9200处理器:AT91RM9200是Atmel针对系统控制以及通信领域推出的基于ARM920T内核的新微型控制器。它在工作频率为180 MHz时处理速度为200 MIPS,具有独立的16 k指令和16 k数据Cache,写缓存,全功能的MMU虚拟内存管理单元,AT91RM9200是完全围绕ARM920TARMTburnb处理器构建的系统[3]。它有丰富外设接口及标准接口,从而为低功耗、低成本、高性能的嵌入式应用提供一个很好的处理器芯片。AT91RM9200包括一个高速片上SRAM工作区和一个低等待时间的外部总线接口(EBI,以完成应用所要求的片外存储器和内部存储器映射外设配置的无缝连接。EBI有SDRAM,BurstFLASH及静态存储器的控制器,并设计了专用电路以方便与SmartMedia,CompactFLASH及FLASH连接。AT91RM9200集成了许多标准接口控制器,包括USB和设备端口及与多数外设和在网络层广泛使用的10/100Base_T以太网媒体访问控制器(MAC。

此外,它还提供一系列符合工业标准的外设,可在音频、电信、FLASH卡、红外线及智能卡中使用。AT91RM9200集成了包括JTAG-ICE、专门UART调试通道(DEBUG及嵌入式的实时追踪的一系列的调试功能[4]。AT91RM9200处理器有2种封装:一种是BGA形式的封装,它有256个引脚;一种是PQFP形式的封装,它有208个引脚。本系统中采用的PQFP封装的处理器。

(3) AT91RM9200与FYD12864-0402B液晶的接口电路:FYD12864 -0402B液晶显示模块分为串口连接和并口连接,因为AT91RM9200I/O引脚较多,所以FYD12864 -0402B在该系统中采用的是8位并口连接。接口连接如图1所示:

3 驱动程序设计

对FYD12864 -0402BLCD的显示驱动程序设计主要包括3部分: 对LCD的初始化;对LCD模块写指令;对LCD模块写数据。这3个部份是构成其他显示程序的基础。因为LCD内部自带汉字模块,因此只要向控制器发送相应的代码就可以实现汉字的显示,对于图形和曲线显示只需要设置好对应的水平地址和垂直地址,并把图形编码传送到LCD模块中就可以显示出内容。

(1LCD的初始化函数设计

void Init_LCD(void[JY]//初始化LCD模块

{

Write_Single_CMD(0x30;[JY]//功能设置--8BIT控制界面,基本指令集

Write_Single_CMD(0X0C;

Write_Single_CMD(0x01;[JY]//清除屏幕显示,将DDRAM的地址计数器清零

Write_Single_CMD(0x06;[JY]//DDRAM的地址计数器(AC)加1

}

(2 LCD模块写指令设计

void Write_Single_CMD(unsigned char cmd[JY]//写单字节命令字

{

AT91F_PIO_ClearOutput(AT91C_BASE_PIOB,AT91C_PIO_PB27; [JY]// RS

AT91F_PIO_ClearOutput(AT91C_BASE_PIOB,AT91C_PIO_PB28; [JY]// RW

AT91F_PIO_SetOutput(AT91C_BASE_PIOB,AT91C_PIO_PB26; [JY]// Enable

LCD_dataout(cmd;

Delay100us(100 * delaytimes;[JY]//延时

AT91F_PIO_ClearOutput(AT91C_BASE_PIOB,AT91C_PIO_PB26;[JY]//Disable

LCD_dataout(0xFF;

Delay100us(100 * delaytimes;[JY]//延时

}

(3 LCD模块写数据

void Write_Single_Data(uchar a [JY]//写单字节数据

{

AT91F_PIO_SetOutput(AT91C_BASE_PIOB,AT91C_PIO_PB27; [JY]// RS

AT91F_PIO_ClearOutput(AT91C_BASE_PIOB,AT91C_PIO_PB28;[JY]//RW

AT91F_PIO_SetOutput(AT91C_BASE_PIOB,AT91C_PIO_PB26;[JY]//Enable

LCD_dataout(a;

AT91F_PIO_ClearOutput(AT91C_BASE_PIOB,AT91C_PIO_PB26; [JY]//Disable

LCD_dataout(0xFF;

}

4 结 语

随着智能化仪器和嵌入式系统的逐步推广,LCD模块使用也会越来越广泛。以上的接口电路通过实际测试和使用,表明该LCD模块和AT91RM9200接口稳定可靠,字符和图形显示正常,达到设计要求,可以进行推广使用。

参 考 文 献

[1]李维,郭强,周云仙.液晶显示应用手册[].北京:电子工业出版社,2002.

[2]FYD Corporation.FYD12864-0402B LCD datasheet[].2002.

[3]ATMEL Corporation.AT91RM9200 Microcontroller Data-sheet[].2002.

[4]朱义君,杨育红.AT91系列ARM微控制器体系结构与开发实例[M].北京:北京航空航天大学出版社,2005.

[5]江俊辉.基于ARM的嵌入式系统硬件设计[J].微计算机信息,2005(7):11-13.

上一篇:单片彩色LCoS显示系统的设计实现 下一篇:利用C#开发电子病历系统体温图