授课日期 班次 授课时数2 课题:任务二:Pl口外接8只LED发光二极管模拟彩灯(一) 教学目的:掌握MCS-51的数据传送类指令以及数据存储空间 重点:MCS-51的数据传送类指令 难点:MCS51的数据传送类指令 教具:多媒体 作业:363.9 自用参考书:《单片机应用技术》耿长清主编、《单片机应用技术》刘守义主编 教学过程 复习提问 单片机内部结构 二、新授 由任务二:P1口外接8只LED模拟彩灯引入本次课内容 硬件电路与工作原理 详细描述本次任务,根据任务要求分析硬件构成并画出硬件电路 2程序设计 3源程序的编辑、编译、下载 4.相关知识 )MCS-51的数据传送类指令 2)MCS51内部的数据存储空间 5课堂小结 课后小结:
授课日期 班次 授课时数 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.课堂小结 课后小结:
3平在分P1外接发二极管 任务描述:利用P1口外接的8只LED发光二极管模拟彩灯 3.1.1硬件电路与工作原理 1、硬件电路 P1. 0cc C3 22u RST 80s51 R1 1k P1.7 Vss 3009×8 22D 221
3.1 任务二 P1口外接8只LED发光二极管模拟彩灯 3.1.1 硬件电路与工作原理 任务描述:利用P1口外接的8只LED发光二极管模拟彩灯 1、硬件电路
8.在务P外接发见一极管条 2、工作原理 当P10~P17中的某端口为低电平时,对应的发光二极管亮,为高电 平灭。我们只要控制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会呈 现流水彩灯的效果
3.1 任务二 P1口外接8只LED发光二极管模拟彩灯 2、工作原理 当P1.0~P1.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会呈 现流水彩灯的效果
3上任务一P1口外接8《发光三极管模拟彩好 3.1.2控制程序 实现上述8只LED发光二极管控制的程序非常简单,可以用不同的指令来 编程。以下是几种模式彩灯的控制程序。 1、将立即数送P1口的程序 ORG0000H;定义程序从程序存贮器0000H单元开始存放 LOOP:MOVP1,#5H;立即数55H送P1口,4只LED亮 SJMP LOOP;原地踏步 END 程序结束 第一条指令指明程序在程序存贮中的存贮位置,第二条指令将立即数 55H传送到P1口,对应的LED灯亮,第三条指令是一条无条件转移指令, 即单片机执行完上一条指令后,会不断反复指行这条指令,直到电源断 电,第四条是程序结束指令
实现上述8只LED发光二极管控制的程序非常简单,可以用不同的指令来 编程。以下是几种模式彩灯的控制程序。 1、将立即数送P1口的程序 ORG 0000H ; 定义程序从程序存贮器0000H单元开始存放 LOOP: MOV P1,#55H ; 立即数55H送P1口,4只LED亮 SJMP LOOP ; 原地踏步 END ; 程序结束 第一条指令指明程序在程序存贮中的存贮位置,第二条指令将立即数 55H传送到P1口,对应的LED灯亮,第三条指令是一条无条件转移指令, 即单片机执行完上一条指令后,会不断反复指行这条指令,直到电源断 电,第四条是程序结束指令 3.1 任务二 P1口外接8只LED发光二极管模拟彩灯 3.1.2 控制程序
3.任务三一P们口外接8D发光一极管模拟彩灯 2、通过累加器A控制P1口的程序 ORG OOOOH LOOP:MOVA,#0AAH;将立即数AAH送累加器A MOV Pl, A 累加器A中的数送P1端口 SJMP LOOP;转移到LOOP END 开始 55H送P1口 3、流水式彩灯程序 最简单的流水式彩灯程序也是简单的 延时0.3秒 程序流程图如右图 AAH送P1口 延时0.3秒
2、通过累加器A控制P1口的程序 ORG 0000H LOOP: MOV A,#0AAH ;将立即数AAH送累加器A MOV P1,A ;累加器A中的数送P1端口 SJMP LOOP ;转移到LOOP END 3.1 任务二 P1口外接8只LED发光二极管模拟彩灯 3、流水式彩灯程序 最简单的流水式彩灯程序也是简单的 程序流程图如右图 开始 55H送P1口 延时0.3秒 AAH送P1口 延时0.3秒
3.个任务一P口外接8夹发光极鲁模拟彩 程序如下 ORG OOOOH LOOP:MOVP1,#55H;将立即数55H送P1端口 LCALL TIME 调延时子程序TIME MOV PL#OaAH ;将立即数AAH送P1端口 LCALL TIME;调延时子程序TIME SJMP LOOP;转移到LOOP TIME: MOV R6.#200 ;延时子程序TIME TIMEl: MOV R7.#200 TIME2: NOP NOP NOP DJNZ R7. TIME2 DJNZ R6.TIME1 RET END
3.1 任务二 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 程序如下:
8.任务三p1口外接8发光一极管模拟彩灯 4、开幕式与闭幕式彩灯程序 ORG 0000H LIMP MAIN ;跳转到主程序 ORG 0030H MAIN: MOV RO.#8 R0送循环次数8 MOV DPTR#IAB;给数据指针赋值 LOOP: M A, #OOH MOVC A,@A+ DPTR MOV PlA LCALL TIME INC DPL DJNZ RO LOOP SJMP MAIN TIME MOV R6#200 TIME1: MOV R7.#200 TIME2: NOP NOP NOP DJNZ RZ.TIME2 DJNZ R6. TIME1 RET TAB DB 81H.OC3HOE7HOFFH 18H.3CH7EHOFFH END
3.1 任务二 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
3.务三P外接8只发泥一极管拟 3.1.3源程序的编辑、编译、下载 打开“伟福”模拟仿真软件进行程序的编辑、编译。 1、正确选择单片机类型8751或8031 2、正确选择编译器一伟福编译器 3、选择模拟仿真功能 4、打开或新建文件进行编辑 5、编译 打开“ISP下载软件”将目标文件下载到ISP-4实验开发板上的 AT89S51单片机芯片,观察程序运行结果 1、编译成功后打开下载软件 2、选择好单片机89S51并测试 3、打开伟福600C译生成的BIN或HEX文件 4、选择自动写完成擦除、写、读、校验过程 5、观看运行结果
3.1 任务二 P1口外接8只LED发光二极管模拟彩灯 3.1.3 源程序的编辑、编译、下载 打开“伟福”模拟仿真软件进行程序的编辑、编译。 1、正确选择单片机类型8751或8031 2、正确选择编译器-伟福编译器 3、选择模拟仿真功能 4、打开或新建文件进行编辑 5、编译 打开“ISP下载软件”将目标文件下载到ISP-4实验开发板上的 AT89S51单片机芯片,观察程序运行结果。 1、编译成功后打开下载软件 2、选择好单片机89S51并测试 3、打开伟福6000编译生成的.BIN或.HEX文件 4、选择自动写完成擦除、写、读、校验过程 5、观看运行结果
在一日外地一展 3.14相关知识 1、什么是数据传送操作与数据传送指令?MCS-51单片机有哪些数据 传递指令? 数据传送指令共有29条,数据传送指令一般的操作是把源操作数传送 到目的操作数,指令执行完成后,源操作数不变,目的操作数等于源 操作数。如果要求在进行数据传送时,目的操作数不丢失,则不能用 直接传送指令,而采用交换型的数据传送指令,数据传送指令不影响 标志C,AC和0V,但可能会对奇偶标志P有影响。 以累加器A为目的操作数类指令(4条) MOV Adata;(data)→(A)直接单元地址中的内容送到累加 器A MOVA#data;#data→(A)立即数送到累加器A中 MOV ARn;(Rn)→(A)Rn中的内容送到累加器A中 MOVA.@Ri;((Ri))→(A)Ri内容指向的地址单元中的内 容送到累加器A
3.1 任务二 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条)
在一日外地一展 3.14相关知识 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中
3.1 任务二 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中