新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > NEC单片机的FIP应用

NEC单片机的FIP应用

作者:时间:2012-11-26来源:网络收藏

1 概述

本文引用地址:http://www.eepw.com.cn/article/170681.htm

日本公司生产的μPD780208系列8位属于78K/0家庭中功能较强的一种系列。根据内部集成的ROM和RAM容量的不同,μPD780208系列分为5个型号,μPD780208芯片是最高型号。该芯片内部集成了8位78K0CPU内核、60kB的ROM和2192B的RAM之外,还有1个显示驱动/控制器、8位A/D转换器、2个串行I/O口、5个定时/计数器、3个定时器输出、1个可编程时钟输出、1个可编程蜂鸣器输出、4个外部中断源、12个内部中断源和1个测试输入。ΜPD780208支持双时钟,其电源电压范围为2.7~5.5V,可设定2种待机模式。其中的(Fluorescent

Indicator Panel)显示控制/驱动器是μPD780208系列所特有的,它的主要功能有自动读取显示数据,以实现硬件自动显示刷新功能;控制显示9~40段和2~16位;通过编程自由设定位信号输出时序;并可编程调节8级显示亮度。另外,μPD780208的显示时序中还包含有键盘扫描时序,可输出键盘扫描信号;并具有较高的驱动能力,可直接驱动FIP显示器。

本文主要通过笔者在项目中的实际,给出将μPD780208中的FIP显示控制/驱动器用于显示和键盘扫描结合的方案。

2 设计方案

在笔者设计的项目中,要求μPD780208硬件平台有12位的9段VFD显示器和8×4的键盘输入,如果按照常规设计方案,由于显示控制与键盘扫描控制是相互独立的,键盘扫描需占有一个定时器。而本方案则使用显示控制/驱动器提供的键盘扫描时序来扫描键盘,因而不占用定时资源。这使是该设计方案的优点所在。(系统所用的晶振频率为4.9152MHz)。

2.1 硬件连接

图1所示是μPD780208的FIP显示电路的结构原理图。时将显示端口FIP0~FIP11接VFD显示器的位控制器T0~T11,FIP12和P80~P87接VFD显示器的段控制端S0~S8。μPD780208的显示驱动器的驱动能力很强,因而可以直接连接VFD而无需驱动电路。端口P110~P117接键盘的8根扫描线,端口P120~P123接键盘的4根回读线。

2.2 初始化设置与资源分配

合理地设置显示模式寄存器DSPM0和DSPM1可将显示方式设置为12位9段模式,这时FIP显示RAM地址为FA60H~FA6BH和FA70H~FA7BH。FIP控制器的时序图如图2所示。图中n=11,TDSP为1位显示周期(2048/4.9152MHz=416.7μs),TKS为键盘扫描周期(TKS=TDSP),TCYT为完整显示周期(TCYT=TDSP×(12+1)),TDIG为位信号脉冲宽度(可编程改变)。

在FIP显示周期中,当处在键盘时序时,键盘扫描标志KSF被置1,其它时间被清零。当KSF置1时,将产生键盘扫描中断INTKS。在中断处理程序中进行键盘扫描和回读可用软件来设计。键盘扫描必须在KSF为1时进行,否则会造成显示混乱。1次INTKS的时间是416.7μs,这段时间可能来不及扫描完所有键。因此,该方案采用1次中断扫描一半键盘,2次中断完成一遍扫描的方式。

键盘的消抖动问题在扫描中解决,方法是当同一位置连续3次检测到信号,即在4个TCYT间隔(4×TCYT=21.667ms)中信号一直有效时,才判断该键被按下,否则判为抖动干扰。

3 软件设计

3.1 相关的数据结构和变量

使用的数据结构和变量的定义说明如下:

char PreKeyStatus[8]; /*前一次8列键的状态存入数组的低4位*/

char CurKeyStatus[8]; /*当有8列键的状态存入数组的低4位*/

char ScanData; /*当前用于扫描的数据*/

char RetData; /*临时存储回读的数据*/

char KeyBuff[10]; /*键盘缓冲区*/

char Khead; /*键盘缓冲区头指针*/

char Krear; /*键盘缓冲区尾指针*/

char ChatterCount; /*消抖动计数器*/

char ScanEnd; /*一遍扫描结束标志*/

char KeyChanged; /*按键改变标志*/

const char DisplayCode[0][2]; /*0~9的显示编码,每个编码占2字节*/

蜂鸣器相关文章:蜂鸣器原理

上一页 1 2 下一页

关键词: 应用 FIP 单片机 NEC

评论


相关推荐

技术专区

关闭