1、灯光设计说明书 单片机项目二 灯光控制设计设计说明书任务一 流水灯控制一、任务设计要求1、基本要求 由单片机组成最小应用系统,利用单片机P1的8个端口,控制8个发光二极管,使之依次点亮,模拟流水灯的效果。2、技能提高利用P1口输出控制8个红、黄、绿三种不同颜色的发光二极管,彩灯从两端亮开始逐步向中间收缩,然后向两端扩展,再向中间收缩,如此反复,相邻状态的间隔时间为0.5s,实现8盏灯的缩展式点亮。 二、设计过程2、硬件电路设计流水灯电路硬件电路图3、软件设计(1)、绘制流程图 流水灯点亮控制流程图 彩灯缩展式点亮流程图(2)、编写源程序:程序1:控制8个发光二极管从左到右逐一点亮显示ORG 0
2、000H ;程序从地址0000H开始存放MOV A,#0FEH ;将立即数FEH送AMAIN: MOV P1,A ;A送P1口,点亮与P1.0连接的发光二极管 D0RL A ;左移ACALL DELAY ;调用延时子程序AJMP MAIN ;循环执行主程序DELAY: MOV R3,#0FFH ;延时子程序DEL2: MOV R4,#0FFHDEL1: NOPDJNZ R4,DEL1DJNZ R3,DEL2RET ;子程序返回END ;汇编程序结束 程序2:控制8盏彩灯缩展式点亮显示LIGHT1 EQU 0FEH LIGHT2 EQU 7FH ORG 0000H LJMP MAINORG 00
3、30HMAIN: MOV R6, #LIGHT1 ;置LED初始状态控制代码 MOV R7, #LIGHT2 ;置LED初始状态控制代码LOOP: MOV A, R6 ANL A, R7 ;两个控制代码组合MOV P1, A ;送P1口输出显示MOV A,R6 ;修改控制代码RL AMOV R6,AMOV A,R7RR AMOV R7,ALCALL DELAY ;调用延时子程序SJMP LOOP ;返回到标号LOOPDELAY: MOV R3,#0FFH ;延时子程序MOV R4,#10MOV R5,#250DELO:NOPN0PDJNZ R5,DELODJNZ R4,DELODJNZ R3,
4、DELORETEND ;汇编程序结束 程序4、控制8灯闪烁ORG 0000HSTART:MOV P1,#00HACALL DELAYSETB MOV P1,#0FFHACALL DELAYSJMP STARTDELAY:MOV R3,#250D2:MOV R4,#250DJNZ R4,D1DJNZ R3,D2RET END程序4、控制4亮4灭ORG 0000HSTART:MOV P1,#55HACALL DELAYSETB MOV P1,#0AAFACALL DELAYSJMP STARTDELAY:MOV R3,#250D2:MOV R4,#250DJNZ R4,D1DJNZ R3,D2RE
5、T END4、软、硬件调试仿真(效果图)任务二 汽车转向灯设计一、任务设计要求1、基本要求在本任务中,采用四个发光二极管来模拟汽车左、右转灯,分别用单片机的P1.4、P1.5控制左转向灯、P1.6和P1.7来控制右转弯灯的亮、灭状态;驾驶员发出的显示命令用P1.0、P1.1管脚连接左、右转向开关S0和S1进行模拟控制,用开关模拟汽车运行状态或显示命令见表1。表1 用开关模拟汽车运行状态或显示命令驾驶员命令开关状态S0S1驾驶员未发出命令00驾驶员发出左转显示命令10驾驶员发出右转显示命令01驾驶员发出汽车故障显示命令11控制要求:开关P1.0接+5V电压时, 左转向灯点亮, 开关P1.1接+5
6、V电压时, 右转向灯点亮, P1.0 、P1.1同时接+5V电压时,左、右转向灯同时点亮,P1.0 、P1.1同时接地时,左、右转向灯同时熄灭。2、技能提高按照实际情况,转向灯使用时呈闪烁状态。将控制要求改为:开关P1.0接+5V电压时, 左转向灯闪烁, 开关P1.1接+5V电压时, 右转向灯闪烁, P1.0 、P1.1同时接+5V电压时,左、右转向灯同时闪烁,P1.0 、P1.1同时接地时,左、右转向灯同时熄灭。二、设计过程1、 设计方案确定选用AT89C51单片机芯片、时钟电路、复位电路、电源和8个发光二极管构成最小系统,完成对单个信号灯的控制。2、 硬件电路设计3、软件设计(1)、绘制流
7、程图(2)、编写源程序: ORG 0000H START: MOV P1, #0FH ;P1低四位置1,作为输入口 LOOP: JNB P1.0, AA ;左转向开关P1.0=0JB P1.1, BB ;否则左转向开关P1.0=1,右转向开关P1.1=1MOV P1, #3FH ;左转向灯点亮LCALL DELAY ;延时LJMP LOOP ;返回初始状态BB: MOV P1, #0FFH ;左、右转向灯同时点亮LCALL DELAY ;延时LJMP LOOP ;返回初始状AA: JB P1.1, CC ;右转向开关P1.1=1MOV P1, #0FH ;否则右转向开关P1.1=0,P1.0=
8、0关灯LCALL DELAY ;延时LJMP LOOP ;返回初始状CC: MOV P1, #0CFH ;右转向开关P1.1=1,右转向灯点亮LCALL DELAY ;延时LJMP LOOP ;返回初始状DELAY: MOV R3,#0FFH ;延时子程序DEL2:MOV R4,#255DEL1:NOPDJNZ R4,DEL1DJNZ R0,DEL2RET ENDORG 0000HSTART:MOV P1,#0FH ;P1低四位置1,作为输入口LOOP:JNB P1.1,AA ;左转向开关P1.0=0JB P1.1,BB ;否则左转向开关P1.0=1,右转向开关P1.1=1MOV P1,#3F
9、H ;左转向灯点亮LCALL DELAY ;延时MOV P1,#00H ;左转向灯熄灭LCALL DELAY ;延时LJMP LOOP ;返回初始状BB:MOV P1,#0FH ;关灯LCALL DELAY ;熄灯MOV P1,#0FFH ;亮灯LCALL DELAY ;延时LJMP LOOP ;返回初始状AA:JB P1.1,CC ;右转向灯开关P1.1=1,转CCMOV P1,#0FH ;否则右转向开关P1.1=0,P1.0=0关灯LCALL DELAY ;延时LJMP LOOP ;返回初始状CC:MOV P1,#0CFH ;右转向开关P1.1=1,右转向灯点亮LCALL DELAY ;延
10、时MOV P1,#00H ;右转向灯熄灭LCALL DELAY ;延时LJMP LOOP ;返回初始状DEL2:MOV R4,#255DEL1:NOPDJNZ R4,DEL1DJNZ R0,DEL2RET END3、 软、硬件调试仿真(效果图)任务三 模拟广告灯设计一、任务设计要求1、基本要求由单片机来组成最小应用系统,控制16个发光二极管组成的彩灯阵列,按照规律即彩灯的左移、右移、由两侧向中间移动或组成某个图案等多种变化,以实现广告灯的效果。2、技能提高给16个LED控制的广告灯增加开关控制,使正常情况下(开关未闭合),广告灯图案闪烁显示;开关闭合时,广告灯图案逐一点亮,直至点亮整个图案。二
11、、设计过程设计方案确定用发光二极管形成彩灯阵列具有很好的广告灯装饰效果,广泛于广告宣传、店铺装饰、舞台灯光等场合。本任务在前两个任务的基础上,采用单片机的两组I/O端口来控制彩灯阵列,实现多种动态变化效果。任务分析2、硬件电路设计3、编写程序ORG 0000HMAIN: MOV A,#0FEH ; 送显示初值LP: MOV R0,#10 ; 送闪烁次数LP0: MOV P2,A ; 点亮LEDLCALL DELAY ; 延时MOV P2,#0FFH ; 熄灭灯LCALL DELAY ; 延时DJNZ R0,LP0 ; 闪烁次数不够10次,继续RL A ; 否则A左移,下一个灯闪烁SJMP LP
12、 ; 循环不止DELAY: MOV R3,# 0FFH ; 延时子程序RET ENDORG 0000HMAIN: MOV A,#0FEH ; 送显示初值COUN: ACALL FLASH ; 调闪烁子程序RL A ; A左移,下一个灯闪烁SJMP COUN ; 循环不止FLASH: MOV R0,#10 ; 送闪烁次数FLASH1: MOV P2,A ; 点亮LEDLCALL DELAY ; 延时MOV P2,#0FFH ; 熄灭灯LCALL DELAY ; 延时DJNZ R0,FLASH1 ; 闪烁次数不够10次,继续RETDELAY: MOV R3,# 0FFH ; 延时子程序RET EN
13、DORG 0000H ;程序从地址0000H开始存放LOOP: MOV R6,#8 ;控制循环次数,使P2端口输出8个灯依次点亮,MOV DPTR,#TABLE ;表的首地址送DPTRMOV R2,#0 ;R2转向第一个数LOOP1: MOV A,R2 ;R2的值送给AINC R2 ;加1,指向下一个数MOVC A,A+DPTR ;查表得显示码MOV P2,A ;送P2端口输出显示LCALL DELAY ;调用延时1sDJNZ R6,LOOP1 ;循环次数8次不够,返回继续LOOP2: MOV R7,#8 ;控制循环次数,使P3端口输出8个灯依次点亮,MOV DPTR,#TABLE ;表的首地
14、址送DPTRMOV R1,#0 ;R1转向第一个数LOOP3: MOV A,R1 ;R1的值送给AINC R1 ;加1,指向下一个数MOVC A,A+DPTR ;查表得显示码MOV P3,A ;送P3端口输出显示LCALL DELAY ;调用延时1sDJNZ R7,LOOP3 ;循环次数8次不够,返回继续SJMP $TABLE: DB 0FEH,0FCH,0F8H,0F0H,0E0H,0C0H,80H,00HDELAY: ;延时子程序1s RET END ;汇编程序结束 4软、硬件调试仿真(1)、绘制流程图三、设计总结和体会经过一个月左右的学习,虽然有些疲劳和困倦,但带给我们很多的收获。然而总是有许多知识都存在似懂非懂的现象,不过这种现象通过实际的上机操作,已经减少了许多。遇到不懂的地方,我们会通过小组讨论来解决问题,但如果讨论没结果的时候,我们便会向老师请教,使自己对这些知识也有了更深的理解和很好的掌握。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1