热搜
您的位置:首页 >> 游戏

基于S3C44BOX的键盘接口设计消费电

2019年02月27日 栏目:游戏

基于S3C44BOX的键盘接口设计 - 消费电子 - 电子工程矩阵键盘循环扫描的识别方法,分两步进行:①识别键盘那一行的键被按下。让所有

基于S3C44BOX的键盘接口设计 - 消费电子 - 电子工程

矩阵键盘循环扫描的识别方法,分两步进行:①识别键盘那一行的键被按下。让所有列线均为低电平,检杳各行线电平是否为低。如果有行线为低,则说明该行有键被按下,否则说明无键被按下。②如果某行有键被按下。识别键盘那一列的键被按下(亦称之为扫描法)。逐列置低电平,并置其余各列为高电平,检查各行线电平的变化。如果行电平变为低电平.则可确定此行此列交叉点处按键被按下。

3 S3C44BOX与键盘硬件接口电路

S3C44BOX核心ARM板具有71个多功能输入/输出脚,包含在以下7组端口中:1个lO位输出端口 A、1个11位输出端口B、1个16位输入/输出端口c、2个8位输入/输出端口D和G、2个9位输入/输出端口E和F。从端口A~G的功能描述看出.在一般的应用中,PA作为地址线使用;PB作为板块bank选择线和SDRAM的接口线使用;PC可以作为数据线、I2S接口、或LCD数据线等使用;在系统具备LCD的情况下,PD主要作为LCD的信号线使用;PE可以作为串口信号线和定时器输出使用;PF和PG则是多功能I/O口。在ARMsys平台中,很多端口线已被指定了一定的作用,例如PA,PB,PC,PD等;再者PF口集中分布在芯片右侧引脚上,便于硬件连接。因此,在此选取PF口作为检测键盘端口,并设定PF0~PF3为输出扫描码的端口,PF4~PF7为键值读入口。

4 系统的软件设计

键盘的扫描程序采用C语言编写。主要由三个部分组成:与S3C44BOX硬件有关的初始化程序、应用主程序、读键子程序。在编写与S3C44BOX硬件有关的初始化程序时主要是对S3C44BOX内部各寄存器进行初始化.首先通过设置PCONF(端口配置)寄存器,来实现端口功能配置。然后再分别设置PDATF(端口数据)及PUPF(端口上拉设置)寄存器。初始化设置程序如下:

//设置PF0~3为输出口(列线),PF4~7位输入口

rfPCONF = Ox55:

//设置PF0~3作为输出口输出扫描码

rPDATF = 0xf0;//PFO~3全写入0

//设置PF4~7作为输入口读入键值

Keyvalue = (rPDATF Oxf0) 4;

//设置内部上拉电阻

rPUPF = OxOO.//使能PFO~7的内部上拉电阻

主程序以一定的时间间隔反复调用读键字程序.从而实时响应键入。主、子程序流程图如图2、3所示。

冬天感冒头痛吃什么药
国家卫健委流感诊疗方案
治疗小儿便秘