1 / 7
文档名称:

单片机流水灯实验报告东华理工.doc

格式:doc   大小:145KB   页数:7页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

单片机流水灯实验报告东华理工.doc

上传人:qiang19840906 2018/9/22 文件大小:145 KB

下载得到文件列表

单片机流水灯实验报告东华理工.doc

相关文档

文档介绍

文档介绍:学院:机械与电子工程学院

单片机第三次实验报告
专业:自动化
班级:
学号:9
姓名:曾小燕
实验任务:
(1)使用单片机的P1、P3口控制驱动12个LED灯,要求编程使用软件延时的方法实现LED流动显示。
(2)在上面实验的基础上编写设计4种LED花样显示,编程实现顺序显示不同的花样。
实验电路和原理说明:
从原理图中可以看出,,;相反, ,;同理,其他11
个LED的点亮和熄灭的方法同LED1。
编程思路:
实验1:移位发。先将p1,p3的所有位全置1。把C清0。然后带进位左移。左一次,p1的0位亮。左移两次,p1的1位亮。同理,其他位也一样。
实验2:直接读p1和p3的位进行清零和置一可以实现各种要求。
程序流程图:
实验1
实验2
使用的资源分配:
R0,R1,R2,R7装循环次数。堆栈起始地址为60H
实验调试与结果分析:
结果符合实验要求,对一那个1秒灯闪一次的要求,结果与硬件有关系。
实验总结:
做完这次试验,我学会怎么简单的使用I/O口。从此对单片机的兴趣也更加浓厚。自己也会做各种花样流水灯了。
实验程序清单:
0000 ;单片机上电后从0000H地址执行
AJMP START;跳转到主程序存放地址处
ORG 0040H;设置主程序开始地址
START:MOV SP,#60H;设置堆栈起始地址为60H
MOV A,#0FFH ;参数赋初值
MOV P1,A
MOV P3,A
MOV R7,#12
CLR C
LOOP:MOV A,P1 ;把p1复制给A
RLC A ;左移A
MOV P1,A ;把A复制给p1
MOV A,P3
RLC A
MOV P3,A
ACALL DELAY ;调用延时子程序
DJNZ R7,LOOP ;判断循环是否结束
AJMP START;移动完12次后跳到开始重来,以达到循环流动效果
DELAY:MOV R0,#12 ;延时子程序
D1:MOV R1,#207
D2:MOV R2,#200
D3:DJNZ R2,D3
DJNZ R1,D2
DJNZ R0,D1
RET ;子程序返回

END
0000 ;单片机上电后从0000H地址执行
AJMP START ;跳转到主程序存放地址处
ORG 0040H ;设置主程序开始地址
START:MOV SP,#60H ;设置堆栈起始地址为60H
MOV A,#0FFH ;参数赋初值
MOV P3,A
MOV A,#0FEH
MOV P1,A
ACALL DELAY ;调用延时子程序
CLR ;位操作