null项目三 交通灯控制电路的制作 项目三 交通灯控制电路的制作 项目三 交通灯控制电路的制作 项目三 交通灯控制电路的制作 项目学习目标null任务一 开关状态指示电路的制作 任务
要求
对教师党员的评价套管和固井爆破片与爆破装置仓库管理基本要求三甲医院都需要复审吗
项目基本技能按下输入口的任意键,对应的输出口LED指示其状态。 null1.硬件电路制作 (1)电路原理图null(2)制作要点及元器件清单null(3)电路的调试通电之前先用万用表检查各种电源线与地线之间是否有短路现象。
给硬件系统加电,不插入单片机,用一根导线,一端接地,另一端分别接触IC插座的5、6、7、8脚,观察4个二极管是否正常发光。null2.程序编写P1口的P1.0~P1.3作为输入,读取开关S0~S3上的信号,P1.4~P1.7作为输出,控制发光二极管VD0~VD3。 ORG 0000H
LJMP START
START: MOV A,#0FH
MOV P1,A ;P1口为输入口
MAIN: MOV A,P1 ;读取S0~S3上的开关信号
SWAP A ;高、低4位互换
ORL A,#0FH ;屏蔽低4位
MOV P1,A ;将开关信号送到VD0~VD3
LCALL DELAY
LJMP MAIN
DELAY: MOV R3, #38H ;延时子程序
D2: MOV R4, #0F9H
D1: NOP
DJNZ R4,D1
DJNZ R3,D2
RET
ENDnull任务二 交通灯控制电路的制作 任务要求项目基本技能假定A、B两个交通干道交于一个十字路口,A为主干道,B为支干道,A、B干道各有一组红、黄、绿3色指示灯,指挥行人和车辆的通行。白天工作期间,信号灯及车道运行状态如表所示。如果工作在夜间,那么南北的黄灯以及东西的黄灯持续闪烁。 能够上电复位或者手工复位,初始状态4个路口都亮红灯,2s后正常工作。系统要求null1.硬件电路制作 (1)电路原理图null(2)制作要点及元器件清单null(3)电路的调试通电之前先用万用表检查各种电源线与地线之间是否有短路现象。
给硬件系统加电,不插入单片机,用一根导线,一端接地,另一端分别接触IC插座的21、22、23、26、27、28脚,观察6个二极管是否正常发光。null2.程序编写(1)程序流程图白天工作模式流程图 白天与夜间工作模式切换流程图 null2.程序编写(2)参考程序 ORG 0000H
MOV P2,#7EH ;4个路口红灯亮
MOV R5,#100
LCALL DELAY ;延时2s
DAY:
MOV P1,#0FFH ;P1口作为输入口
LOOP1: JNB P1.7,NIGHT
MOV P2,#7BH ;东西绿灯亮,南北红灯亮
MOV R5,#250 ;延时5s
LCALL DELAY
MOV R7,#05H ;置黄灯闪烁次数05H
H1: MOV P2,#7DH ;东西黄灯闪,南北红灯亮
MOV R5,#10 ;延时
LCALL DELAY
MOV P2, #7FH ;南北红灯亮
MOV R5, #10 ;延时
LCALL DELAY
DJNZ R7,H1 ;闪烁次数未到继续nullH2: MOV P2,#0DEH ;东西红灯亮,南北绿灯亮
MOV R5, #200 ;延时4s
LCALL DELAY
MOV R7,#05H ;置黄灯闪烁次数05H
H3: MOV P2,#0BEH ;东西红灯亮,南北黄灯闪
MOV R5,#10 ;延时
LCALL DELAY
MOV P2,#0FEH ;东西红灯亮
MOV R5, #10 ;延时
LCALL DELAY
DJNZ R7,H3 ;闪烁次数未到继续
LJMP LOOP1 ;循环nullNIGHT:
LOOP2: JB P1.7,DAY
MOV P2, #0BDH ;东西黄灯亮,南北黄灯亮
MOV R5, #10 ;延时
LCALL DELAY
MOV P2,#0FFH ;东西黄灯灭,南北黄灯灭
MOV R5,#10
LCALL DELAY
LJMP LOOP2
;延迟时间=R5×20ms
DELAY: MOV R4, #38H ;延时子程序
D1: MOV R3, #0F9H
DJNZ R3,$
DJNZ R4,D1
DJNZ R5,DELAY
RET
ENDnull任务三 程序调试与烧写 使用仿真器调试程序。程序调试完成后,使用编程器将编译的十六进制文件烧写入单片机,将单片机从编程器上取下,插入电路板的IC插座上,给电路板接上5V电源,观察电路运行情况。null知识点一 MCS-51单片机输入电路 项目基本知识单片机中有多种开关信号输入方式,其中,通过I/O引脚输入开关信号是常用的一种方式。
当作为输入口时,必须先把端口置“1”,此时锁存器的为“0”,使输出级的场效应管V2处于截止状态,引脚处于悬浮状态,可以作高阻输入。否则,如果此前曾经输出锁存过数据“0”,输出级的场效应管V2则处于导通状态,引脚相当于接地,引脚上的电位就被钳位在低电平上,使输入高电平时得不到高电平,读入的数据是错误的,还有可能烧坏端口。 null如要把端口置“1”,可执行如下指令:
SETB P1.X ;置位P1.X(X代0~7)
MOV P1,#0FFH ;将P1口全部置位null知识点二 相关指令 1.数据传送指令
MOV Rn,#data ;将数据传送到工作寄存器Rn(n=0~7)中
2.字节交换指令
SWAP A ;将累加器A中的高4位与低4位互换
3.逻辑或指令
ORL A,# data ;将数据与累加器A中的内容按位进行逻辑或操作4.控制转移指令
LJMP addr16 ;PC ← addr16
该指令的功能是直接将目标地址addr16装入PC,程序无条件转向目标地址。
nullAJMP addr11 ;PC ←(PC)+2,PC10~0←addr11
该指令的执行是先将PC+2装入PC,然后用11位地址addr11替换PC10~0,形成新的PC值,即为转移的目的地址。注意,AJMP指令的转移目标地址要求与AJMP后面一条指令在同一2KB区域内。5.判位转移指令
JB bit,rel ;(bit)=1,PC ←(PC)+3+rel
;(bit)=0,PC ←(PC)+3
该指令的功能是判断bit位是否为1,若为1,程序转移;若为0,程序顺序执行。
JNB bit,rel ;(bit)=0,PC ←(PC)+3+rel
;(bit)=1,PC ←(PC)+3
该指令的功能是判断bit位是否为0,若为0,程序转移;若为1,程序顺序执行。