51单片机汇编语言教案单片机备课本中职篇(共100页).doc
《51单片机汇编语言教案单片机备课本中职篇(共100页).doc》由会员分享,可在线阅读,更多相关《51单片机汇编语言教案单片机备课本中职篇(共100页).doc(100页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上第八 九课时教学内容I/O口的简单应用循环彩灯教学重难点 1. 1、I/O作为一般的输入输出口时,有何要求?2、发光二极管工作参数新课内容: 一、循环彩灯硬件电路在最小硬件系统基础上,用P1口作输出,用低电平驱动LED发光管,LED发光条件是:电压1.8V左右,电流810mA。为满足要求,电路中串接限流电阻,经计算取360。电路如图所示。360+5V8.2KRSTVCC+5V+5V+5V40 31 AT89S511 8 9 EA10F6MHz20P二、软件设计软件设计是在最小软件系统基础上,根据所要求的显示方式,用位操作指令CLR P1.X/SETB P1.X,对某位
2、口操作,也可用数据传送指令MOV P1,#DATA,对多位口同时操作。如:设计一个由8个小灯构成的循环彩灯,要求8个小灯依次亮灭,然后重复循环程序为:ORG 0000HLJMP SETUPORG 0030HSETUP: CLR P1.0MOV R2, #80HDEL1: MOV R7,#0FFHDEL2:DJNZ R7,DEL2DJNZ R2,DEL1SETB P1.0CLR P1.1SETB P1.1MOV R2, #80HDEL1: MOV R7,#0FFHDEL2:DJNZ R7,DEL2DJNZ R2,DEL1CLR P1.2SETB P1.2CLR P1.3SETB P1.3 SET
3、B P1.7LJMP SETUPENDDELAY: MOV R2,#80HDEL1: MOV R3,#0FFHDEL2: DJNZ R3,DEL2 DJNZ R2,DEL1 RET三、引出指令1、NOP 空操作指令2、循环转移指令DJNZ Rn,rel ;先执行Rn Rn-1,然后判断,若Rn=0,则程序顺序执行,否则就转移,转移到rel处,转移范围为-128B+127B。DJNZ direct,rel ;同上面类似。1、 用和返回指令LCALL addr16 ;长调用指令,调用子程序,子程序可在64KB空间内任意位置,同LJMP指令。ACALL addr11 ;断调用指令,调用子程序,同LJ
4、MP指令。RET ;调用返回指令,子程序结束后,执行该指令程序将返回到调用子程序处继续向下执行。上面的程序也可写成:ORG 0000HLJMP SETUPORG 0030HSETUP:CLR P1.0 LCALL DELAYSETB P1.0CLR P1.1LCALL DELAYSETB P1.1CLR P1.2SETB P1.2CLR P1.3SETB P1.3 SETB P1.7LJMP SETUPDELAY:MOV R2,#80HDEL1: MOV R3,#0FFHDEL2: DJNZ R3,DEL2 DJNZ R2,DEL1 RETEND注意:书写子程序时的注意事项1、 书写子程序一定
5、要有名称(标号)2、 书写子程序 一定要有RET返回指令3、 参数的传递4、子程序和主程序间的关系如下图所示:子程序2断点主程序子程序1断点主程序子程序我们到上面的一段程序输入到wave仿真环境中,然后通过在线编程,把程序下载到单片机中,看实验箱上的小灯是否按照编写的程序亮灭的,也可以先通过软件仿真结果,也能判断正确与否,执行上面的程序我们可以看出来有P1口控制的8个小灯当中,低四个先亮,亮一段时间后再灭掉,接着高个小灯再亮,亮一会,再灭,重复循环。作业题:在循环彩灯硬件电路的基础上,设计一个循环彩灯程序,使小灯依次点亮后熄灭,再从头开始,重复8次反思:本堂课内容比较有趣味性,同学们学起来感觉
6、比较得心应手,希望以后在没有趣味的课程中也能体现出今天的这种势头。第十课时教学内容 LED数码管及其显示方式教学重难点 1了解数码管的分类与显示原理。 2数码管电路的连接。 3如何设置与排列数码管的显示数据,教学过程 一、LED数码管1 外型和引脚abcdefgdpcomabcdefgdp共阳型+5Vcom共阴型LED数码管如上图所示。正面为一个矩形,上面有七个笔画组成的8和圆点表示的小数点,共计8个,分别用a、b、c、d、e、f、g、dp代表各个笔画的名称,故又称为8“段”数码管,每一个段内部都有一个LED发光管和他们对应。上下两头各有5个引脚。其中有8个引脚分别和a、b、c、d、e、f、g
7、、dp对应,两头中间引脚内部是相连的,接的是8个LED的公共端(Commonality)(即数码管的“位”),用COM表示。2 内部结构内部结构分为共阳型和共阴型,如上面图所示。3 LED数码管的编码(Code)方式从LED的内部结构看,要点亮它,跟我们前面讲的8个循环彩灯相似,8个小灯亮的方式不同,在数码管上显示不同的字符。一般用8位二进制数代表每个段。A为低位,Dp为高位,即: D7 D6 D5 D4 D3 D2 D1 D0dpgfedcba如要显示0,就须把对应的a、b、c、d、e、f段的LED点亮,如果用正逻辑表示,即1亮0灭,显示0要求段的数据为3FH,同样显示其他字符也有对应数据表
8、示。也就是显示字符的编码。下面为数码管的正逻辑编码:0:3FH;1:06H;2:5BH;3:4FH;4:66H;5:6DH;6:7DH7:07H;8:7FH;9:6FH。注意:共阴型数码管于正逻辑编码方式一致,共阳型数码管恰好相反。二、LED数码管静态显示方式LED数码管显示电路在单片机系统中分为静态(Static Stage)显示和动态(Dynamic Stage)显示。1特点:(1)静态显示时数码管的段需要一个8位I/O口控制。(2)数码管的位:接“电源”或接“地”(3)静态显示方式,编程简单,但占用的I/O口线较多,(4)一般适用显示位数较少的场合。下面是其应用的例子:2硬件电路(共阳型
9、)P1口的数码管是完整电路,其余口为示意电路。dp390+5V P0 P2最小系统 P1 P3a第一位第二位第四位第三位显示程序(在四个数码管上分别显示0、1、2、3)ORG 0000HLJMP SETUPORG 0030HSETUP:MOV A,#3FHCPL AMOV P1,AMOV A,#06HCPL AMOV P3,AMOV A,#5BHCPL AMOV P0,AMOV A,#4FHCPL AMOV P2,ASJMP SETUPEND程序执行到这里,在P1口控制的数码管上显示“0”,继续往下执行,会在P3,P0,P2口上分别显示“1”,“2”,“3”,通过在线编程,把这段程序下载到单片
10、机上,运行会在4个数码管上显示0 ,1,2,3三、LED数码管动态显示方式1特点:(1)将所有数码管的所有相同的段连接在一起,8个段共8组,由一个8位的I/O口控制。(2)每一个数码管的公共端由一位I/O口控制。通过分时向段送数据和位控制信号,使各数码管轮流显示,这种数码管显示方式就称为动态扫描(Scan)电路。(3)动态显示方式,编程相对复杂,但占用的I/O口线较少。(4)一般适用显示位数较多的场合。1 硬件电路(共阳型)adp P0最小系统 P2+5V+5V段数据由P0口输出,外接上拉电阻,位由P2.0P2.3输出,用低电平驱动三极管,三极管输出接数码管的公共端。作业:假设有一数码管,他们
11、的连接是,P1口的,P1。7接A,依次类推,请同学们排出数码显示数据。反思:数码管是单片机技术中非常常见的一种显示程序设计,是其它显示程序设计的基础,学好数据管的显示后,为以后的液晶显示点阵显示打下一个好的基础,本次课程内容学生反应学起来比较吃力,可能是电子基础方面的知道忘记了。在以后的课程中,设计得这方面的知道应该先复习一下。第十一课时教学内容 查表指令与程序设计教学重难点 1掌握查表指令的用法。 2.使用查表指令的注意事项。教学过程 新课内容:LED数码管的动态显示程序,要求在数码管上显示0 1 2 3ORG 0000HLJMP SETUPORG 0030HSETUP:MOV A,#3FH
12、CPL AMOV P0,A CLR P2.0 LCALL DELAY SETB P2.0MOV A,#06HCPL AMOV P0,A CLR P2.1 LCALL DELAY SETB P2.1MOV A,#5BHCPL AMOV P0,ACLR P2.2 LCALL DELAY SETB P2.2MOV A,#4FHCPL ACLR P2.3 LCALL DELAY SETB P2.3LJMP SETUPDELAY: RETEND二、引出指令查表指令及伪指令1MOVC A,A+DPTR ;A-(A+DPTR)该指令是从内部ROM中读取一个数,是当前A中的值8位和DPTR中的值16位相加得到
13、一个16位的地址,将ROM中该地址中的数据读出送入累加器ACC。该指令可以访问ROM中的任意一个单元。2 MOVC A,A+PC ;A-(A+PC)3 DB (定义字节伪指令)(D:Define,B:Byte)格式:标号: DB 8位二进制数表功能:从指定的地址单元开始,定义若干个8位内存单元的数据,数据之间用“,”隔开。三、查表程序设计要用到查表指令和定义的数据表格。一般分三个步骤。1 用DPTR作基址寄存器时1) 基址值(表格首地址)送入DPTR2) 变址值(表中要查的项与表格首地址之间的间隔字节数)送入累加器A3) 执行MOVC A,A+DPTR;四、查表程序设计数码管动态显示程序上面的
14、显示程序只能显示固定的数据,无实际意义。下面我们利用查表指令设计一动态扫描程序。ORG 0000HLJMP SETUPORG 0030HSETUP:MOV 70H,#0MOV 71H,#1MOV 72H,#2MOV 73H,#3MAIN:LCALL DISLJMP MAINDIS:MOV DPTR, #TABMOV A, 70HMOVC A, A+DPTRCPL AMOV P0, ACLR P2.0LCALL DELAYSETB P2.0MOV A, 71HMOVC A, A+DPTRCPL AMOV P0, ACLR P2.1LCALL DELAYSETB P2.1MOV A, 72HMOV
15、C A, A+DPTRCPL AMOV P0, ACLR P2.2LCALL DELAYSETB P2.2MOV A, 73HMOVC A, A+DPTRCPL AMOV P0, ACLR P2.3LCALL DELAYSETB P2.3 RETTAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FHDELAY:MOV R2,#80HDEL: DJNZ R2,DEL RET END例:用查表法求y=x2 ,设原变量x值在R0中,x取值范围为09,求得结果存放在R1中。程序如下:AA:MOV A, R0 MOV A,A+DPTR MOV R1, A RETT
16、AB:DB 0,1,4,9,16,25,36,49,64,81注意:u 表格一定要写全u 表格中的内容之间用逗号隔开,定义表格要有规律u 表格不能放在子程序中表格放在子程序区,但不能放在子程序中间。作业: 1,数码显示程序设计,书反思:此堂课是一门复习课,是教同学们如何用DPTR或PC与MOVC和A寄存器指令合作实现数据的读写,也称查表指令。主要是一些常用数据要多次引用,学习比较简单,效果较好。第十二课时教学内容 AT89S51单片机中断系统教学重难点 1, 什么叫中断 2, 51单片机的5种中断 3,中断控制的应用。教学过程:一、 中断(Interrupt)概述1 中断的概念 所谓中断是指C
17、PU正在处理某件事时,外部发生了某一事件(如定时器溢出),请求(Requle)CPU迅速处理(Process),CPU暂时中断当前的工作,转入处理所发生的事件,处理完毕后,再回到原来被中断的地方,继续原来的工作,这样的过程称为中断。实现这种功能的部件称为中断系统,产生中断的请求源称为中断源。2中断的调用过程现行程序中断服务程序现行程序现行程序二、与中断系统有关的SFRa) 定时/计数器控制寄存器TCON(88H)IE1IT1IE0IT08BH8AH89H88HTCON(Time Control)的字节地址为88H,表明该寄存器的每一位可位寻址。其中:IT0:外部中断0的触发方式选择位,当IT0
18、=0时为电平触发(Lever Triggering),IT0=1时为边沿触发(Edge Triggering)。IE0:为外部中断0的标志位。IT1:同IT0类似。IE1:同IE0类似。CPU是怎么知道中断请求的尼?CPU会在每个机器周期的S5P2采样外部中断引脚,根据以下两种情况置中断标志:i. 当IT0=0时,CPU查到外引脚为低电平,置“1”中断标志,外引脚为高电平时清“0” 中断标志。ii. 当IT0=1时,CPU是根据前后两次检查外引脚的情况判断是否有中断请求,当前一次为高,后一次为低,置“1”中断标志。其他情况不置中断标志。CPU响应(Respond)中断,转向执行中断服务程序时会
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 51 单片机 汇编语言 教案 备课 中职篇 100
限制150内