欢迎来到天天文库
浏览记录
ID:27545771
大小:284.01 KB
页数:16页
时间:2018-12-04
《飞思卡尔8位单片机mc9s89键盘中断模块与ad转换模块》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第九章键盘中断模块与A/D转换模块主要内容键盘基本问题与GP32的键盘中断口汇编语言键盘中断模块编程实例08C语言键盘中断模块编程实例MC68HC908GP32MCU内部的A/D转换模块MC68HC908GP32MCUA/D转换编程实例《嵌入式应用技术基础教程》课件9.1键盘基本问题与GP32的键盘中断口9.1.1键盘的基本问题(1)键的识别如何知道键盘上哪个键被按下就是键盘识别问题。键盘识别主要有行扫描法与行反转法。(2)抖动问题当按下一个键时,会出现所按的键在闭合位置和断开位置之间跳几下才稳定到闭合状态的情况,当释放一个按键时也会出现类似的情况,这就是抖动问题。解决抖动的
2、方法通常是延迟等待抖动的消失或多次识别判定。(3)重键问题有两个或两个以上按键同时处于闭合状态的处理问题。在软件上,处理重键问题通常有连锁法与巡回法。《嵌入式应用技术基础教程》课件9.1键盘基本问题与GP32的键盘中断口+5V5K×4行线m1m2m3m4列线n1n2n3n44×4键盘结构《嵌入式应用技术基础教程》课件9.1键盘基本问题与GP32的键盘中断口9.1.2MC68HC908GP32单片机的键盘中断模块(1)键盘状态和控制寄存器(KeyboardStatusandControlRegister,INTKBSCR)INTKBSCR包含了键盘中断请求标志、屏蔽键盘中断请求、
3、定义键盘中断的触发方式、清除键盘中断标志等功能。其地址是$001A。《嵌入式应用技术基础教程》课件数据位D7D6D5D4D3D2D1D0定义KEYACKKIMASKKMODEK复位00000000键盘中断屏蔽位键盘中断引脚触发方式位键盘(中断)应答位键盘(中断)标志位未用9.1键盘基本问题与GP32的键盘中断口(2)键盘中断允许寄存器(KeyboardInterruptEnableRegister,INTBIER)INTBIER的各位决定所对应的引脚是否允许中断进入。地址为:$001B。《嵌入式应用技术基础教程》课件数据位D7D6D5D4D3D2D1D0定义KBIE7KBIE6
4、KBIE5KBIE4KBIE3KBIE2KBIE1KBIE0复位00000000D7~D0,分别记为KBIE7—KBIE0,可读写。若KBIEx=1,表示相应引脚KBIExpin(也就是引脚PTAxpin)被定义为中断引入引脚,反之则不能作为中断输入引脚。复位时,全为0。9.1键盘基本问题与GP32的键盘中断口(3)键盘中断编程相关问题要进行键盘中断方面的编程,需了解下列问题:1)键盘中断矢量地址:$FFE0—$FFE1。2)键盘中断初始化顺序:先设置键盘状态和控制寄存器(INTKBSCR),后设置键盘中断允许寄存器(INTKBIER)。3)为避免键盘误中断,在键盘初始化时,建
5、议按下列顺序:令IMASKK=1(屏蔽键盘中断)、设置KBIEx=1(定义中断引脚)、写ACKK=1(清除键盘中断请求)、令IMASKK=0(开放键盘中断)。也可以用下述方法:通过DDRA定义PTAxpin为输出、写1到PTAx(使得PTAxpin为高电平)、设置KBIEx=1(定义中断引脚)。4)注意在中断子程序中的入口和出口参数。5)在Wait和Stop模式下,键盘中断仍可发生。《嵌入式应用技术基础教程》课件返回9.1键盘基本问题与GP32的键盘中断口9.2汇编语言键盘中断模块编程实例4×4键盘与单片机接法示例《嵌入式应用技术基础教程》课件VDD单片机内部上拉电阻123A单
6、片机PTA口引脚行线m1PTA0456Bm2PTA1789Cm3PTA2*0#Dm4PTA3列线n1n2n3n4PTA7PTA6PTA5PTA49.2汇编语言键盘中断模块编程实例(1)键值计算方法按上图的接法可以得出键值表,如下图。键值可以通过扫描法获得,由键值通过查表法编程得到定义值。9.2.1按键识别与键盘定义子程序《嵌入式应用技术基础教程》课件1EE2DE3BEA7E4ED5DD6DDB7D7EB8DB9BBC7B*E70D7#B7D77定义符键值键盘定义(2)键盘编程汇编语言子程序9.2汇编语言键盘中断模块编程实例(1)键盘中断编程汇编主程序(2)键盘中断编程的PC机方
7、的VB界面与程序9.308C语言键盘中断模块编程实例9.3.1按键识别与键盘定义函数9.3.2键盘中断编程08C语言举例(1)键盘中断编程实例的08C主函数(2)键盘中断编程实例的08C中断矢量表文件9.2.2键盘中断编程举例《嵌入式应用技术基础教程》课件返回9.308C语言键盘中断模块编程实例9.4MC68HC908GP32MCU内部的A/D转换模块9.4.1A/D转换相关基础知识A/D转换模块(AnalogToDigitalConvertModule)即模数转换模块的功能是将电压信号转换
此文档下载收益归作者所有