单片机原理及应用.ppt_第1页
单片机原理及应用.ppt_第2页
单片机原理及应用.ppt_第3页
单片机原理及应用.ppt_第4页
单片机原理及应用.ppt_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

授课日期 班次 授课时数 2 课题: 任务二: P1口外接8只LED发光二极管模拟彩灯(一) 教学目的:掌握MCS-51的数据传送类指令以及数据存储空间 重点: MCS-51的数据传送类指令 难点: MCS-51的数据传送类指令 教具: 多媒体 作业: 3.6 3.9 自用参考书:单片机原理及应用李朝青主编、单片机应用技术郑毛祥主编 教学过程: 一、复习提问 单片机内部结构 二、新授 由任务二:P1口外接8只LED模拟彩灯引入本次课内容 1. 硬件电路与工作原理 详细描述本次任务,根据任务要求分析硬件构成并画出硬件电路 2. 程序设计 3.源程序的编辑、编译、下载 4. 相关知识 1)MCS-51的数据传送类指令 2)MCS-51内部的数据存储空间 5.课堂小结 课后小结:,31 任务二 P1口外接8只LED发光二极管模拟彩灯,311 硬件电路与工作原理,任务描述:利用P1口外接的8只LED发光二极管模拟彩灯,1、硬件电路,31 任务二 P1口外接8只LED发光二极管模拟彩灯,2、工作原理 当P1.0P1.7中的某端口为低电平时,对应的发光二极管亮,为高电 平灭。我们只要控制P1口各位的电平状态,就可以控制8只LED的亮 与灭。例如使(P1)=01010101B=55H, D7、D5、D3、D14只LED 亮,D6、D4、D2、D04只LED灭,从效果上看亮与灭是相间隔的; 反之,使(P1)=10101010B=AAH,则另外4只LED亮,若反复以一 定时间间隔不断从P1口轮流输出55H和AAH,则P1口上8只LED会呈 现流水彩灯的效果。,实现上述8只LED发光二极管控制的程序非常简单,可以用不同的指令来编程。以下是几种模式彩灯的控制程序。 1、将立即数送P1口的程序 ORG 0000H ; 定义程序从程序存贮器0000H单元开始存放 LOOP: MOV P1,#55H ; 立即数55H送P1口,4只LED亮 SJMP LOOP ; 原地踏步 END ; 程序结束 第一条指令指明程序在程序存贮中的存贮位置,第二条指令将立即数55H传送到P1口,对应的LED灯亮,第三条指令是一条无条件转移指令,即单片机执行完上一条指令后,会不断反复指行这条指令,直到电源断电,第四条是程序结束指令,31 任务二 P1口外接8只LED发光二极管模拟彩灯,3.1.2 控制程序,2、通过累加器A控制P1口的程序 ORG 0000H LOOP: MOV A,#0AAH ;将立即数AAH送累加器A MOV P1, A ;累加器A中的数送P1端口 SJMP LOOP ;转移到LOOP END,31 任务二 P1口外接8只LED发光二极管模拟彩灯,3、流水式彩灯程序 最简单的流水式彩灯程序也是简单的 程序流程图如右图,31 任务二 P1口外接8只LED发光二极管模拟彩灯,ORG 0000H LOOP: MOV P1,#55H ;将立即数55H送P1端口 LCALL TIME ;调延时子程序TIME MOV P1,#0AAH ;将立即数AAH送P1端口 LCALL TIME ;调延时子程序TIME SJMP LOOP ;转移到LOOP TIME: MOV R6,#200 ;延时子程序TIME TIME1:MOV R7,#200 TIME2:NOP NOP NOP DJNZ R7,TIME2 DJNZ R6,TIME1 RET END,程序如下:,31 任务二 P1口外接8只LED发光二极管模拟彩灯,4、开幕式与闭幕式彩灯程序 ORG 0000H LJMP MAIN ;跳转到主程序 ORG 0030H MAIN: MOV R0,#8 ;R0送循环次数8 MOV DPTR,#TAB ;给数据指针赋值 LOOP: MOV A,#00H ; MOVC A, A + DPTR MOV P1,A LCALL TIME INC DPL DJNZ R0,LOOP SJMP MAIN TIME: MOV R6,#200 TIME1: MOV R7,#200 TIME2: NOP NOP NOP DJNZ R7,TIME2 DJNZ R6,TIME1 RET TAB: DB 81H,0C3H,0E7H,0FFH,18H,3CH,7EH,0FFH END,31 任务二 P1口外接8只LED发光二极管模拟彩灯,313 源程序的编辑、编译、下载,打开“伟福”模拟仿真软件进行程序的编辑、编译。 1、正确选择单片机类型8751或8031 2、正确选择编译器伟福编译器 3、选择模拟仿真功能 4、打开或新建文件进行编辑 5、编译 打开“ISP下载软件”将目标文件下载到ISP-4实验开发板上的AT89S51单片机芯片,观察程序运行结果。 1、编译成功后打开下载软件 2、选择好单片机89S51并测试 3、打开伟福6000编译生成的.BIN或.HEX文件 4、选择自动写完成擦除、写、读、校验过程 5、观看运行结果,31 任务二 P1口外接8只LED发光二极管模拟彩灯,3.1.4 相关知识,1、什么是数据传送操作与数据传送指令?MCS-51单片机有哪些数据传递指令?,数据传送指令共有29条,数据传送指令一般的操作是把源操作数传送到目的操作数,指令执行完成后,源操作数不变,目的操作数等于源操作数。如果要求在进行数据传送时,目的操作数不丢失,则不能用直接传送指令,而采用交换型的数据传送指令,数据传送指令不影响标志C,AC和OV,但可能会对奇偶标志P有影响。,MOV A,data ;(data)(A) 直接单元地址中的内容送到累加器A MOV A,#data ;#data(A) 立即数送到累加器A中 MOV A,Rn ;(Rn)(A) Rn中的内容送到累加器A中 MOV A,Ri ;(Ri)(A) Ri内容指向的地址单元中的内容送到累加器A,以累加器A为目的操作数类指令(4条),31 任务二 P1口外接8只LED发光二极管模拟彩灯,3.1.4 相关知识,1、什么是数据传送操作与数据传送指令?MCS-51单片机有哪些数据传递指令?,以寄存器Rn为目的操作数的指令(3条),这3条指令的功能是把源操作数指定的内容送到所选定的工作寄存器Rn中。有直接、立即和寄存器寻址方式: MOV Rn,data ;(data)(Rn) 直接寻址单元中的内容送到寄存器Rn中 MOV Rn,#data ;#data(Rn) 立即数直接送到寄存器Rn中 MOV Rn,A ;(A)(Rn) 累加器A中的内容送到寄存器Rn中,31 任务二 P1口外接8只LED发光二极管模拟彩灯,3.1.4 相关知识,1、什么是数据传送操作与数据传送指令?MCS-51单片机有哪些数据传递指令?,以直接地址为目的操作数的指令(5条),这组指令的功能是把源操作数指定的内容送到由直接地址data所选定的片内RAM中。有直接、立即、寄存器和寄存器间接4种寻址方式: MOV data,data ;(data)(data) 直接地址单元中的内容送到直接地址单元 MOV data,#data ;#data(data) 立即数送到直接地址单元 MOV data,A ;(A)(data) 累加器A中的内容送到直接地址单元 MOV data,Rn ;(Rn)(data) 寄存器Rn中的内容送到直接地址单元 MOV data,Ri ;(Ri)(data) 寄存器Ri中的内容指定的地址单元中数据送到直接地址单元,31 任务二 P1口外接8只LED发光二极管模拟彩灯,3.1.4 相关知识,1、什么是数据传送操作与数据传送指令?MCS-51单片机有哪些数据传递指令?,以间接地址为目的操作数的指令(3条) 这组指令的功能是把源操作数指定的内容送到以Ri中的内容为地址的片内RAM中。有直接、立即和寄存器3种寻址方式: MOV Ri,data ;(data)(Ri) 直接地址单元中的内容送到以Ri中的内容为地址的RAM单元 MOV Ri,#data ;#data(Ri) 立即数送到以Ri中的内容为地址的RAM单元 MOV Ri,A ;(A)(Ri) 累加器A中的内容送到以Ri中的内容为地址的RAM单元,31 任务二 P1口外接8只LED发光二极管模拟彩灯,3.1.4 相关知识,1、什么是数据传送操作与数据传送指令?MCS-51单片机有哪些数据传递指令?,查表指令(2条) 这组指令的功能是对存放于程序存储器中的数据表格进行查找传送,使用变址寻址方式: MOVC A,A+DPTR ;(A)+(DPTR)(A) 表格地址单元中的内容送到累加器A中 MOVC A,A+PC ;(PC)+1(A),(A)+(PC)(A) 表格地址单元中的内容送到累加器A中,31 任务二 P1口外接8只LED发光二极管模拟彩灯,3.1.4 相关知识,1、什么是数据传送操作与数据传送指令?MCS-51单片机有哪些数据传递指令?,累加器A与片外数据存储器RAM传送指令(4条) 这4条指令的作用是累加器A与片外RAM间的数据传送。使用寄存器寻址方式: MOVX DPTR,A ;(A)(DPTR) 累加器中的内容送到数据指针指向片外RAM地址中 MOVX A, DPTR ;(DPTR)(A) 数据指针指向片外RAM地址中的内容送到累加器A中 MOVX A, Ri ;(Ri)(A) 寄存器Ri指向片外RAM地址中的内容送到累加器A中 MOVX Ri,A ;(A)(Ri) 累加器中的内容送到寄存器Ri指向片外RAM地址中,31 任务二 P1口外接8只LED发光二极管模拟彩灯,3.1.4 相关知识,1、什么是数据传送操作与数据传送指令?MCS-51单片机有哪些数据传递指令?,堆栈操作类指令(2条) 这类指令的作用是把直接寻址单元的内容传送到堆栈指针SP所指的单元中,以及把SP所指单元的内容送到直接寻址单元中。这类指令只有两条,下述的第一条常称为入栈操作指令,第二条称为出栈操作指令。需要指出的是,单片机开机复位后,(SP)默认为07H,但一般都需要重新赋值,设置新的SP首址。入栈的第一个数据必须存放于SP+1所指存储单元,故实际的堆栈底为SP+1所指的存储单元。 PUSH data ;(SP)+1(SP),(data)(SP) 堆栈指针首先加1,直接寻址单元中的数据送到堆栈指针SP所指的单元中 POP data ;(SP)(data)(SP)-1(SP), 堆栈指针SP所指的单元数据送到直接寻址单元中,堆栈指针SP再进行减1操作,31 任务二 P1口外接8只LED发光二极管模拟彩灯,3.1.4 相关知识,1、什么是数据传送操作与数据传送指令?MCS-51单片机有哪些数据传递指令?,交换指令(5条) 这5条指令的功能是把累加器A中的内容与源操作数所指的数据相互交换。 XCH A,Rn ;(A)(Rn)累加器与工作寄存器Rn中的内容互换 XCH A,Ri ;(A)(Ri)累加器与工作寄存器Ri所指的存储单元中的内容互换 XCH A,data ;(A)(data)累加器与直接地址单元中的内容互换 XCHD A,Ri ;(A3-0)(Ri)3-0)累加器与工作寄存器Ri所指的存储单元中的内容低半字节互换 SWAP A ;(A3-0)(A7-4)累加器中的内容高低半字节互换,31 任务二 P1口外接8只LED发光二极管模拟彩灯,3

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论