当前位置:首页 > 工业控制 > 工业控制
[导读]介绍了用isp可编程逻辑芯片设计机载导航系统键盘控制器的设计要点,给出了接口信号及驱动程序的核心代码。

摘要:介绍了用isp可编程逻辑芯片设计机载导航系统键盘控制器的设计要点,给出了接口信号及驱动程序的核心代码。该设计具有典型性、通用性和实用性,并可用到各种键盘控制器中。

    关键词:键盘控制器 在线可编程 扫描线 isp1016

1 键盘控制器的外部接口信号

无论在任何计算机系统中,键盘都是最重要的输入设备,但是普通键盘不能满足机载要求。笔者在新一代电子航空图导航系统中,用Lattice公司的ispLSI1016设计了一个4×5键盘控制器(以下简称KBC),经实际应用,该键盘控制器通用性较强。图1是其键盘和显示器外观示意图。

    一航情况下,KBC应该是CPU的一个外部I/O设备,它一方面监测各按钮状态,另一方面接受CPU的查询并主动向CPU请求中断。因此,外部接口信号分CPU接口信号和键盘按钮矩阵状态信号。图2为通用KBC外部接口信号示意图,其定义如下:

*Reset:复位,低有效。该信号有效时将异步复位内部所有寄存器,以对KBC进行初始化;

*CLK:工作时钟,频率为100kHz;

*CS:片选,低有效;

*RD:读信号,低有效;

*A0:片内地址,用于区分片内寄存器;

*INT:中断请求,高有效。当键盘控制器检测到有效按键时,该脚为高,当CPU读走按键编码时,KBC自动撤销中断请求;

*D4~D0:三态数据线;

*SL3~SL0:扫描输出,按键盘矩阵的列线;

*RL4~RL0:回复线,接键盘矩阵的行线。

实际上,大部分矩阵键盘的行列是可对换的。

2 KBC接口寄存器定义及驱动程序

KBC针对CPU接口设计有2个只读寄存器,即数据寄存器(Dreg)和状态寄存器(Sreg)。数据寄存器用于保持有效按键的编码值,该编码值就是按键所在的行列;而状态寄存器则用于保持按键的状态信息,以供CPU查询。当CPU访问KBC时(即CS和RD同时有效),adk A0=0,则访问数据寄存器,否则访问状态寄存器。表1、表2分别是数据寄存器和状态寄存器的定义。

表1 数据寄存器定义

D7 D6 D5 D4 D3 D2 D1 D0
X X X Col(列值) Row(行值)

表2 状态寄存器定义

D7 D6 D5 D4 D3 D2 D1 D0
X X X 0 0 0 0  

显然,KBC的编程可以有2种模式,一种是软件查询,另一种是中断驱动。由于本系统采用WindowNT为运行环境,KBC对应用程序透明,所以,将INT请求直接和CPU的某一空闲中断(IRQ9)相连接,以便使驱动程序能将KBC作为一个设备打开。在初始化加载时,应将对应中断触发设置为电平敏感。其VC核心代码如下:

#define SReg 0x401 //键盘状态寄存器地址

#define DReg 0x400 //键盘数据寄存器地址

BYTE SR,Key,Row,Col;

SR=inp(SReg)&0x1f;

//读数据寄存器,低6位有效

Col=Key>>3;

//右移3位,提取按键列值

Row=Key & 0x07;//提取按键行值

}

至此,就可根据Row和Col的值将它翻译为某一标准键,并存入NT键盘缓冲区。

3 KBC内部逻辑设计

内部控制逻辑设计的关键是掌握按键识别原理。图3所示是其键盘识别原理图。设计时,可将按键设置在行线、列线的交点上。行线通过上拉电阻接到VCC(+5V),无按键时处于高电平。有按键时行线电平状态由列线决定。所有列线均为高则行线高,任一列线为低则行线低。KBC处理的核心就在于确认某一行线为低时,能定位出对应的列线。

3.1 输出扫描线(SL3..SL0)

在设计输出扫描线时,可以使用一个2-Bit状态机Q5[L1..0]来依次轮流使扫描线输出为低电平。驱动时钟的周期为640ms,亦即每即扫描线持续640ms的低电平。将状态机的状态编码值和当前周期为低电平的扫描线序号对应起来,即可简化后续处理。图4是扫描线输出波形。注意,无论何种按键组合,在任一状态,有且仅有一个扫描线为低电平,否则后续处理将无法正确识别。

    3.2 键盘编码

处理回复线(RL4..RL0)时,应该对其中为低电平的行线进行编码。5个行线需要3-Bit寄存器,记为[RQ5..RQ0],其真值表如下:

[RL4..RL0] ->[RQ2..0]

----------------

[H,H,H,H,L] ->[0,0,0];0

[H,H,H,L,H] ->[0,0,1];1

[H,H,L,H,H] ->[0,1,0];2

[H,L,H,H,H] ->[0,1,1];3

[L,H,H,H,H] ->[1,0,0];4

当KBC确认是有效按键后,应把行列编码值放入缓冲,以供CPU读取,其逻辑表达如下:

式中,[KSL1,KSL0]是记录有效按键的扫描线编码,即当时的[QSL1..0]状态。

3.3 CPU的读操作

CPU读状态寄存器时,系统把中断请求寄存器INT的值送出,而读数据寄存器时,它将把FIFO缓冲的按键值送出,处理CPU读操作的表达式如下:

[D4..D0].oe=!CS & !RD; //寄存器由三态控制

[D4..D0]=(!A0 & [FIFO4..FIFO0])# //A0=0:送按键数据

(A0 & [L,L,L,L,INT]); //A0=1;送状态

INT.ar=!Reset #(!CS&!RD & !A0);//读数据寄存器时应撤销中断

3.4 键盘处理状态机

该状态处理机是KBC处理的核心。图5是其状态转移图,其驱动时钟应该比扫描周期快而且应该是它的整数倍。此处采用的80ms时钟周期是扫描周期的8倍。下面讨论其状态转移条件。

    S0:复位状态

1.记录当前扫描周期

2.if若有低电平的回复线then S1 else S0;

S1:

1. 启动延时(去抖)计数器,延时10.24ms

2. 无条件进入下一状态S2

S2:去抖状态

if去抖正确then S3

else S0

S3:确认状态

1. 将有效键值打入FIFO缓冲

2. 设置

4 改进建议

上述KBC完全可以满足一般系统对键盘的要求,但仍然可以改进以使之更加智能化。例如使CPU能够对KBC的读操作和写入控制字进行适当控制、使KBC可处理组合按键和按键连击、增加KBC多字节的缓冲等。上述功能完全可以根据设计者系统和应用程序的要求进行改进。本设计源代码使用的是ABLE硬件描述语言,对此感兴趣的同志可以和作者进行联系。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

在嵌入式系统开发中,程序烧录是连接软件设计与硬件实现的关键环节。当前主流的单片机烧录技术已形成ICP(在电路编程)、ISP(在系统编程)、IAP(在应用编程)三大技术体系,分别对应开发调试、量产烧录、远程升级等不同场景。...

关键字: 单片机 ISP ICP IAP 嵌入式系统开发

在最后一公里配送场景中,无人配送车需在复杂城市环境中实现厘米级定位与动态避障,这对导航系统的感知精度与实时性提出了严苛要求。激光雷达与超声波传感器因其互补特性,成为主流多传感器融合方案的核心组件。本文从技术原理、分区感知...

关键字: 无人配送车 导航系统

在科技飞速发展的今天,车辆管理领域正经历着一场深刻的变革。随着物联网、大数据、卫星定位等技术的不断成熟与应用,传统的车辆管理模式逐渐显露出其局限性。而北斗车辆管理系统的出现,犹如一颗璀璨的新星,为车辆管理带来了全新的理念...

关键字: 车辆管理 卫星定位 导航系统

​在极低光照环境下显著提升图像质量,超越传统计算机视觉技术。

关键字: AI ISP

当前端侧AI正在快速落地推进,而智能车载领域尤为活跃,特别是在国内市场,智能车载的快速发展引人注目。据Yole预测,2023年至2029年,全球车载摄像头市场规模将从57亿美元增至84亿美元。但目前车载视觉系统方案尚未统...

关键字: ISP AI视觉 飞凌微 图像传感器 CMOS SoC

随着数字成像技术的飞速发展,图像信号处理器(ISP, Image Signal Processor)在相机系统中的作用愈发重要。ISP主要负责对前端图像传感器输出的信号进行后期处理,以提升图像质量,使其在不同光学条件下都...

关键字: ISP ISP架构

北京2024年8月13日 /美通社/ -- 8月12日,2024浪潮信息区域ISP伙伴战略签约仪式成功举办,全国33家亿级和千万级元脑区域伙伴与浪潮信息签署战略合作协议。本次签约共覆盖全国13个省区,涉及互联网、电信、金...

关键字: ISP 模型 人工智能 开发平台

导航系统是一款结合了传感器、软件、多媒体功能和连接功能等复杂组件以及全球定位系统 (GPS) 技术以检测用户精确位置的电子设备。这些小工具为驾驶者提供准确、实时的导航信息,使他们能够更快、更安全地到达目的地,让他们的旅程...

关键字: 导航系统 传感器 TPE

随着无人机技术的不断发展,越来越多的无人机被应用于各种领域,如农业、测绘、物流等。而无人机的导航系统是实现无人机飞行的关键之一。一个优秀的导航系统可以提高无人机的飞行精度和稳定性,同时也可以确保无人机能够安全地飞行。本文...

关键字: 无人机 导航系统

伟创力凭借一流的道德、合规和治理实践恪守对商业诚信的承诺而获此嘉奖 上海2023年3月14日 /美通社/ -- 近日,伟创力(纳斯达克股票代码:FLEX)被 Ethisphere 认可为 2023 年工业制造领域全球最...

关键字: ISP 伟创力 FLEX 供应链
关闭