基于MAX II系列CPLD 的LCD控制器设计

最新更新时间:2010-11-14来源: 互联网关键字:CPLD  LCD  控制器  用户闪存 手机看文章 扫描二维码
随时随地手机看文章

0前言

    液晶显示屏(LCD)是薄型平面显示设备,由排列在光源或者反射器之前一定数量的彩色或者单色象素构成。这类显示屏已经成为大部分嵌入式系统不可缺少的组成部分。但是在嵌入式系统中八位和十六位微处理器大多没有内置的LCD控制器,又由于LCD屏的分辨率很高,即使有内置的LCD控制器,也较难进行控制;另外内置LCD控制器对内存带宽的占用较高,使控制器所能支配的资源也会变得非常有限。因此在微处理器和LCD屏之间加上一个LCD控制器是非常必要的。常用的LCD控制器主要有两种:专用的控制芯片和基于可编程器件的控制器。本文采用Altera公司的MAX II系列CPLD器件来实现LCD控制器。CPLD一般使用外加的串行EEPROM来存储非易失信息,而MAX II CPLD是唯一具有用户闪存(UFM)的CPLD,它支持用户存储高达8Kbits的非易失信息,因此不需要采用外部存储器,并且在实现LCD控制器时还可以利用CPLD的内部UFM振荡器来满足时钟需求,从而避免了采用外部时钟信号。这些独特的功能使MAX II CPLD成为实现LCD控制器最好的目标器件。

1 嵌入式系统的LCD接口电路结构

    基于MAX II CPLD的LCD接口电路一般采用图1所示结构。图中LCD接口电路负责接受微处理器的配置,通过总线把DRAM上保存的显示数据读出,然后按照屏类型和显示设置转换为需要的格式,并按照屏时序要求发送出去。在设计显示控制器时,需要注意如下几个方面:支持的屏类型、总线类型的选择、同微处理器之间的交互方式、动态图像显示和中断设计。基于CPLD的LCD控制器可以提供合适的显示单元,它产生需要的时序信号,满足LCD的时序要求,同时卸载了微处理器和控制器繁重的LCD处理任务,从而提高了处理器和控制器执行其他操作的效率。

2 LCD 控制器组成与接口信号

    2.1 LCD 控制器组成

    由图1可知,LCD控制器有三个主要模块:有限状态机(FSM)、时钟分频器和用户闪存(UFM)模块。

    1、初始化LCD和有限状态机模块

    FSM模块有8个不同的状态。它用于初始化LCD,初始化完成后显LCD进行读写操作。图2所示为LCD模块的初始化步骤。为简化初始化过程,每次发送一条命令后,延时15ms(而不是检查忙标志的状态)。但是向LCD模块写入数据时,每一数据写操作之后,要检查忙标志的状态。这样就加速了写操作过程。

    2、时钟分频器模块

    时钟分频器模块主要是降低内部振荡器输出频率,从而满足了LCD模块的时序要求以及控制器的性能要求。该模块把振荡器输出信号osc的频率由.5MHz降低到43kHz左右。降低频率以后的信号(即Clk信号)从时钟分频器模块输出(见图3)。该模块主要代码为:
    module divider (osc, clk);
    input osc;
    output clk;
    reg clk;
    reg [6:0]count;
    initial
    begin
    count = 7'b0000000;
    end
    always @ (posedge(osc))
    begin
    count = count + 7'b0000001;
    clk = count[6];
    end
    endmodule

 

    3、用户闪存模块

    MAX II CPLD中的用户闪存UFM模块主要用于存储LCD控制器打开之后,需要在LCD屏上显示的信息。采用十六进制(Intel格式)文件(.hex)对UFM进行设置,并利用UFM宏功能进行例化。

    UFM模块接口信号主要有addr、nread、do、dv、osc和clk信号:

    Addr为9位地址总线,用于选择UFM的某一存储位置。
    nread 若该信号设置为0,以读取地址总线所指向存储器的内容。
    do 为数据输出信号。8位数据总线,保持地址总线所指向16位存储器的高8位。
    dv 为数据有效信号。该信号指示8位数据总线上的数据有效并且可读。
    osc 为UFM模块内部振荡器输出。输出信号到时钟分频器,输出频率为5.5MHz。

2.2 LCD 控制器接口信号

    1、LCD控制器与LCD屏之间的接口信号

    LCD控制器与LCD模块之间的接口信号有E、RS、RW 、DB0-DB7:
    E为使能选通信号。该信号下降沿将双向总线上的数据锁存到数据或者命令寄存器中,反之亦然。
    RS为寄存器选择信号。用于选择LCD模块的数据和命令寄存器。当RS=0时为命令寄存器;
    RS=1时为数据寄存器。
    RW为区分读写操作的读写信号。RW=0:写操作;RW=1:读操作
    DB0-DB7为8位双向总线,承载LCD模块的数据和命令。

    2、LCD控制器与微处理器之间的接口信号

    LCD控制器与微处理器之间的接口信号有DATA0-DATA7、RST、WE、ACK:
    DATA0-DATA7 为处理器和控制器的8位总线,承载LCD模块上显示的ASCII字符值。
    RST 为复位信号。该信号用于复位控制器,再次初始化LCD模块。
    WE 为写使能信号。该信号指示写周期的开始。应将它设为低电平,使能对LCD模块的写操作。
    ACK 为应答信号。该信号指示数据已经成功地发送到LCD模块,准备接收后面的数据。

    在此信号变为低电平之前发送的任何数据都被控制器忽略。

    3设计与仿真

    本设计通过MAX II CPLD EPM240ZM成功地实现了处理器和LCD模块的接口,图5-图7分别给出了LCD控制器的整体模块、综合结果和仿真波形。

4结论

    本设计采用MAX II系列CPLD器件EPM240ZM来实现LCD控制器,解决了微处理器与LCD显示模块之间的接口问题,并在OptrexSC1602D 16×2字符LCD模块上实现了嵌入式系统的显示功能。由于是使用一片MAX II CPLD芯片完成LCD全部的时序控制、显示控制等功能,所以是接口电路变得更加简洁、可靠,具有很好的应用价值。

    本文作者创新点: 使用唯一具有用户闪存(UFM)的MAX II CPLD,不需要采用外部存储器就实现了LCD 全部的时序控制、显示控制等功能,使LCD 接口电路变得更加简洁、可靠。

关键字:CPLD  LCD  控制器  用户闪存 编辑:金海 引用地址:基于MAX II系列CPLD 的LCD控制器设计

上一篇:超级电容技术分析及其在汽车领域和其他领域的应用
下一篇:滤波器功率最大而灵敏度却最低

推荐阅读最新更新时间:2023-10-12 20:18

AVR LCD1602 程序
摘要: 目 的: 建立LCD1602操作库 目标系统: 基于AVR单片机 应用软件: ICCAVR /********************************************************************* 目 的: 建立LCD1602操作库 目标系统: 基于AVR单片机 应用软件: ICCAVR *********************************************************************/ /*010101010101010
[单片机]
基于单片机的双模糊温度控制器设计
现代工业控制中,温度控制十分重要且日益复杂化。由于温度控制具有的非线性、大滞后、时变性、升温单向性等特点,在实际应用中难以建立精确的数学模型,无法用经典控制理论及现代控制理论来解决实现温度控制效果。目前,现代智能控制中不依赖对象数学模型、能有效控制时变和非线性系统的模糊控制已普遍应用于工业温度控制中。通过对温度的基本模糊控制,可达到较好的控制效果,但存在一定的稳态误差,难以达到较高的控制精度。若根据系统不同的工作状态采用不同的温度模糊控制,即双模糊控制,可大幅度改善稳念误差,提高控制精度,同时利用单片机作为主控芯片,可有效完成温度模糊处理及温度实时控制且可靠性高。 1 控制器功能及硬件设计 双模糊温度控制器主要以单片机为主控
[单片机]
基于单片机的双模糊温度<font color='red'>控制器</font>设计
采用CPLD与μC/OS -Ⅱ的断路器智能控制单元设计
   本文介绍的智能控制单元采用数字信号处理器(DSP)及嵌入式实时操作系统完成各种数据的处理、通信和算法的设计,而状态量的采集和执行信号输出将由复杂可编程逻辑器(CPLD)完成,主要是基于CPLD内部硬件电路结构的可靠性和对状态采集的实时性,该系统可以满足系统控制实时性及可靠性的要求。   硬件设计    TMS320F2812 DSP介绍   TMS320F2812DSP是 德州仪器 公司(TI)推出的32位高性能数字信号处理器,它具有峰值运行每秒150万条指令(MIPS)的处理速度和单周期完成32×32位MAC运算功能,同时它还具有128k×16的片上Flash,18k×16的片上RAM以及大量的片上外设
[单片机]
采用<font color='red'>CPLD</font>与μC/OS -Ⅱ的断路器智能控制单元设计
GSM/GPS车载系统中的LCD中文显示的编程方法
  GPS车辆调度系统是应用全球定位系统GPS(G1obalPosltlomng System),并基于GSM移动通信网络,通过短消息通信的方式对网内车辆进行定位、跟踪和监控的监管系统。   目前,在许多行业(如公安、公交和银行等)中,GPS车辆调度系统已经相当普及,GPS车辆调度系统的相关研究也成为业界的一大热门课题。本文LCD中文显示的一种编码方法是笔者在设计GPS车载终端通信系统时使用的方法。   1 问题的提出   一个GPS车辆终端在硬件上主要包括以下几部分:   GPS接收模块,用于接收GPS卫星发回的GPS定位信号。   GSM通信模块,用于实现终端模块与监控中心的无线通信。   中央控制单元,对信号接收、短消
[单片机]
GSM/GPS车载系统中的<font color='red'>LCD</font>中文显示的编程方法
CPLD设计LED显示屏控制电路
  近年来,随着计算机技术和集成电路技术的飞速发展,得到广泛应用的大屏幕显示系统当属视频led显示系统。在LED显示技术中,由于红色、绿色发光二极管的亮度、光效色差等性能也得到了很大的提高,加之计算机多媒体制作软件的发展,现在伪彩视频LED显示系统的制造成本大大降低,应用领域不断增加。这种伪彩色视频LED显示系统采用了计算机多媒体技术,全同步动态显示视频图像,图像清晰,亮度高,无拼缝,每种颜色的视频灰度等级已经由早期的16级灰度上升现在的256灰度,随着大规模集成电路和专用元器件的发展,256级灰度的全彩色视频LED显示系统随时都可能实现。   LED电子显示技术发展迅速,已成为当今平板显示领域的主导之一。   本文着
[电源管理]
用<font color='red'>CPLD</font>设计LED显示屏控制电路
LCD电视背光驱动电路设计挑战分析和方案设计
LCD 电视应用中可以采用多种架构产生 驱动 CCFL所需的交流波形,驱动多个CCFL时所要面对的三个关键的设计挑战是选择最佳的驱动架构、多灯驱动、灯频和脉冲调光频率控制。本文对四种常用驱动架构进行了对比分析,并提出多灯设计中解决 亮度 不均以及驱动频率可能干扰画面等问题的方法,并给出基于DS3984/DS3988的电路方案。 液晶 显示 器(LCD)正在成为电视的主流显示技术。LCD 面板 实际上是电子控制的光阀,需要靠背光源产生可视的图像,LCD电视通常用冷阴极荧光灯提供光源。其他背光技术,例如发光二极管也受到一定的重视,但由于成本过高限制了它的应用。 由于LCD电视是消费品,压倒一切的设计考虑是成本—当然必须满足
[电源管理]
智能家居控制器,正站在万亿市场之前
电子发烧友网报道(文/黄山明)随着智能家居的盛行,智能家居控制系统也开始逐渐普及。作为以智能家居系统为平台,家居电器及家电设备为主要控制对象,利用多种技术构建高效的主宰控制管理系统,智能家居控制系统的核心,便是智能家居控制器,而智能控制器也是电子产品、设备、装置或系统的核心和关键部件。 智能控制器的重要作用 在如今产品智能化、网络化趋势下,终端功能的不断完善带来了更多智能控制器部署的要求。而智能控制器的工作原理主要为:通过感知外部信息,传达到控制器,而后控制器推理与决策,再由执行器进行相应的行为执行。 智能控制器主要功能为控制信息、反馈信息等,在整个智能控制系统中扮演着“神经中枢”的角色。产品通常由器
[机器人]
在STM32F103C8微控制器中使用RS-485串行通信
  通信协议是数字电子和嵌入式系统的组成部分。只要有多个微控制器和外围设备的接口,就必须使用通信协议来交换大量数据。有多种类型的串行通信协议可用。RS485 是串行通信协议之一,用于工业项目和重型机械。   本教程是关于在 STM32F103C8 微控制器中使用RS-485 串行通信。   在本教程中,Master STM32F103C8 具有三个按钮,用于通过使用 RS-485 串行通信来控制 Slave Arduino Uno 上的三个 LED 的状态。   RS-485 串行通讯   RS-485 是一种不需要时钟的异步串行通信协议。它使用一种称为差分信号的技术将二进制数据从一个设备传输到另一个设备。   那么这种差
[单片机]
在STM32F103C8微<font color='red'>控制器</font>中使用RS-485串行通信
小广播
最新模拟电子文章
换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved