单片机流水灯实验报告东华理工
学院:机械与电子
工程
路基工程安全技术交底工程项目施工成本控制工程量增项单年度零星工程技术标正投影法基本原理
学院
单片机第三次实验报告
专业:自动化
班级:1121502
学号:201120150229
姓名:曾小燕
实验任务:
(1)使用单片机的P1、P3口控制驱动12个LED灯,要求编程使用软件延时的方法实现LED流动显示。
(2)在上面实验的基础上编写设计4种LED花样显示,编程实现顺序显示不同的花样。
实验电路和原理说明:
从原理图中可以看出,如果要让接在P1.0口的led1亮起来,那么只要把P1.0口的电平变为低电平就可以了;相反, 如果要接在P1.0口的LED1熄灭,就要把P1.0口的电平变为高电平;同理,其他11
个LED的点亮和熄灭的方法同LED1。
编程思路:
实验1:移位发。先将p1,p3的所有位全置1。把C清0。然后带进位左移。左一次,p1的0位亮。左移两次,p1的1位亮。同理,其他位也一样。
实验2:直接读p1和p3的位进行清零和置一可以实现各种要求。
程序
流程
快递问题件怎么处理流程河南自建厂房流程下载关于规范招聘需求审批流程制作流程表下载邮件下载流程设计
图:
实验1
实验2
使用的资源分配:
R0,R1,R2,R7装循环次数。堆栈起始地址为60H
实验调试与结果
分析
定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析
:
结果符合实验要求,对一那个1秒灯闪一次的要求,结果与硬件有关系。
实验总结:
做完这次试验,我学会怎么简单的使用I/O口。从此对单片机的兴
趣也更加浓厚。自己也会做各种花样流水灯了。
实验程序清单: 实验1:ORG 0000 ;单片机上电后从0000H地址执行
AJMP START;跳转到主程序存放地址处
ORG 0040H;设置主程序开始地址
START:MOV SP,#60H;设置堆栈起始地址为60H
MOV A,#0FFH ;
参数
转速和进给参数表a氧化沟运行参数高温蒸汽处理医疗废物pid参数自整定算法口腔医院集中消毒供应
赋初值
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
实验2:ORG 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 P1.2 ;位操作
ACALL DELAY ;调用延时子程序
CLR P1.4
ACALL DELAY
CLR P1.6
ACALL DELAY
CLR P3.0
ACALL DELAY
CLR P3.2
ACALL DELAY
MOV A,#0FDH
MOV P1,A
MOV A,#0FFH
MOV P3,A
ACALL DELAY
CLR P1.3
ACALL DELAY
CLR P1.5
ACALL DELAY
CLR P1.7
ACALL DELAY
CLR P3.1
ACALL DELAY
CLR P3.3
ACALL DELAY
MOV A,#00H
MOV P1,A
MOV A,#0F0H
MOV P3,A
ACALL DELAY
AJMP START ;跳到开始重来,以达到循环流动效果
DELAY:MOV R0,#255 ;延时子程序
D1:MOV R1,#255
D2:MOV R2,#5
D3:DJNZ R2,D3
DJNZ R1,D2
DJNZ R0,D1
RET ;子程序返回
END