找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1676|回复: 0
打印 上一主题 下一主题
收起左侧

嵌入式三级中的一个题目。

[复制链接]
跳转到指定楼层
楼主
ID:103568 发表于 2016-9-1 14:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
嵌入式三级中的一个题目,麻烦大神看下?
“ 输入密码的键盘采用非标准键盘键盘接口设计成4x3的阵列,若设计师选用了GPE0~GPE3来输出键盘行扫描信号,选用GPD0~GPD2来输入键盘列信号,请补充完善下面的键盘扫描函数:
#define KEYOUTPUT(*(volatile INT8U *)0x56000044)//定义GPE数据端口
#define  KEYIUTPUT(*(volatile INT8U *)0x56000034)//定义GPD数据端口

INT16U ScanKey()
{
INT16U key=0xFFFF;
INT6U i;
INT8 temp=0xFF,output;
rGPDCON=rGPDCON&0xFFFFFFC0;
rGPECON=(rGPECON&0xFFFFFF00)|0x00000055;

for(i=1;((i<=8&&(i>0));i<<=1))
{
output|=0xFF;
output&=(~i);
KEYOUTPUT=output;
temp=KEYIUTPUT;
if((temp&0x07)!=0x07);
{
key=(~i);
key<<=8;
key|=((temp&0x07)|0xF8);
return(key);
}
}
return 0xFFFF;
}
”若第三行第二列的键被按下,则返回值是多少?

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表