6228|6

1282

帖子

10

TA的资源

五彩晶圆(初级)

楼主
 

键盘扫描和中断程序的实现 [复制链接]

第一部分是键盘扫描
用到8962的所有的按键,扩展了四个IO口,用于LED的显示。UP键按下时,四个灯都亮,液晶显示由OFF变为ON;DOWN按下时,前两个灯灭,后两个灯亮,液晶显示由OFF变为ON;LEFT按下时,后两个灯灭,液晶显示由OFF变为ON;RIGHT按下时,四个灯全灭,液晶显示由OFF变为ON;
 大家就可以按照这个程序稍微修改下就可以实现跑马灯。
扩展部分:这里我直接用的是GPIOPinWrite(GPIO_PORTF_BASE, LED0 | LED1, LED0 | LED1 );,大家可以改成按下键时亮,不按时灭,可以用GPIOPinWrite(GPIO_PORTF_BASE, LED0 | LED1, (b & LEFT)  ?  ~LED0 | ~LED1: LED0 | LED1) ,这样就可以实现按下亮,不按下不亮的功能了。大家还可以在按下按键时,让灯闪烁几下后一直亮,只要加一个延时,就应该可以实现了。

 

键盘扫描程序.rar (114.71 KB, 下载次数: 170)

 


第二部分是键盘中断
 利用中断实现不同按键下输出或者显示不同的按键,我在程序里,是通过灯的闪烁次数显示按键的不同。
扩展部分:在这里大家有没有考虑到arm的优点——嵌套中断,是不是可以用嵌套中断实现这个效果!!

 

键盘中断程序.rar (54.66 KB, 下载次数: 116)


欢迎大家讨论!程序程序可能很简单,但是我们把这个问题扩展开来应该能学到好多的东西!大家还有什么可扩展的想法,大家一起学习!!

对于中断必须在.s声明下,不然肯定不好使,这里已经有人发表中断这方面的文章了,大家可以去看看。具体我就不链接了。

最新回复

不错的分享,键盘扫描程序用处还是很大的。   详情 回复 发表于 2019-7-17 16:54
 
点赞 关注

回复
举报

1282

帖子

10

TA的资源

五彩晶圆(初级)

沙发
 

这帖就这样沉底了??

哎,大家讨论下如何用简介的编程方法实现灯的控制,灯只是一个小小的控制对象,可以应用到很多领域。大家多交流下

 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

板凳
 

hao

thank you very much
 
 
 

回复

7

帖子

0

TA的资源

一粒金砂(初级)

4
 
thx for sharing...........
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

5
 

顶》》》》》》》》》

 
 
 

回复

10

帖子

0

TA的资源

一粒金砂(中级)

6
 

不错的,学习一下

 

关于键盘扫描的问题,最好的是那种方式?

 
 
 

回复

2618

帖子

0

TA的资源

纯净的硅(高级)

7
 

不错的分享,键盘扫描程序用处还是很大的。

 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表