单片机应用技术课件.ppt

上传人(卖家):三亚风情 文档编号:2279174 上传时间:2022-03-29 格式:PPT 页数:81 大小:1.82MB
下载 相关 举报
单片机应用技术课件.ppt_第1页
第1页 / 共81页
单片机应用技术课件.ppt_第2页
第2页 / 共81页
单片机应用技术课件.ppt_第3页
第3页 / 共81页
单片机应用技术课件.ppt_第4页
第4页 / 共81页
单片机应用技术课件.ppt_第5页
第5页 / 共81页
点击查看更多>>
资源描述

1、项目二项目二 定制器控制定制器控制任务一任务一 数码显示数码显示任务二任务二 按键识别按键识别任务三任务三 定时时间的设定定时时间的设定任务四任务四 定时器定时器单片机应用技术单片机应用技术 高职高专高职高专 ppt ppt 课件课件任务一任务一 数码显示数码显示任务要求任务要求本任务要求应用本任务要求应用4位数码管分别显示片内存储器位数码管分别显示片内存储器30H33H单元的单元的数值(假设存储单元的内容为数值(假设存储单元的内容为14)。)。 知识目标:知识目标: (1) (1)认识认识8段数码管的外形和内部结构。段数码管的外形和内部结构。 ( (2 2) )知道知道8段数码管的显示原理。

2、段数码管的显示原理。 ( (3 3) )了解单片机对数码管的控制方式。了解单片机对数码管的控制方式。 技能目标:技能目标: (1)(1)会设计单片机与数码管静态显示的接口电路和控制程序。会设计单片机与数码管静态显示的接口电路和控制程序。 (2)(2)会设计单片机与数码管动态显示的接口电路和控制程序。会设计单片机与数码管动态显示的接口电路和控制程序。单片机应用技术单片机应用技术 高职高专高职高专 ppt ppt 课件课件任务一任务一 数码显示数码显示知识链接知识链接1.1.数码管简介数码管简介(1) (1) 数码管的结构数码管的结构gfGNDa bedGNDc dpabcdefgdpabcdef

3、gdp(a) 符号和引脚(b) 共阴极abcdefgdp(c) 共阳极单片机应用技术单片机应用技术 高职高专高职高专 ppt ppt 课件课件(2) (2) 数码管的显示原理(共阳极数码管)数码管的显示原理(共阳极数码管)00110100字型码位码知识链接知识链接单片机应用技术单片机应用技术 高职高专高职高专 ppt ppt 课件课件(3) (3) 数数码码管管的的字字形形编编码码显示显示字形字形共阳极共阳极共阴极共阴极dpdpg gf fe ed dC Cb ba a段码段码dpdpg gf fe ed dc cb ba a段码段码0 01 11 10 00 00 00 00 00 0C0H

4、C0H0 00 01 11 11 11 11 11 13FH3FH1 11 11 11 11 11 10 00 01 1F9HF9H0 00 00 00 00 01 11 10 006H06H2 21 10 01 10 00 01 10 00 0A4HA4H0 01 10 01 11 10 01 11 15BH5BH3 31 10 01 11 10 00 00 00 0B0HB0H0 01 10 00 01 11 11 11 14FH4FH4 41 10 00 01 11 10 00 01 199H99H0 01 11 10 00 01 11 10 066H66H5 51 10 00 01 1

5、0 00 01 10 092H92H0 01 11 10 01 11 10 01 16DH6DH6 61 10 00 00 00 00 01 10 082H82H0 01 11 11 11 11 10 01 17DH7DH7 71 11 11 11 11 10 00 00 0F8HF8H0 00 00 00 00 01 11 11 107H07H8 81 10 00 00 00 00 00 00 080H80H0 01 11 11 11 11 11 11 17FH7FH9 91 10 00 01 10 00 00 00 090H90H0 01 11 10 01 11 11 11 16FH6FH

6、A A1 10 00 00 01 10 00 00 088H88H0 01 11 11 10 01 11 11 177H77HB B1 10 00 00 00 00 01 11 183H83H0 01 11 11 11 11 10 00 07CH7CHC C1 11 10 00 00 01 11 10 0C6HC6H0 00 01 11 11 10 00 01 139H39HD D1 10 01 10 00 00 00 01 1A1HA1H0 01 10 01 11 11 11 10 05EH5EHE E1 10 00 00 00 01 11 10 086H86H0 01 11 11 11 1

7、0 00 01 179H79HF F1 10 00 00 01 11 11 10 08EH8EH0 01 11 11 10 00 00 01 171H71HP P1 10 00 00 01 11 10 00 08CH8CH0 01 11 11 10 00 01 11 173H73HU U1 11 10 00 00 00 00 01 1C1HC1H0 00 01 11 11 11 11 10 03EH3EHY Y1 10 00 01 10 00 00 01 191H91H0 01 11 10 01 11 11 10 06EH6EH. .0 01 11 11 11 11 11 11 17FH7FH

8、1 10 00 00 00 00 00 00 080H80H灭灭1 11 11 11 11 11 11 11 1FFHFFH0 00 00 00 00 00 00 00 000H00H单片机应用技术单片机应用技术 高职高专高职高专 ppt ppt 课件课件任务一任务一 数码显示数码显示知识链接知识链接2. 2. 数码管显示方式数码管显示方式(1) (1) 静态显示静态显示静态显示是指数码管显示某一字符时,相应的发光二极管静态显示是指数码管显示某一字符时,相应的发光二极管恒定导通或恒定截止,显示字形点亮的各段是持续点亮的,恒定导通或恒定截止,显示字形点亮的各段是持续点亮的,没有闪烁,此时的显示亮

9、度主要取决于各段的驱动电流。没有闪烁,此时的显示亮度主要取决于各段的驱动电流。 例例2-12-1 应用单片机控制应用单片机控制2 2位数码管分别显示位数码管分别显示“1”1”和和“2”2”。试设计电路并编写程序。试设计电路并编写程序。单片机应用技术单片机应用技术 高职高专高职高专 ppt ppt 课件课件任务一任务一 数码管显示数码管显示知识链接知识链接1)电路设计。 A02B018A13B117A24B216A35B315A46B414A57B513A68B612A79B711CE19AB/BA1VCC20GND10图2-2 74HC245引脚图CEBA表2-2 74HC245逻辑功能表AB

10、/输入输入输入输入/ /输出输出AnAnBnBnL LL LA=BA=B输入输入L LH H输入输入B=AB=AH HX X高阻高阻高阻高阻单片机应用技术单片机应用技术 高职高专高职高专 ppt ppt 课件课件XTAL218XTAL119ALE30EA31PSEN29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD10P3.1/TXD11P3.2/INT012P3.3/INT11

11、3P3.4/T014P3.7/RD17P3.6/WR16P3.5/T115P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427U1AT89C51A02B018A13B117A24B216A35B315A46B414A57B513A68B612A79B711CE19AB/BA1U274HC245A02B018A13B117A24B216A35B315A46B414A57B513A68B612A79B711CE19AB/BA1U374HC245234567891RP110k*8234567891

12、RP210k*812345678161514131211109RN1220*812345678161514131211109RN2220*8VccVcc图图2-3 2-3 两位数码管静态显示电路图两位数码管静态显示电路图知识链接知识链接单片机应用技术单片机应用技术 高职高专高职高专 ppt ppt 课件课件2)程序清单(LI2_1.ASM): ORG 0000h JMP START ORG 0100HSTART: MOV P1,#0F9H MOV P2,#0A4H SJMP $ END知识链接知识链接单片机应用技术单片机应用技术 高职高专高职高专 ppt ppt 课件课件(2)(2)动态显示方

13、式动态显示方式知识链接知识链接 选用动态显示的系统中一般有多位数码管,各位数选用动态显示的系统中一般有多位数码管,各位数码管不是同时点亮显示,而是逐位轮流的点亮(也称逐码管不是同时点亮显示,而是逐位轮流的点亮(也称逐位扫描)。对每一位数码管而言,每隔一段时间点亮一位扫描)。对每一位数码管而言,每隔一段时间点亮一次,每次点亮一定时间。这样,虽然每个数码管都是亮次,每次点亮一定时间。这样,虽然每个数码管都是亮灭变化的,但只要选择合适的点亮时间和间隔时间,由灭变化的,但只要选择合适的点亮时间和间隔时间,由于人的视觉暂留作用和发光二极管的余辉效应,使人肉于人的视觉暂留作用和发光二极管的余辉效应,使人肉

14、眼看到的每个数码管都是稳定显示。一位接一位地轮流眼看到的每个数码管都是稳定显示。一位接一位地轮流点亮各位数码管,这种逐位点亮显示器的过程称为位扫点亮各位数码管,这种逐位点亮显示器的过程称为位扫描。描。 3.3.堆栈指令介绍堆栈指令介绍PUSH directPUSH direct ;(SP)+1(SP),(direct)(SPPOP directPOP direct ;(SP)(direct),(SP)-1(SP) 例例2-2 试分析下面指令序列的执行结果。 MOV SP,#60H MOV DPTR,#1234H PUSH DPL PUSH DPH指令序列执行的最终结果:(61H)34H,(62

15、H)12H,(SP)62H。知识链接知识链接电路设计电路设计任务一任务一 数码管显示数码管显示程序设计程序设计任务一任务一 数码管显示数码管显示 ORG 0000H LJMP MAIN ORG 0100HMAIN: MOV SP,#60H MOV R0,#30H;设置显示数值30H34H是14 MOV R1,#4 MOV A,#01HLOOP1: MOV R0,A INC A INC R0 DJNZ R1,LOOP1LOOP: MOV R3,#4 ;共4位数码管动态显示 ACALL DISPLAY AJMP LOOP程序设计程序设计MOV A,R0 MOVC A,A+DPTR MOV P0,A

16、 SETB P2.0 CLR P2.0 ;查表求段码并锁存输出 MOV A,R2 ;位码左移,准备点亮下一个数码管 RL A MOV R2,A INC R0 ACALL DELAY MOV P0,#0FFH ;关显示 SETB P2.0 CLR P2.0 DJNZ R3, DIS1 ;循环点亮下一个数码管 POP ACC RET;数码管动态显示子程序;R3是入口参数,存放显示位数DISPLAY: PUSH ACC CLR P3.6 SETB P2.7 MOV R2,#0FEH ;R2单元存放位码值 MOV R0,#30H ;30H单元存放显示数值 MOV DPTR,#SEGADIS1: MOV

17、 A,R2 MOV P0,A SETB P2.1 CLR P2.1;锁存输出位码 ;延时1ms子程序DELAY: MOV R7,#02HD1EL2: MOV R6,#70HD1EL1: DJNZ R6,D1EL1 DJNZ R7,D1EL2 RET;共阳极数码管段码表SEGA: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H DB 80H,90H,88H,83H,0C6H,0A1H,86H,8EH END程序设计程序设计任务一任务一 数码管显示数码管显示1.技能训练技能训练(1)在学习板上实现一个数码管静态显示字形)在学习板上实现一个数码管静态显示字形“3”。(

18、2)在学习板上实现)在学习板上实现8个数码管分别显示数字个数码管分别显示数字18。(3)增加任务中的延时时间,观察数码管的显示情况。)增加任务中的延时时间,观察数码管的显示情况。2.知识思考知识思考(1)什么是数码管的静态显示?)什么是数码管的静态显示?(2)简述数码管动态显示过程。)简述数码管动态显示过程。(3)什么情况下数据需要保护?)什么情况下数据需要保护?本任务程序中可以将本任务程序中可以将“PUSH”和和“POP”两条指令去掉吗?两条指令去掉吗?拓展训练拓展训练任务一任务一 数码管显示数码管显示任务二任务二 按键识别按键识别任务要求任务要求选用选用4个按键,编号分别是个按键,编号分别

19、是“14”,当某个键按下后,应用数码,当某个键按下后,应用数码管显示按键编号。管显示按键编号。知识目标:知识目标:(1)看懂单片机和独立式按键的接口电路。)看懂单片机和独立式按键的接口电路。(2)了解独立式按键的工作原理。)了解独立式按键的工作原理。(3)掌握按键消抖的方法。)掌握按键消抖的方法。(4)看懂单片机和矩阵式按键的接口电路。)看懂单片机和矩阵式按键的接口电路。(5)了解矩阵式按键的工作原理。)了解矩阵式按键的工作原理。技能目标:技能目标:(1)会设计单片机与数码管静态显示的接口电路和控制程序。)会设计单片机与数码管静态显示的接口电路和控制程序。 (2) 会设计单片机与数码管动态显示

20、的接口电路和控制程序。会设计单片机与数码管动态显示的接口电路和控制程序。 (3)知道矩阵式按键的识别及控制方法。)知道矩阵式按键的识别及控制方法。知识链接知识链接任务二任务二 按键识别按键识别1.按键的分类按键的分类根据结构,按键可分为两类根据结构,按键可分为两类 触点式开关按键触点式开关按键 无触点式开关按键无触点式开关按键根据接口原理按键可分为两类根据接口原理按键可分为两类 编码键盘编码键盘 非编码键盘非编码键盘2.单片机对键盘的控制方式单片机对键盘的控制方式知识链接知识链接(1)查询方式:指在程序中用一段专门的扫描和读按键程序不停查询有无按键按下,确定键值。 特点:电路简单,但需要占用单

21、片机的机器时间。(2)定时扫描方式:指利用单片机内的定时器来产生定时中断,然后在定时中断的服务程序中扫描,检查有无按键按下,确定键值。 特点:电路也比较简单,不占用单片机的机器时间,但需要占应用定时器,同时定时的时间不能过长,否则可能检测不到相应得按键。(3)中断扫描方式:指当有键按下时由相应的硬件电路产生中断信号,单片机在中断服务程序中扫描,检查有无按键按下,确定键值。特点:硬件电路上必须要产生中断线,需要与门和非门来产生。但中断方式不占用单片机的机器时间,也不会出现定时方式时的检测不到键盘的情况。3.3.键盘接口键盘接口问题:由于机械触点的弹性作用,触点在闭合和断开瞬间的电接触情况不稳定,

22、造成了电压信号的抖动现象。抖动时间:一般为110ms(如图2-5 所示)。后果:会引起单片机对于一次键操作进行多次处理,因此必须设法消除抖动现象。 措施:软件消抖、硬件消抖措施:软件消抖、硬件消抖抖动时间10ms开关动作时间100ms“ 1 ”“ 0 ”10ms按下抖动闭合稳态释放抖动(1)软件消抖 ;延时10ms子程序DELAY10: MOV R7,#20;1sD10EL0: MOV R6,#255;1sD10EL1: DJNZ R6,D10EL1;2s,执行255次 DJNZ R7,D10EL0;2s,循环执行20次 RET;2s延时时间计算:1+1+2255+220+2=10263100

23、00s=10ms。(2)硬件消抖&R110kR210k有抖动有抖动无抖动无抖动AB图2-6 硬件消抖电路4.4.独立式按键独立式按键(1)独立式按键结构S1S2S3S4P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78U1AT89C5110k10k10k10k 图2-7 独立式与单片机接口电路图;查询方式扫描一次键盘的程序 JPDL: MOV A,#0FFH MOV P1,A ;置P1口为输入状态JPDL0: MOV A,P1 ;键状态输入 JNB ACC.0, JPDL1 ;检测0号键是否按下,按下转 JNB ACC.1, JPDL2 ;检测1号键是否按下,按下

24、转 JNB ACC.2, JPDL3 ;检测2号键是否按下,按下转 JNB ACC.3, JPDL4 ;检测3号键是否按下,按下转 RET ;无键按下返回JPDL1: ACALL PS1 ; PS4 分别为每个按键的功能子程序 RETJPDL2: ACALL PS2 RETJPDL3: ACALL PS3 RET JPDL4: ACALL PS4 RET 5.5.矩阵式键盘矩阵式键盘(1)矩阵式键盘的结构及原理图2-8 矩阵键盘结构图(2)矩阵式键盘按键的识别以8号键的识别为例来说明扫描法识别按键的过程: 按键按下时,与此按键相连的行线与列线短路导通,行线在无按键按下时处于高电平。显然,如果让

25、所有的列线也处在高电平,那么,按键按下与否不会引起行线电平的变化,因此必须使所有列线处在低电平。只有这样,当有按键按下时,该按键所在的行电平才会由高电平变为低电平。CPU根据行电平的变化,就能判定相应的行有键按下。 8 号键按下时,第3行一定为低电平。然而第3行为低电平时,能否肯定是8号键按下呢?回答是否定的,因为9、10、11号键按下,同样会使第3行为低电平。为进一步确定具体键,不能使所有列线在同一时刻处于低电平,可在某一时刻只让一条列线处于低电平,其余列线均处于高电平,另一时刻,让下一列处在低电平,依次循环,这种依次轮流每次选通一列的工作方式称为键盘扫描。(3)键盘的编码对于矩阵式键盘,按

26、键的位置由行号和列号惟一确定,因此可分别对行号和列号进行二进制编码,然后将两值合成一个字节,高4位是行号,低4位是列号。如图2-8中的8号键,它位于第3行,第0列,因此,其键盘编码应为30H。采用上述编码对于不同行的键离散性较大,不利于散转指令对按键进行处理。因此,可采用依次排列键号的方式对按键进行编码。以图2-8中的44键盘为例,可将键号编码为:01H、02H、03H、0EH、0FH、10H 等16个键号。编码的相互转换可通过计算或查表的方法实现。6.6.键盘扫描程序键盘扫描程序键盘扫描程序一般应包括以下内容。_ 判别有无按键按下。_ 键盘扫描取得闭合键的行、列值。_ 用计算法或查表法得到键

27、值。_ 判断闭合键是否释放,如没释放则继续等待。_ 将闭合键键号保存,同时转去执行该闭合键的功能。7.7.指令介绍指令介绍(1)CJNE指令。指令格式是:CJNE 目的,源,rel,共有4条:CJNE A,#data,relCJNE A,#data,rel ;(A)与data比较,如果A=data,则顺序执行,否则转移CJNE A,direct,relCJNE A,direct,rel ;(A)与(direct)比较,若相等则顺序执行,否则转移CJNE Rn,#data,relCJNE Rn,#data,rel ;(Rn)与data比较,若相等则顺序执行,否则转移CJNE Ri,#data,r

28、elCJNE Ri,#data,rel ;(Ri)与data比较,若相等则顺序执行,否则转移目的操作数源操作数?是分支1目的操作数源操作数?是否分支2分支3进位标志位=1进位标志位=0图2-9 CJNE操作示意图例例2-3 将内部 RAM 的一个数据块(首址为DATA1)传送到内部数据RAM(首址为DATA2),遇到传送的数据为00H 时停止。 程序清单: MOV R1 ,#DATA1 ; 设置数据指针 MOV R0 ,#DPTA2 ; 设置数据指针 LP1:MOV A ,R1 ; 读数据 CJNE A , #00H, LP2 ;(A)00H,则转移 RET ;(A)00H,结束传送 LP2:

29、MOV R0 ,A ; 送数到内部RAM INC R0 ; 修改指针 INC R1 ; 修改指针 SJMP LP1 ; 继续传送(2)累加器A判零指令,有两条: JZ relJZ rel ; 若(A)0,则转移,否则顺序向下执行 JNZ relJNZ rel ; 若(A)0,则转移,否则顺序向下执行在例2-3中,如果利用“JZ”指令的程序如下: MOV R1, #DATA1 ; 设置数据指针 MOV R0, #DATA2 ; 设置数据指针LP1: MOV A, R1 ; 读数据 JZ LP2 ; 判断传送数据是否为00H,是则转移 MOV R0, A ; 数据不为00H,送内部RAM INC

30、R0 ; 修改地址指针 INC R1 ; 修改外部RAM地址指针 SJMP LP1 ; 继续传送LP2: RET ; 结束传送,返回主程序电路设计电路设计任务二任务二 键盘识别键盘识别本任务硬件主要由单片机、键盘、显示数码管组成。键盘选择4个按键,采用独立键盘控制,电路如图2-7所示,其编号分别是“14”。键值显示电路如图2-4所示,但只选用其中一个数码管静态显示。程序设计程序设计任务二任务二 键盘识别键盘识别 ORG 0000H AJMP START ORG 0100H START: CLR P2.0 CLR P3.6 SETB P2.7 MOV P0,#0FEH ;输出数码管公共端信号 S

31、ETB P2.1 ;开通U14 CLR P2.1 ;锁存U14LOOP: ACALL DLJP AJMPLOOP;独立按键识别子程序DLJP: MOV P1,#0FFH MOV A,P1 ;读键盘状态 CJNE A,#0FH,XDOU ;有键按下消抖处理DLJPR: RET ;无键按下则再读键盘状态程序设计程序设计XDOU: MOV 40H,A ;把读的键盘状态放在40H的地址 ACALL DELAY10 ;延时 MOV A,P1 ;再读键盘状态 CJNE A,40H, DLJPR ;比较两次读键盘状态,如不同则返回 JB ACC.0,SS2 ;S1键未按下,转SS2 ACALL PS1 ;1

32、号键按下,显示1 AJMP DLJPRSS2: JB ACC.1,SS3 ;S2键未按下,转SS3 ACALL PS2 ;2号键按下,显示2 AJMP DLJPRSS3: JB ACC.2,SS4 ;S3键未按下,转SS4 ACALL PS3 ;3号键按下,显示3 AJMP DLJPRSS4: JB ACC.3, DLJPR ;S4键未按下,读键盘 ACALL PS4 ;4号键按下,显示4 AJMP DLJPR程序设计程序设计PS1: MOV P0,#0F9H ;1号键键处理子程序 SETB P2.0 CLRP2.0 RET ;1号键按下,显示1PS2: MOV P0,#0A4H ;2号键键处

33、理子程序 SETB P2.0 CLRP2.0 RET ;2号键按下,显示2PS3: MOV P0,#0B0H ;3号键键处理子程序 SETB P2.0 CLRP2.0 RET ;3号键按下,显示3PS4: MOV P0,#99H ;4号键键处理子程序 SETB P2.0 CLRP2.0 RET ;4号键按下,显示41.1.技能训练技能训练(1)应用)应用PROTEUS仿真矩阵键盘的键值显示。仿真矩阵键盘的键值显示。(2)应用学习板完成按键)应用学习板完成按键S1每按下一次,数码管显示值每按下一次,数码管显示值加一的功能(复位后数码管显示加一的功能(复位后数码管显示0)。)。(3)画出本任务完整

34、电路图。)画出本任务完整电路图。2.2.知识思考知识思考(1)独立式键盘的工作原理是什么?)独立式键盘的工作原理是什么?(2)说明矩阵键盘的按键识别过程。)说明矩阵键盘的按键识别过程。(3)键盘消抖的方法有哪些?)键盘消抖的方法有哪些? 拓展训练拓展训练任务三任务三 定时时间的设定定时时间的设定任务三任务三 定时时间的设定定时时间的设定任务要求任务要求 本任务要求应用独立式按键,使用3个按键, S1为定时时间加1键, S2为减1键, S3定时时间清零键。要求定时时间范围099秒,定时时间的设定值应用两位数码管显示。 知识目标:知识目标:(1)进一步理解独立按键工作原理。(2)理解逻辑运算指令和

35、数据交换指令。技能目标:技能目标:(1)会应用按键设定定时时间。(2)会编写16进制数转换为10进制数程序。(3)会应用逻辑运算指令和数据交换指令。(4)会设计码型转换程序 知识连接知识连接1.1.逻辑操作指令逻辑操作指令(1)逻辑与操作指令(6 条)ANL A,directANL A,direct ;对A中的内容和直接寻址单元中的内容执行与操作,结果存到A中ANL A,#dataANL A,#data ;对A中的内容和立即数执行与操作,结果存到A中ANL A,RnANL A,Rn ;对A中的内容和寄存器Rn中的内容执行与操作,结果存到A中ANL A,RiANL A,Ri ;对A中的内容和工作

36、寄存器Ri所指的地址单元中的内容执行与操作,结果存到A中ANL direct,AANL direct,A ;对直接寻址单元中的内容和A中的内容执行与操作,结果存到直接寻址单元中ANL direct,#dataANL direct,#data ;对直接寻址单元中的内容和立即数执行与操作,结果存到直接寻址单元中(2)逻辑或操作指令(6 条)ORL A,directORL A,direct ;对A中的内容和直接寻址单元中的内容执行或操作,结果存到A中ORL direct,#dataORL direct,#data ;对直接寻址单元中的内容和立即数执行逻辑或操作,结果存在直接寻址单元中ORL A,#d

37、ataORL A,#data ;对A中的内容和立即数执行逻辑或操作,结果存在A中ORL A,RnORL A,Rn ;对A中的内容和寄存器Rn中的内容执行逻辑或操作,结果存到A中ORL direct,AORL direct,A ;对直接寻址单元中的内容和A中的内容执行逻辑或操作,结果存在直接寻址单元中ORL A,RiORL A,Ri ;对A中的内容和工作寄存器Ri所指的地址单元中的内容执行或操作,结果存在A中知识连接知识连接(3)逻辑异或操作指令(6条)XRL A,directXRL A,direct ;对A中的内容和直接寻址单元中的内容执行异或操作,结果存在A中XRL directXRL di

38、rect,#data#data ;对直接寻址单元中的内容和立即数执行异或操作,结果存在直接寻址单元中XRL A,#dataXRL A,#data ;对A中的内容和立即数执行异或操作,结果存在A中XRL A,RnXRL A,Rn ;对A中的内容和寄存器Rn中的内容执行异或操作,结果存在A中XRL direct,AXRL direct,A ;对直接寻址单元中的内容和A中的内容执行异或操作,结果存在直接寻址单元中XRL A,RiXRL A,Ri ;对A中的内容和工作寄存器Ri所指的地址单元中的内容执行异或操作,结果存在A中知识连接知识连接2.2.交换指令交换指令(5(5条条) )XCH A,RnXC

39、H A,Rn ;(A)(Rn), 累加器与工作寄存器Rn中的内容互换XCH A,directXCH A,direct ;(A)(direct),累加器与直接寻址单元中的内容互换XCH A,RiXCH A,Ri ;(A)(Ri),累加器与工作寄存器Ri所指存储单元中的内容互换XCHD A,RiXCHD A,Ri ;(A3-0)(Ri)3-0),累加器与工作寄存器Ri所指存储单元中内容的低半字节互换SWAP ASWAP A ;(A3-0)(A7-4),累加器中内容的高、低半字节互换知识连接知识连接例例2-42-4 拆字程序,把拆字程序,把R7的内容拆开,高的内容拆开,高4位送到片内位送到片内RAM

40、的的30H单元中,低单元中,低4位送到位送到31H中。中。程序如下:程序如下:MAIN: MOV A,R7 ANL A,#0F0H ;屏蔽高位屏蔽高位 SWAP A ;交换交换A中高低位的内容中高低位的内容 MOV 30H,A ;R7的高的高4位送到位送到30H中中 MOV A,R7 ;再读入再读入R8中的内容中的内容 ANL A,#0FH ;屏蔽高位屏蔽高位 MOV 31H,A ;R7的低的低4位送到位送到31H SJMP $知识连接知识连接3.3.乘除法指令乘除法指令MUL ABMUL AB ;(A)(B)(A)和(B), 将累加器A中的内容与寄存器B中的内容相乘,结果的低8位存在累加器A

41、中,高8位存在寄存器B中DIV ABDIV AB ;(A)/(B)(A)和(B),将累加器A中的内容除以寄存器B中的内容,所得商存在累加器A中,余数存在寄存器B中。例例如,若(A)=FBH(251),(B)=12H(18),执行指令“DIV AB”后,(A)=0DH(13),(B)=11H(17),(OV)=0,(CY)=0。知识连接知识连接4.4.码型的转换码型的转换(1)16进制与ASCII的转换表2-3 十六进制与ASCII码的对应关系表十六十六进制进制数数ASCIASCII I码码十六十六进制进制数数ASCIASCII I码码十六十六进制进制数数ASCIASCII I码码十六十六进制进

42、制数数ASCIASCII I码码0 030H30H4 434H34H8 838H38HC C43H43H1 131H31H5 535H35H9 939H39HD D44H44H2 232H32H6 636H36HA A41H41HE E45H45H3 333H33H7 737H37HB B42H42HF F46H46H知识连接知识连接例例2-52-5 将1位十六进制数转换成相应的ASCII码。设该十六进制数存放于累加器A中,转换后的ASCII码存放于R1中。一位十六进制只占累加器A的低四位,转换前应先屏蔽掉没用的高4位,然后判断其是否小于A,判断方法是将其与A相减,看是否有借位。有借位说明小于

43、A,ASCII码是将其加30H,否则将其加37H。程序清单(LI2_7.ASM)如下:HTOASC: ANL A,#0FH;屏蔽高四位 MOV R5,A;暂存R5中 CLR C;清借位位 SUBB A,#0AH;判断十六进制数的大小 MOV A,R5;取回原十六进制数 JC XYA;有借位,转至XYA ADD A,#37H;大于A,加37H SJMP ABCXYA: ADD A,#30H;小于A,加30HABC: MOV R1,A RET(2) BCD码(十进制数的二进制编码)表2-4 8421BCD码编码表十进制数十进制数84218421码码十进制数十进制数84218421码码0 00000

44、B0000B5 50101B0101B1 10001B0001B6 60110B0110B2 20010B0010B7 70111B0111B3 30011B0011B8 81000B1000B4 40100B0100B9 91001B1001BBCD码是一种具有十进制权的二进制编码。BCD码种类较多,常用的是8421码。8421码是一种采用4位二进制数来代表一位十进制数的代码系统。在这个代码系统中,十组4位二进制数分别代表了09中的十个数字符号 。知识连接知识连接 (3) 十六进制数转换成BCD码格式的十进制数 例例2-62-6 将两位十六进制数转换成两位BCD码(设数值范围是099)。09

45、9范围的十六进制数占一个字节单元,假设存放于片内RAM的34H单元中,将该16进制数除10,得到的商是BCD码的十位,存放到R4中,得到的余数是BCD码的个位,存放到R5中。程序清单(LI2_8.ASM)如下: MOV A,34HHTOBCD: MOV B,#10 ;16进制转换10进制子程序 DIV AB MOV R4,A MOV R5,B RET知识连接知识连接电路设计电路设计实现本任务功能的电路主要包括两部分电路(1)4个独立式按键,它们与单片机的接口电路如图2-7所示;(2)数码管显示电路,电路参考图2-4,该秒表的时间设定范围是099秒,选用低位两个数码管显示设定的秒值即可。任务三任

46、务三 定时时间的设定定时时间的设定程序设计程序设计程序清单(A2_3.ASM) ORG 0000H LJMP MAIN ORG 0100HMAIN: MOV SP,#60H MOV 30H,#00H MOV 32H,#00H MOV 34H,#00H LOOP1: MOV R3,#2 ACALL DISPLAY ;动态显示子程序,参考A2_1.ASM ACALL DLJP ;独立按键扫描子程序,参考A2_2.ASM SJMP LOOP1任务三任务三 定时时间的设定定时时间的设定PS1: INC 34H ;S1按键处理子程序,单击S1键定时时间加1 MOV A,34H CJNE A,#100,P

47、S11 MOV 34H,#00H MOV A,34H PS11: ACALL HTOBCD ;将定时时间转换十进制 MOV 30H,R4 ;将定时时间送显示单元 MOV 31H,R5 RETPS2: DEC 34H ;S2按键处理子程序;单击S1键定时时间减1 MOV A,34H CJNE A,#0FFH,PS21 MOV 34H,#99 MOV A,34H PS21: ACALL HTOBCD ;将定时时间转换十进制 MOV 30H,R4 ;将定时时间送显示单元 MOV 31H,R5 RET程序设计程序设计;S3按键处理子程序PS3: MOV 34H,#0 ;单击S3键,定时时间清零 MOV

48、 A,34H PS21: ACALL HTOBCD ;将定时时间转换十进制 MOV 30H,R4 ;将定时时间送显示单元 MOV 31H,R5 RET;S4按键处理子程序PS4: RET ;单击S4键,直接返回 END任务三任务三 定时时间的设定定时时间的设定拓展训练拓展训练1.1.技能训练技能训练(1)写出本任务完整程序清单。(2)将累加器A中的8位二进制数转换成3位BCD码格式的十进制数。2.2.知识思考知识思考(1)执行下列指令序列后,相关寄存器、存储单元及标志如何变化?2)MOV A,#89H MOV 32H,#98H ORL 32H,A4)MOV A,#89H SWAP A RLC

49、A(讨论C的内容)1)MOV A,#98H MOV R4,#11H ANL A,R43)CLR A CPL A XRL A,#77H任务三任务三 定时时间的设定定时时间的设定(2)已知(A)=7AH和(CY)=1,试指出执行下列程序后的最终结果。 1) MOV A,#0FH 2) MOV A,#0BBH CPL A CPL A MOV 30H,#00H RR A ORL 30H,#0ABH MOV 40H,#AAH RL A ORL A,40H 3) ANL A,#0FFH 4) ORL A,#0FH MOV 30H,A SWAP A XRL A,30H RRC A RLC A XRL A,#

50、0FH SWAP A ANL A,#0F0H(4)什么是BCD码? 拓展训练拓展训练任务三任务三 定时时间的设定定时时间的设定任务四任务四 定时器定时器任务要求任务要求 本任务要实现定时器功能,定时范围099秒,4位数字显示,显示精度0.01秒。4个按键实现定时器的控制,单击S1键定时时间加1,单击S2键定时时间减1,单击S3键定时时间清零,S4是重新定时按键。数码管进行计时显示和设定时间的显示,当定时时间到,声音提示。知识目标:知识目标:(1)熟悉中断系统结构和中断处理过程。(2)掌握定时计数器的工作原理。(3)明白定时/计数器的结构。技能目标:技能目标:(1)会设置定时/计数器的工作方式。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(单片机应用技术课件.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|