基于C8051F120核心的嵌入式彩色显示系统设计

最新更新时间:2012-06-13来源: 电子发烧友关键字:C8051F120  嵌入式  显示 手机看文章 扫描二维码
随时随地手机看文章

  引言

  嵌入式设备凭借其与使用者之间的亲和力、自然的人机交互界面,得到了迅速的发展,渗透到生活中的各个角落。本文介绍的设计方法是以高性能的8位单片机C8051F120作为核心处理器,SRAM作为系统的显存,FPGA实现时序转换,构建低温(-10℃)下嵌入式显示系统。通过PC机键盘和触摸屏实现界面操作,最终在液晶显示器上显示国标一/二级汉字、ASCII字符和65 536色的彩色图形和图片,并制作了简单的操作界面。

  1 系统工作原理

  显示汉字、英文字符和彩色图形的过程就是将字符和图形信息转换成液晶显示器可以显示的点阵信息。为了显示字符,可以将ASCII码字符点阵字库和按区位码排列的汉字点阵字库存储在单片机外接的Flash ROM中(构成点阵数据区),并且将程序中用到的字符以机内码的形式存储在Flash ROM中(构成文本数据区)。显示时,单片机将汉字机内码从文本数据区读出,转换成FlashROM中点阵数据区的字库地址,通过该地址读出字符的点阵数据,进一步转换成液晶显示器可显示的数据并送给后续电路处理和显示。这样在操作过程中可以显示包括国标一/二级汉字、大小写英文字符、标点和数字等多种字符。显示彩色图形的时候,由于图片的存储空间要求比较大,系统中没有足够的空间,可以将PC机内bmp格式的彩色图片经过格式转化以后,通过串口送给单片机实时处理并显示。

  液晶显示器工作频率为4.5~6.8MHz,并且需要复杂的工作时序。考虑到单片机的工作速度和液晶显示器的工作频率,一方面,液晶显示器在工作频率下不断刷新才能工作,需要传送大量的显示数据和控制信息;另一方面,单片机要完成许多处理工作,即使工作在100MHz,也将成为系统运行速率的瓶颈。为了解决这个问题,再次加入一块SRAM作为显存,加入一块FPGA实现时序转换并控制和刷新液晶显示器。FP GA分时地读/写SRAM,FPGA在时钟的作用下,一半时间内(时钟信号为高电平时)从SRAM中读出数据,不断刷新液晶显示器;另一半时间内(时钟信号为低电平时),如果单片机有送来要显示的数据时,将此数据写入SRAM中。分时操作的使用,能在不间断地刷新液晶显示器的同时,接收并存储单片机的数据,使两方面的工作互不影响,不仅减轻单片机的工作负担,而且充分发挥了FPGA的性能。

  选择附有触摸屏的液晶显永器,将触摸屏外接手写识别控制器,就可以增加手写识别功能,可提供友好的人机交互界面。由上述分析可以画出系统框图,如图1所示。

  

  2 系统硬件设计

  在本嵌入式显示系统中,采用了夏普公司型号为LQ0357DH01的液晶显示器,工作温度范围在-10~70℃,最低工作温度相对更低一些。

  显示模块由一个彩色主动点阵式LCD模块和无定形硅TFT构成,因此可称为AD-TFT(Advanced TFT)。它由彩色TFT-LCD面板、IC驱动、FPC、背光、电阻式触摸屏和背部密封盒组成,但是模块不包括控制电路。显示屏工作频率为4.5~6.8 MHz,分辨率为240×320像素,色彩位深为18位。图形和文本能以262 11 4种颜色显示在240x 320点阵的显示屏上。但是考虑单片机的数据总线宽度为8位,为了简化操作过程,可将色彩深度确定为16位,单片机分两次发送每个像素的颜色数据。这样的简化操作也可以满足显示65 536色彩色图形的要求。

  为了提高整个系统的运行速度,采用型号为C8051F120的高性能8位单片机作为处理器。C8051F120使用Silicon Labs公司的专利CIP-51微控制器内核。CIP-51与MCS-51指令集完全兼容,可以使用标准803x/805x的汇编器和编译器进行软件开发。C8051F120可稳定工作的最大系统时钟频率为100 MHz,峰值性能达到100MIPS。

  Flash采用的是M29W400BB(512K×8位),它是一种可读、可擦除、可重复编程的Flash。FPGA采用Xilinx公司Spartan-II系列产品XC2S1 00。XC2S100是一款具有10万系统门的FPGA,在逻辑门数上能为系统提供足够的逻辑电路,144引脚封装形式的XC2S100可提供103个I/O端口,为系统器件提供足够的I/O口资源。

  关于SRAM的选择,考虑到液晶显示器的分辨率为240×320像素,每个像素点可显示65 536色(16位),因此显存的大小至少为240×320× 2B=150 KB。加入一块512 KB的SRAM CY7C1041BV33作为显存即可。CY7C1041BV33可以工作在字(word)操作模式下,方便显示数据的存取,刷新液晶的过程中可将SRAM中的每个字与液晶的每个像素对应。

  手写识别采用型号为ePH1200AQ的手写识别微控制器。ePH1200AQ硬件上集成了8位RISC微控制器、触摸屏驱动器、接口UART、4 KB SRAM、32K字编程ROM和512K字数据ROM;软件上则包含手写识别内核、字符集和笔迹收集软件。当微控制器与外部触摸屏相连接的时候,就可以组成手写识别应用产品,比如SMS、移动电话或者手写输入设备。

  3 系统软件设计

  系统软件包括单片机和FPGA两个部分。本文主要介绍单片机部分的软件设计。

  单片机完成的功能包括循环查询两个串口是否接收到新的数据,当某个串口接收到新的数据时,便采取相应含义的操作。显示字符时,读出Flash ROM中的点阵数据,进行转换和处理后送给FPGA;显示图形时,按照没定的图形轨迹画出点。

  单片机在主程序中循环查询两个串口是否接收到新的数据,当任意一个串口产生中断时,根据串口接收到数据的含义,采取相应的操作。主函数流程如图2所示。

  

  3.1 字符显示原理

  UCDOS软件中的文件HZK16与文件ASC16分别为1 6×1 6的国标汉字点阵文件和8×1 6的ASCII码点阵文件,以二进制格式存储。在文件HZK 16中,按汉字区位码从小到大依次存有国标区位码表中的所有汉字,每个汉字占用32个字节(16×16的汉字点阵),每个区为94个汉字。在文件ASC16中按ASCII码从小到大依次存有8×1 6的ASCII码点阵,每个ASCII码占用1 6个字节。

  在PC机的文本文件中,汉字是以机内码的形式存储的,每个汉字占用两个字节。第一个字节为区码,为了与ASCII码区别,范围从十六进制的0A1H开始(小于80H的为ASCII码字符),对应区位码中区码的第一区;第二个字节为位码,范围也是从0A1H开始,对应某区中的第一个位码。这样,将汉字机内码减去0A0A0H就得该汉字的区位码。例如汉字“我”的机内码为十六进制的“CED2”,其中“CE”表示区码,“D2”表示位码。所以“我”的区位码为0CED2H-0A0A0H=2E32H。将区码和位码分别转换为十进制得汉字“我”的区位码为“4650”,即“房”的点阵位于第46区的第50个字的位置,相当于在文件HZK16中的位置为第32×[(46-1)×94+(50-1)]=67136 B以后的32个字节为“我”的显示点阵。

  依次读出每个字节,每读出一个字节,并提取该字节中的每一位,如果某位是“1”,则给该位数据对应的像素点送入两个字节的字体颜色数据,如(0x0000,黑色);如果某位是“0”,则给该位数据对应的像素点送入两个字节的底色数据,如(0xffff,白色)。当发送完32个字节的点阵数据后(总共发送的颜色数据为32B×8dot×2B=512 B)液晶屏上便会显示底色为白色,字体颜色为黑色的汉字。汉字“我”的显示结果如图3所示。

  

  液晶显示器的色彩深度为16位,每个像素可显示65 536色。SRAM工作在字(word)操作模式下,将SRAM中的每个字与液晶显示器的每个像素对应。比如将液晶显示器第一行第一列的点与SRAM的0x0000地址对应,第一行第二列的点与0x0001地址对应,依次类推。

  3.2 通过PC机键盘进行界面操作

  通过PC机键盘进行界面操作时,使用电脑软件将键盘的操作键值通过PC机串口发送给单片机串口0,单片机串口0每中断一次接收到一个字节的数据,接收到的数据可分为3种情况:数值大于0xA0时,说明该字节是某汉字两字节数据中的一个字节;数值为0x20~0x7f时,表示该字节是可打印的ASCII码字符;数值小于0x20时,表示该字节是不可打印的数值,可用这36个数值作为界面操作的控制命令字节。连续接收完两个数值大于0xA0数据时,就可以转换成某个汉字;每接收到一个数值为0x20~0x7f的数据时,就可以转换成某个ASCII码字符;每接收到一个数值小于0x20的数据时,就可以翻译成某个操作命令,进行相应的控制操作。图4为键盘接口操作中断流程。

  

  3.3 通过触摸屏进行界面操作

  通过触摸屏进行界面操作时,手写识别微控制器ePH1200AQ将手写的轨迹封包后发送到单片机的串口1。操作过程中的数据主要包括输入汉字时,识别输入的笔画,向单片机发送候选字;画图时,实时发送屏幕触点的坐标;触控时,发送触控点的坐标。ePH1200AQ的通信协议命令格式如表1所列。

  

  表1中的识别型态命令(0x10)的识别型态定义值定义了可以识别的字集,包括汉字一/二级字库、大小写英文字母、数字、符号、预设手势、平假名和片假名。

  ePH1200AQ与单片机串口1通信,发送的是命令封包,需要考虑封包的帧定位,确定封包的包头和包尾。表1中的命令格式中,封包长度最长的命令为“发送候选字阵列”命令(命令代码为0x18),ePH1200AQ发送的候选字个数最多为10个,每个候选字为两个字节的数据,该命令的最大长度为25字节,可创建一个具有25个元素的数组(uartl_RX_buffer[25])作为命令缓存。

  结语

  本文设计了一种以C8051F120作为核心处理器的嵌入式彩色图形显示系统,其突出的优点是实时性强、接口电路简单、可扩展性强。该系统集成度高,携带方便,实用性强,在很多领域都具有应用性,具有一定的研究和应用价值。

关键字:C8051F120  嵌入式  显示 编辑:探路者 引用地址:基于C8051F120核心的嵌入式彩色显示系统设计

上一篇:汽车USB电源电路
下一篇:TI推出最新 WEBENCH 工具 - 系统电源建筑师

推荐阅读最新更新时间:2023-10-18 16:51

高速控制方案LED显示屏解决方案
  图1是高速控制方案LED显示屏电路原理。采用MCS51系列单片机对LED显示屏进行控制;随机存储器62512用作LED显示屏的数据存储器,存储待显示内容的字模数据;采用8行扫描方式,多片LED点阵片共用1组行驱动电路;每片LED点阵片都有一组列驱动电路,用74LS377作为列驱动的锁存器,CPU通过并行总线给列驱动电路的锁存器写字模数据;地址译码电路,用于产生LED点阵片行驱动电路和列驱动电路的片选地址。   图1 高速控制方案LED显示屏电原理   本方案的特点有两个:第一,虽然CPU还是通过并行总线给列驱动电路的锁存器写字模数据,但是锁存器的锁存信号改用了CPU的控制信号RD,而不是常规用法的W
[电源管理]
高速控制方案LED<font color='red'>显示</font>屏解决方案
自学单片机编程之数码管显示
对于我以前学习过的东西以周记的形式进行总结整理! 当我对于流水灯和一些基础的C语言知识后,我们就要和数码管打交道了,数码管是显示数字的一种媒介,简单的说就是八个二极管通过亮灭来显示数字符号,是多个二极管更高级的表达方式。 现在我们用的基本都是共阴或者共阳数码管,就是八个发光二极管的阴极或阳极在数码管内部连在一起,我们只需要用控制八个二极管的引脚来控制每个二极管的电压高低来控制二极管的亮灭,从而显示出不同的数字或符号。注意的共阴数码管是高电平点亮,共阳数码管是低电平点亮。(主要是模电知识:发光二极管原理) 首先学会控制一个数码管 P0是控制数码管内部8个发光二极管亮灭的I/O控制口 上面uns
[单片机]
自学单片机编程之数码管<font color='red'>显示</font>
基于嵌入式Linux的无纸记录仪通信设计
    在工业自动化控制系统中,记录仪起着十分重要的作用,它可以实时采集、监测和记录一些影响工艺过程和产品质量的重要参数,被广泛应用于石化、冶金、电力、机械、医药、轻工业等行业。随着电子技术的不断发展,记录仪已从传统的有纸模拟式发展到如今的无纸数字式 。与传统的有纸记录仪相比,无纸记录仪无机械磨损、显示直观、使用方便、故障率低和设备耗材少,因此被越来越多的应用于工业控制领域。       随着工业过程自动化的高速发展,企业对无纸记录仪提出了越来越高的要求,基于8位单片机的无纸记录仪的功能已远远达不到用户的要求。嵌入式ARM微处理核的32位RISC处理器以其强大的性能丰富的接口以及优异的性价比等诸多优势,而被越来越多的应用于无纸记录
[嵌入式]
汽车LED调光调色筒灯与LED大显示屏的时序研究
  CYT近日推出全数字调光控制的调光色筒灯,受到了较高的关注。为此,我们认为新一代的智慧型家居产品,会在LED照明普及阶段的后期获得较强的差异化竞争力。   可以预测的是,LED的发展可能需要经历3个阶段:培育阶段:普及阶段:差异化阶段。培育阶段已俨然过去,时间点应该是2008年到2012年;普及阶段以2012为时间点,也即将到来,普及风暴会在普及阶段的末期困扰各生产厂商,如何突出同质化?我们认为将LED照明纳入智慧型家居和智慧型商业照明是一个很好的出路。   调光调色筒灯正是基于这样一个目的而诞生的,我们将“调光调色”技术融入到筒灯上以便为该产品赋予更多的附加值。我们对LED调光调色进行了深入的分析,即这是一个产品
[电源管理]
汽车LED调光调色筒灯与LED大<font color='red'>显示</font>屏的时序研究
日产智能后视镜,显示屏占领车内新高地
随着车载系统技术的发展,显示屏在汽车内饰中占据的领土越来越多了,先是中控台、而后是仪表盘,而下一个即将被占据的是,车内后视镜。 在上周末开始的日内瓦车展上,日产展示了一项最新研发成功的技术,很小,却很实用:一个带着宽屏LCD显示屏的智能车内后视镜。显示屏与一个安装在车辆后方的摄像头相连,可以实时显示摄像头所监控到的画面。 智能车内后视镜 摄像头可以持续拍摄车辆后方的路况,并将拍摄到的画面实时传递到显示屏上,因为安装在车辆后方,摄像头有着比后风挡玻璃更宽的视野范围,因此,驾驶员可以借助摄像头看到原本处于视野盲点处的车辆和交通状况。 不过,显示屏并没有完全取代后视镜。在后视镜下方有一个按钮,可以让后视镜在传统的反光
[嵌入式]
ST收购专注于Arm微控制器集成开发环境的嵌入式公司Atollic
电子网消息,横跨多重电子应用领域、全球领先的半导体供应商意法半导体(STMicroelectronics,简称ST)今天宣布收购软件开发工具专家Atollic公司。 Atollic开发出了业内知名的获得高度好评的TrueSTUDIO®集成开发环境(IDE),专注Arm® Cortex®-M微控制器的嵌入式开发社区,例如,意法半导体的市场领先的STM32系列微控制器(MCU)。 意法半导体是世界顶级的32位微控制器厂商,拥有强大的软硬件开发生态系统,能够帮助开发者加快并简化应用开发设计,而TrueSTUDIO的加入将会进一步强化意法半导体的生态系统。由一支资深、敬业的世界一流软件工具专家设计开发,TrueSTUDIO是业界
[半导体设计/制造]
无处不在的嵌入式技术-嵌入式Windows XP
数字和网络越来越多的渗透到我们生活的时候,无处不在的嵌入式设备正在你的周围,虽然大多数时间没有意识到,但这些嵌入式设备确实在并不断渗入到我们的日常生活。最显而易见的方面包括正在如火如荼开展的数字电视革命,信息和数据在数字电视网络上大行其道。亚洲领导着全球IPTV的革命,嵌入式软件就像三星的Anyview TV和IP机顶盒(IP-STB)在新一代网络媒体设备中扮演的重要角色一样,已演变成数字家庭的完整部件。数字录像机和高清晰DVD播放器也已经逐渐进入我们的居家中。在工作中,我们拥有兼容Windows Vista的LCD网络投影仪。在路上,便携式导航设备已经成为小型汽车的标准配置,而对GPS设备和智能手机的需求也在持续增长。
[嵌入式]
BOE(京东方)亮相2023世界显示产业大会 以创新科技推动产业高质量发展
9月7日-8日,2023世界显示产业大会于成都举办,大会以“显示无处不在,创享未来世界”为主题,吸引众多业界知名专家和企业参会,共同探讨产业未来发展方向 。BOE(京东方)董事长陈炎顺应邀出席大会,并发表题为《开放合作创新 产业高质发展》的开幕演讲,分享了BOE(京东方)对显示产业可持续发展的创新实践及战略思考,引发广泛共鸣。同期还评选出了本届显示产业大会的创新成果,BOE(京东方)110英寸 UB Cell和BOE(京东方)车载智慧驾舱分获“十大创新技术(产品)”和“十大创新应用”两项殊荣,展现出BOE(京东方)在新型显示领域的强劲创新实力。 2023世界显示产业大会 陈炎顺在开幕演讲上表示,全球显示产业在过去一年多经
[家用电子]
BOE(京东方)亮相2023世界<font color='red'>显示</font>产业大会 以创新科技推动产业高质量发展
小广播
最新电源管理文章
换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved