第7次单片机原理与应用键盘与显示课件.ppt
《第7次单片机原理与应用键盘与显示课件.ppt》由会员分享,可在线阅读,更多相关《第7次单片机原理与应用键盘与显示课件.ppt(52页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第7次单片机原理与应用键盘与显示第1页,此课件共52页哦可编程通用并行接口芯片可编程通用并行接口芯片82558255结构与引脚结构与引脚82558255用于扩展单片机并行用于扩展单片机并行I/I/O接口。接口。一、结构:一、结构:1.31.3个个8 8位并行位并行I/I/O接口接口PAPA、PBPB和和PCPC:包含包含I/OI/O数据锁存器,控制寄存器和状态寄数据锁存器,控制寄存器和状态寄存器。存器。2.22.2组控制:组控制:A A组:组:PAPA和和PCPC0 03 3;B B组:组:PBPB和和PCPC4 47 7:第2页,此课件共52页哦8255A的内部结构图的内部结构图第3页,此课
2、件共52页哦3.33.3种工作方式:种工作方式:方式方式0 0(基本(基本I/I/O方式)方式):A A口、口、B B口、口、C C口均为数据口均为数据I/OI/O。输出锁存,输入三态,。输出锁存,输入三态,不用联络信号。不用联络信号。适用于无条件或查询方式的数据传送。适用于无条件或查询方式的数据传送。方式方式1 1(选通(选通I/I/O方式):方式):A A口和口和B B口用于数据口用于数据I/OI/O,输入,输入/输出均锁存,输出均锁存,C C口用于口用于传送联络信号,读传送联络信号,读C C口可了解外设当前状态。口可了解外设当前状态。适用于查询或中断方式的数据适用于查询或中断方式的数据I
3、/OI/O。方式方式2 2(双向数据传送方式):(双向数据传送方式):A A口为数据口为数据I/I/O,B B口只能为方式口只能为方式0 0,C C口用作口用作A A口双向传口双向传送的联络信号线。送的联络信号线。适用于查询或中断方式的数据适用于查询或中断方式的数据I/OI/O。第4页,此课件共52页哦二、二、8255A的芯片引脚信号的芯片引脚信号4040脚脚第5页,此课件共52页哦引脚(引脚(4040脚):脚):1.1.数据线:数据线:D D0 07 7:传送计算机与传送计算机与82558255之间的数据、控制字和状态字。之间的数据、控制字和状态字。PAPA0 07 7 PB PB 0 07
4、 7 PC PC0 07 7:传送传送82558255与外设之间的数据和联络与外设之间的数据和联络 信息,信息,PCPC0 07 7可用作数据线或联络线。可用作数据线或联络线。2.2.地址线:地址线:CSCS:片选线片选线A A1 1、A A0 0:口选线,寻址口选线,寻址 PAPA、PBPB、PCPC数据口和控制口。数据口和控制口。3.3.读写控制线:读写控制线:RDRD、WRWR控制计算机与控制计算机与82558255之间的信息传送和流向。之间的信息传送和流向。4.4.复位线:复位线:RESETRESET高电平复位,使内部寄存器全部清零。高电平复位,使内部寄存器全部清零。第6页,此课件共5
5、2页哦三、例题:三、例题:例:例:求求82558255口地址:口地址:解:解:A A口口(7F00H)(7F00H);B B口口(7F01H)(7F01H);C C口口(7F02H)(7F02H);控制口控制口(7F03H)(7F03H)。P0 P2.780C51A0A1CS8255373Q0Q1ABABi i:15 14 1315 14 13 12 11 10 9 8 7 6 5 4 3 2 1 012 11 10 9 8 7 6 5 4 3 2 1 0A A口:口:0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0
6、 7F00H7F00HB B口:口:0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 1 0 1 7F01H7F01HB B口:口:0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 1 0 1 0 7F02H7F02H控制口:控制口:0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 7F03H7F03H第7页,此课件共52页哦82558255编程规定编程规定方式选择控制字:方式选择控制字:D
7、 D7 7=1=1C C口置位口置位/复位控制字:复位控制字:D D7 7=0=082558255初始化编程:初始化编程:往控制口写入控制字,确定往控制口写入控制字,确定82558255工作方式。工作方式。第8页,此课件共52页哦方式选择控制字方式选择控制字8255A方式选择注意:方式选择注意:有三种基本工作方式:有三种基本工作方式:方式方式0基本的输入输出方式基本的输入输出方式 方式方式1选通的输入输出方式选通的输入输出方式 方式方式2双向传输方式双向传输方式 只有端口只有端口A能工作在方式能工作在方式2;同一组的两端口可分别工作在输入和输出方式。同一组的两端口可分别工作在输入和输出方式。第
8、9页,此课件共52页哦例:例:8255PA 8255PA口方式口方式0 0输出单片机片内输出单片机片内RAMRAM数据,数据,PBPB口方式口方式1 1输入输入。PIOS:M MOV V DPTR DPTR,#7F03H#7F03H;控制口地址;控制口地址 M MOV V A A,#86H#86H ;写控制字;写控制字 M MOVX DPTRVX DPTR,A A ;设工作方式;设工作方式 M MOV V DPTR DPTR,#7F00H#7F00H ;PAPA数据口地址数据口地址 M MOV V A A,R0R0 ;取;取RAMRAM的数据的数据 M MOVX DPTRVX DPTR,A A
9、 ;由;由PAPA口输出口输出第10页,此课件共52页哦键盘接口技术键盘接口技术抖动时间抖动时间10ms开关动作时间开关动作时间100ms“1”“0”10ms前沿抖动前沿抖动后沿抖动后沿抖动I/O接接口口+5v+5v消除抖动电路消除抖动电路开关开关单单片片机机2.2.键译码:键译码:键号为键盘位置码,根据键号查键号为键盘位置码,根据键号查表得出被按键的键值。表得出被按键的键值。键值:数字键键值:数字键0 09 9;字符键字符键0AH0AH0FH0FH;功能键功能键10H10H 。键码键码键码键码=行首键号行首键号行首键号行首键号+列号列号列号列号(键号必须依次是从左至右书写)(键号必须依次是从
10、左至右书写)(键号必须依次是从左至右书写)(键号必须依次是从左至右书写)或键码或键码或键码或键码=列首键号列首键号列首键号列首键号+行号行号行号行号(键号必须依次是从上至下书写)(键号必须依次是从上至下书写)(键号必须依次是从上至下书写)(键号必须依次是从上至下书写)一、键盘处理程序任务:一、键盘处理程序任务:1.键输入:键输入:检查键盘是否有键被按下,消除按键抖动。确定被按键检查键盘是否有键被按下,消除按键抖动。确定被按键的键号,获取键号。的键号,获取键号。硬件电路消除抖动或软件消除抖动。硬件电路消除抖动或软件消除抖动。第11页,此课件共52页哦3.3.键处理:键处理:根据键值转移到不同程序
11、段。根据键值转移到不同程序段。若键值属于数字、字符键,则调用显示数字和字若键值属于数字、字符键,则调用显示数字和字符的子程序。符的子程序。若键值属于功能键,则进行多分支转移,执行各个若键值属于功能键,则进行多分支转移,执行各个功能程序段。功能程序段。延时等待延时等待10ms 仍有按键信号?仍有按键信号?Y 有按键信号?有按键信号?NYN键盘处理键盘处理 按键释放?按键释放?NY二、键盘接口方法:二、键盘接口方法:1 1、利用单片机本身的并行口;、利用单片机本身的并行口;2 2、利用单片机本身的串行口;、利用单片机本身的串行口;3 3、利用通用接口芯片、利用通用接口芯片81558155、8255
12、8255等;等;4 4、利用专用接口芯片、利用专用接口芯片82798279等。等。三、键盘接口的控制方式:三、键盘接口的控制方式:1 1、随机方式:每当、随机方式:每当CPUCPU空闲时执行键盘扫描程序。空闲时执行键盘扫描程序。2 2、中断方式:键的按下引起中断后,单片机对键盘进行扫描。、中断方式:键的按下引起中断后,单片机对键盘进行扫描。3 3、定时方式:单片机定时地对键盘进行扫描。、定时方式:单片机定时地对键盘进行扫描。第12页,此课件共52页哦(1 1 1 1)独立式键盘电路:)独立式键盘电路:)独立式键盘电路:)独立式键盘电路:(2 2)矩阵式键盘:)矩阵式键盘:0 1+5v C0 C
13、1 R0 R1键盘键盘I/O接口接口(2 2)矩阵式键盘电路:)矩阵式键盘电路:1 1)扫描法:)扫描法:列线输出,行线输入。列线输出,行线输入。列线逐列输出列线逐列输出0 0,某行有按键,行线输入就为,某行有按键,行线输入就为0 0;若无按键,行线输入全部为若无按键,行线输入全部为1 1。2 2)反转法:)反转法:行列线交换输入、输出,两步获取按键键号。行列线交换输入、输出,两步获取按键键号。(1)独立式键盘电路:每个按键单独占有一根)独立式键盘电路:每个按键单独占有一根I/O接口引线。接口引线。四、键盘接口形式:四、键盘接口形式:P1.0P1.1P1.7+5v第13页,此课件共52页哦按键
14、处理程序:按键处理程序:按键处理程序:按键处理程序:延时消抖延时消抖键扫描求键号键扫描求键号延时等待延时等待键译码求键值键译码求键值修改显示缓冲区修改显示缓冲区跳转各功能程序跳转各功能程序有按键输入?有按键输入?确有按键?确有按键?按键释放?按键释放?是数字键?是数字键?YYYNNNYN第14页,此课件共52页哦1、使用、使用8155作键盘接口:作键盘接口:接口应用:接口应用:P2.7=0,P2.0=1:A口地址为:口地址为:0101H;C口地址为:口地址为:0103H。扫描法:列线输出,行线输入。扫描法:列线输出,行线输入。列线逐列输出列线逐列输出0 0,某行有按键,行线,某行有按键,行线输
15、入就为输入就为0 0;若无按键,行线输入全部为若无按键,行线输入全部为1 1。01678914 15键码键码键码键码=行首键号行首键号行首键号行首键号+列号列号列号列号(键号必须依次是从左至右书写)(键号必须依次是从左至右书写)(键号必须依次是从左至右书写)(键号必须依次是从左至右书写)或键码或键码或键码或键码=列首键号列首键号列首键号列首键号+行号行号行号行号(键号必须依次是从上至下书写)(键号必须依次是从上至下书写)(键号必须依次是从上至下书写)(键号必须依次是从上至下书写)第15页,此课件共52页哦判定有无键闭合的子程序:判定有无键闭合的子程序:MOVDPTR,#0101HMOVA,#0
16、0H;A口送口送00HMOVXDPTR,AINCDPTRINCDPTR;建立;建立C口地址口地址MOVXA,DPTR;读;读C口口CPLA;A取反,无键按下则全取反,无键按下则全“0”ANLA,#0FH;屏蔽;屏蔽A高半字节(高半字节(C口只口只4位)位)RET执行执行KS1子程序的结果是:有闭合键则(子程序的结果是:有闭合键则(A)0;无闭合键则(无闭合键则(A)0。CPL A;负逻辑不直观,常采取行列线加反相器或;负逻辑不直观,常采取行列线加反相器或 软件求反的方法把键盘改成正逻辑。软件求反的方法把键盘改成正逻辑。KS1:第16页,此课件共52页哦 键盘扫描子程序如下:(键盘扫描子程序如下
17、:(8155的的A口、口、B口、口、C口和控制口地址口和控制口地址分别为分别为7F00H、7F01H、7F02H、7F03H,设,设8155A已已在主程序中初始化。已设定为在主程序中初始化。已设定为A口方式口方式0输出,输出,C口的低口的低4位方位方式式0输入。)输入。)KEY1:ACALL KS1 ;调用判断有无键按下子程序;调用判断有无键按下子程序 JNZ LK1 ;有键按下时,(;有键按下时,(A)0转消抖延时转消抖延时KEY2:ACALL TM6ms AJMP KEY1 ;无键按下返回;无键按下返回LK1:ACALL TM12ms ;调;调12 ms延时子程序延时子程序 ACALL K
18、S1 ;查有无键按下,若有则真有键按下;查有无键按下,若有则真有键按下 JNZ LK2 ;键;键(A)0逐列扫描逐列扫描 AJMP KEY2 ;不是真有键按下,返回;不是真有键按下,返回LK2:MOV R2,#0FEH ;初始列扫描字(;初始列扫描字(0列)送入列)送入R2 MOV R4,#00H ;初始列(;初始列(0列)号送入列)号送入R4LK4:MOV DPTR,#7F00H;DPTR指向指向8155PA口口 MOV A,R2 ;列扫描字送至;列扫描字送至8155PA口口 MOVX DPTR,A INC DPTR ;DPTR指向指向8155PC口口 INC DPTR 第17页,此课件共5
19、2页哦 MOVX A,DPTR ;从;从8155 PC口读入行状态口读入行状态 JB ACC.0,LONE ;查第;查第0行无键按下,转查第行无键按下,转查第1行行 MOV A,#00H ;第;第0行有键按下,行首键码行有键按下,行首键码#00HA AJMP LKP ;转求键码;转求键码LONE:JB ACC.1,LTWO ;查第;查第1行无键按下,转查第行无键按下,转查第2行行 MOV A,#08H ;第;第1行有键按下,行首键码行有键按下,行首键码#08HA AJMP LKP ;转求键码;转求键码LTWO:JB ACC.2,LTHR ;查第;查第2行无键按下,转查第行无键按下,转查第3行行
20、 MOV A,#10H;第;第2行有键按下,行首键码行有键按下,行首键码#10HA AJMP LKP ;转求键码;转求键码LTHR:JB ACC.3,NEXT ;查第;查第3行无键按下,转该查下一列行无键按下,转该查下一列 MOV A,#18H;第;第3行有键按下,行首键码行有键按下,行首键码#18HALKP:ADD A,R4 ;求键码,键码;求键码,键码=行首键码行首键码+列号列号 PUSH ACC ;键码进栈保护;键码进栈保护LK3:ACALL KS1 ;等待键释放;等待键释放JNZ LK3 ;键未释放,等待;键未释放,等待POP ACC ;键释放,键码;键释放,键码ARET ;键扫描结束
21、,出口状态;键扫描结束,出口状态(A)=键码键码第18页,此课件共52页哦NEXT:INC R4 ;准备扫描下一列,列号加;准备扫描下一列,列号加1 MOV A,R2 ;取列扫描字送累加器;取列扫描字送累加器A JNB ACC.7,KEND;判断;判断8列扫描否?扫描完返回列扫描否?扫描完返回 RL A ;扫描字左移一位,变为下一列扫描字;扫描字左移一位,变为下一列扫描字 MOV R2,A ;扫描字送入;扫描字送入R2保存保存 AJMP LK4 ;转下一列扫描;转下一列扫描KEND:AJMP KEY1 KS1:MOV DPTR,#7F00H;DPTR指向指向8155PA口口 MOV A,#00
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 原理 应用 键盘 显示 课件
限制150内