关于ARM7的键盘与VFD显示器接口技术

发布者:RainbowGarden最新更新时间:2012-12-08 来源: 维库开发网关键字:ARM7  VFD  显示器接口 手机看文章 扫描二维码
随时随地手机看文章
  引 言

  仪表行业以及工业生产过程对实时性、处理速度、智能化等方面有了更高的要求,而ARM微处理器具有功耗低、指令吞吐量高、实时中断响应、处理器宏单元性价比高等特点,因此,将ARM微处理器引入产品和工业生产的开发设计中已经成为一种必然趋势。

  在工业控制和产品设计中,一般都要求具有供操作的键盘和可视化界面。传统显示模块的设计一般都是采用I/O口外扩驱动电路连接而成,显示器一般都采用LED或LCD,要么成本低但实现起来比较复杂,要么实现起来简单成本却很高。笔者综合考虑了成本、实现的难易程度、功能以及稳定性等方面的要求,提出了一种实现起来较容易且具有较高对比度和精度的VFD显示的方法。

  1 硬件电路的实现

  考虑到未来市场对功耗、处理速度、实时性、多功能、多任务处理等方面会有更高的要求,本设计采用基于周立功公司MiniARM的M2020—FNU20嵌入式核心板(微处理器为LPC2220)及其M22A开发板。M22A开发板的板上资源主要有:

  ◆μC/OS—II实时操作系统;

  ◆TCP/IP协议、FAT32文件管理系统;

  ◆UART、I2C、SPI通信接口;

  ◆JTAG接口支持在线调试;

  ◆工业级10M以太网控制接口CSB900A—IQ;

  ◆2 MB NOR Flash程序存储器等。

  另外,现代工业控制和产品生产大都需要可供操作的键盘以及可视化界面。本设计采用HTl6511芯片驱动键盘和显示。考虑到工业生产中各种不利环境的影响,本设计采用具有较高对比度,且具有很好的可靠性与环境适应性的VFD(真空荧光显示器)进行显示。HTl6511是一个典型的VFD驱动芯片,由5个led输出口、1个控制电路、1个显示存储器(内部)和1个按键扫描电路组成。微处理器通过三线串行接口对HTl6511进行串行数据输入、输出。图1是系统硬件电路框图,主要包括LPC2220与驱动芯片HTl6511的连接。HTl6511与VFD显示器的连接,使用HTl6511外扩的12×4的按键扫描电路以及指示灯和开关电路。


  2 软件设计

  软件采用模块化设计方法,使用基于优先级的系统调度法来实现各个模块。每个模块设置为一个任务,如taskO为读键值模块,taskl为显示模块等。给每个模块设置一个固定的优先级,当任务执行完后自动挂起,挂起的时间长短可以自己设定。任务挂起后进入等待状态,挂起时间一到,任务自动进入就绪状态。

  开发板内嵌了μC/0S—II实时操作系统。本设计采用可剥夺型内核。若系统正在执行一个优先级较低的任务,且有一个或多个优先级较高的任务就绪时,优先级较低的任务将被打断,去执行优先级最高的任务。执行完成后,系统不会马上返回中断的地方,而是执行当前就绪任务中具有最高优先级的任务;当没有更高优先级任务就绪时,系统才返回原来中断的地方。若程序中某些模块(如读键值、推显等)不希望被打断,就需要在进入该模块的开始处关闭中断,执行完后再打开中断。以下是各个功能模块的实现。

  2.1 HTl6511的读/写程序

  图2为HTl6511的数据读/写时序。其中,tcw为时钟脉冲宽度,最小值为400 ns;tsu为数据上传时间,最小值为100 ns;th是数据保持时间,最小值为lOO ns;tcs为时钟调整时间,最小值为1μs;tph1和tplh都是数据传递延迟时间,tph1最大值为300 ns,tplh最大值为100 ns。


  从图2中可以看出,读/写数据时必须置CS为低;写数据(D1)过程中,在时钟(CLK)的下降沿往数据线上送数,送完数后需要将CLK置高,且要保持一个tcw的时间;在读数据时,需要先将CLK置高一段时间,然后再拉低一段时间,才开始从数据线上读取数据。[page]

  以下程序为向HTl6511写一个字符:




  2.2 主要驱动程序

  驱动程序主要包括显示驱动和按键驱动。

  图3为HTl65l1的显示驱动一般命令时序。图中,命令1设置显示模式;命令2设置读/写数据模式;命令3设置读/写数据的起始地址;数据1到n为需要读/写的数据;命令4设置VFD的显示亮度。


  显示驱动程序主要包括向HTl6511写命令和写控制显示的数据;而按键驱动程序则主要是从HTl6511读取键值,再拼接为有效键值。由图3中时序可知,应先设置显示模式,然后设置读/写数据模式和读/写数据的起始地址,再发送数据,最后设置显示亮度。每发送一个命令或数据之后都需要一段延时。[page]

  显示驱动程序为:





  结 语

  在实际应用中,只需要将HTCS、HTCLK、HTD0、HTDI定义为微处理器的一般双向I/O口。根据使用的VFD真值表确定显示数据或字母的字形码。用一个数组disp口来存储这些字形码,并使用上述的update_disp()函数将数组发送到HTl6511驱动芯片,即可完成显示。对于按键扫描,使用read_key()函数已经读到按键值,并放在data寄存器中。

  本设计采用ARM微处理器实现了多功能键盘显示,具有实现容易、性价比高、显示精度高、显示对比度高、反应速度快等优点。因此,该设计适用于很多要求较高的工业应用场合。HTl6511的驱动模块适用于各种类型的微处理器。本设计采用ARM7微处理器来实现,主要是考虑到现代产品和工业过程设计中对功耗、处理速度以及功能的高要求。本设计具有一定的通用性,适应工业生产发展的总趋势。

关键字:ARM7  VFD  显示器接口 引用地址:关于ARM7的键盘与VFD显示器接口技术

上一篇:嵌入式GPS语音导航系统中MP3的解码与播放
下一篇:分析Linux中Spinlock在ARM及X86平台上的实现

推荐阅读最新更新时间:2024-03-16 13:14

基于LPC2138的中文输入系统设计
引言 目前,以液晶和数字键盘实现的人机交互式界面在智能终端中广泛采用。在不同的应用场合,对人机界面的要求也不同,一些情况下只要求简单参数的显示和选择,而在一些信息终端中还要求中文的输入。因此,研究基于单片机的中文输入方法,对于各类电子装置的开发具有一定的现实意义。本系统基于ARM7微控制器LPC2138,通过扩展4×4键盘和液晶实现了T9中文输入系统的设计。 1 LPC2138简介 Philips公司的32位ARM7微控制器LPC2138具有强大的存储空间,内嵌32 KB片内静态RAM和512 KB的Flash存储器;可以实现在系统可编程(ISP)、在应用可编程(IAP);2个8路10位A/D转换器,1个D/A转换器,转
[单片机]
基于LPC2138的中文输入系统设计
基于ARM7的指纹考勤机设计
  引言   生物识别技术依靠其鉴别的唯一性和可靠性,经过近十年的发展,应用已经越来越广泛和成熟,目前指纹识别技术已趋向民用市场普及,指纹考勤机就是其主要的应用之一。笔者采用功能强大的S33C44B0X处理器设计了一款指纹考勤机,在功能、接口、价格等方面都有着极大的优势。   所设计的考勤机具有指纹采集和刷卡采集两大基本功能。指纹采集部分采用CMOS光学传感器。刷卡采集相应的射频模块,它可以通过串口的方式与CPU通信。考勤机和上位机的通讯则采用通用的模拟USB接口,有效地达到了即保证低成本又方便用户使用的目的。另外还加入了USB充电,实时时钟显示,语音提示等众多人性化功能。系统的框图如图1所示。   图1 系统功能框
[单片机]
基于<font color='red'>ARM7</font>的指纹考勤机设计
基于DSP的液晶显示器接口设计及控制实现
  1 引言      DSP即数字信号处理器,是一种特别适用于数字信号处理运算的微处理器,速度快,功能强,广泛应用于图形图像处理、语音处理、仪器仪表、通信、多媒体及军事等领域。液晶显示器由于具有功耗低、价格低、驱动电压低、接口方便、使用寿命长等特点以及优越的字符和图形显示功能,在各种图形显示、人机交互中得到广泛应用。 本文将给出 TMS320LF2407 型DSP(以下简称DSP)控制北京青云公司生产的LCM320240液晶显示屏的软硬件设计实例,说明如何通过DSP控制液晶显示模块。同时,由于程序采用系统设计C语言,因此对其他型号的DSP与LCD接口设计和控制实现也有一定的参考价值。 2 TMS320LF240
[嵌入式]
PT6312 VFD驱动原理与应用分析
PT6312原理与应用分析 硬件结构: VFD即真空荧光显示屏,其结构和原理可参考 单片机 音响技术网 -VFD应用指南资料,里面详细介绍了VFD的原理结构,应用等等。 VFD显示高贵华丽,常应用在DVD,高档的功率放大器,电磁炉,电冰箱等电器产品中用于用户操作显示。而与各种VFD显示配套的驱动常用PT6312,PT6311芯片,驱动芯片的硬件结构主要由扫描信号发生器、串行通信接口、控制模块、显示存储器、按键扫描值寄存器、通用输入寄存器、LED驱动器、VFD段/位驱动器等构成。本文着重讲述PT6312即VFD驱动的 单片机 编程应用。首先认识下PT6312连接VFD的电路原理框图如图1所示。 图(1) PT6311电路图 由
[单片机]
PT6312 <font color='red'>VFD</font>驱动原理与应用分析
记录一种数据的传送方式,ARM7传送数据到GPIO
/*********************************************************************** * 名称:AD9850_SendToGPIO() * 功能:发送数据到GPIO * 入口参数:DataTemp:发送的数据 * 出口参数:无 ***********************************************************************/ void AD9850_SendToGPIO(uint8 DataTemp) { int8u GPIO = {D0,D1,D2,D3,D4,D5,D6,D7}; //D0~D7分别为IO口
[单片机]
ARM全解析 ARM8/ARM7/A9/A15等区别
Cortex-A50是继Cortex-A15之后的又一重量级产品,将会直接影响到主流PC市场的占有率。围绕该话题,我们今天不妨总结一下近几年来手机端较为主流的ARM处理器。    以由高到低的方式来看,ARM处理器大体上可以排序为:Cortex-A57处理器、Cortex-A53处理器、Cortex-A15处理器、Cortex-A9处理器、Cortex-A8处理器、Cortex-A7处理器、Cortex-A5处理器、ARM11处理器、ARM9处理器、ARM7处理器,再往低的部分手机产品中基本已经不再使用,这里就不再介绍。 ● Cortex-A57、A53处理器    Cortex-A53、Cortex-A5
[单片机]
ARM全解析 ARM8/<font color='red'>ARM7</font>/A9/A15等区别
采用Keil4为ARM7 (LPC2103)创建工程 及J-link调试
采用Keil4为ARM7创建工程,采用J-LINK调试,具体步骤如下: 在菜单里的Project里选择New uVision project...,选择正确的路径并命名保存; 在弹出来的对话框中选择CPU,NXP(founded by philips)- LPC2103; 在弹出的对话框按“yes”复制LPC2100启动文件到工程; 在Project里面选择Option for Target'Target 1'...,Target里面的IROM1要配置正确(0x0 0x8000),一般采用默认值就可以了;Output选择里面的Name of Executable的命名不能用点号;Debug里面的选择
[单片机]
ARM9处理器与ARM7处理器比较
ARM9系列处理器是英国ARM公司设计的主流嵌入式处理器,主要包括ARM9TDMI和ARM9E-S等系列。本文主要介绍它们与ARM7TDMI的结构以及性能比较。 以手机应用为例,2G手机只需提供语音及简单的文字短信功能,而目前的2.5G和未来的3G手机除了提供这两项功能外,还必须提供各种其他的应用功能。主要包括:(1)无线网络设备:手机上网、电子邮件及其他定位服务等功能;(2)PDA功能:含有用户操作系统(Windows CE、Symbian OS、Linux等)及其他功能;(3)高性能功能:音频播放器、视频电话、手机游戏等。在2.5G和3G的应用中ARM9已经全面替代了ARM7。因为ARM9的新特性能够满足各种新需求的同时减少
[单片机]
ARM9处理器与<font color='red'>ARM7</font>处理器比较
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
热门活动
换一批
更多
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

更多精选电路图
换一换 更多 相关热搜器件
更多每日新闻
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved