单片机实验报告
单片机实验报告
一、实验内容
编写程序实现交通灯,并且在实验仿真箱上实现其功能。
实验必须实现得功能有:
1、 由发光二极管实现红、黄(闪动)、绿交通控制等(主电路),初始状态为红
灯。
2、 由七段数码管显示倒计时(主干道15秒,支干道10秒)。
3、 用LED点阵显示人行道“走”和“行”以及救护车“十”(主干)。
4、 用外部中断实现救护车控制电路,东西南北红灯,LED显示“十”,10秒倒计
时后回到当前时间。
二、实验设计分析及思路
本实验程序可以按照模块化进行编程,具体可以分为主程序模块、状态改变模块、显示模块、中断模块等相关模块,这些模块相互独立,但又通过主程序模块进行连接在一起,形成一个整体,从而实现整个系统功能。
1、 主程序模块
此模块主要是进行初始化,然后在各个模块之间进行循环切换,这样系统可以 不断进行下去,此模块主要是一个循环,在这个循环中调用各个子函数,因为程序 执行的快速性,系统的各个部分就可以让人感觉是在并行运行,虽然他们是顺序执行的。
2、 中断模块
中断模块包含了两个中断,一个定时中断和一个外部中断。本系统启用了定时 器0,用定时器来计算红灯或绿灯的时间,定时器每50ms产生一次中断,20次以
后就是1s钟。外部中断是用来启动全部路口停止及救护车来时的状态的,在当外部中断信号到来时,在中断程序中,通过改变状态标志state来启动全路口停止。
3、 状态改变模块
此模块主要是根据定时中断来改变整个系统的状态。整个系统包含南北绿东西红,南北黄闪东西红,南北红东西绿,南北红东西黄闪,ALLSTOP这五个状态。当定时器产生一次中断时,计数count加1,然后判断count是否等于20,如果不等于,则什么都不做,否则根据当前状态,进行不同的处理——Time减1或者状态的改变。具体的状态改变时刻见流程图。
4、 二极管显示模块
此模块是根据状态来显示二极管及对P1口的低六位进行赋值。
5、 数码管显示模块
此模块是显示Time中的内容,即显示通信或停止所剩余的时间。
6、 点阵显示模块
此模块是根据不同的状态,显示不同的图画,共有三种类型的图画—人走(连续的 两幅快速显示)、人停、救护车来。
单片机实验报告
三、PROTUES仿真电路
四、调试过程
由于在编写程序时我采用模块化方法,并且我对整个系统有一个很清晰的思路,在硬 件调试之前我对程序进行了很好的分析,所以在硬件调试时,我没有遇到什么较大的问题就把系统的大部分功能给很好的实现了。但是存在着一个很严重的问题,在整个系统运行时数码管总是在闪动,我调整延时程序的延时时间,并且尽量的缩减程序,但是这样仍然不能消除数码管的闪动,只能减小这种闪动,直到最后我还是没有把这种闪动消除。
五、总结与心得
经过几个星期的编程和调试,我还是没在规定时间内做完实验。但在实验的过程中, 我对单片机有了更深的掌握,对单片机应用开发过程有了一定的了解,这次是让我对单片机在实际生活中的应用有了感性的认识,并且对此产生了很深的兴趣。
单片机实验报告
附:源程序代码:
OUTBIT EQU 08002H OUTSEG EQU 08004H IN EQU 08001H NUM EQU 48H LEDBUF EQU 50H DELAYT EQU 52H ROWLOW EQU 0B002H ROWHIGH EQU 0B003H COLLOW EQU 0B000H COLHIGH EQU 0B001H BITMASK EQU 54H BASE EQU 56H FONT EQU 58H TIME1 EQU 30H TIME2 EQU 32H COUNT EQU 34H COUNT1 EQU 36H STATE EQU 20H ;01-南北绿东西红,02-南北黄闪东西红 ;03-南北红东西绿,04—南北红东西黄闪 ;05-STOP FLAG EQU 22H FLAG1 EQU 24H STATE1 EQU 26H SR EQU P1.0 ;南北 SY EQU P1.1 SG EQU P1.2 ER EQU P1.3 ;东西 EY EQU P1.4 EG EQU P1.5 ORG 000H LJMP STRATE ORG 0003H LJMP INT0P ORG 000BH LJMP IT0P ORG 0030H STRATE: ;SETTING MOV FLAG1,#01H MOV TIME1,#0FH MOV TIME2,#0AH
单片机实验报告
MOV COUNT,#00H MOV FLAG,#00H MOV SP,#65H MOV STATE,#01H MOV STATE1,#00H MOV TCON,#01H MOV IP,#01H MOV TMOD,#01H MOV TL0,#0FFH;;;; MOV TH0,#3CH SETB ET0 SETB TR0 SETB EX0 SETB EA LOOP0: CALL LIGHTPLAY CALL LEDPLAY CALL ARRAYPLAY CALL CHANGE AJMP LOOP0 CHANGE: MOV A,FLAG CJNE A,#1,CHEXIT MOV A,STATE DEC A CLR C RLC A MOV DPTR,#FUNCTION JMP @A+DPTR FUNCTION: AJMP STA1 AJMP STA2 AJMP STA3 AJMP STA4 AJMP STA5 STA1: MOV A,TIME1 CJNE A,#06H,STAJUMP1 MOV STATE,#02H MOV FLAG1,#01H STAJUMP1:
单片机实验报告
DEC TIME1 MOV FLAG,#00H STA1EXI: AJMP CHEXIT STA2: MOV A,TIME1 CJNE A,#01H,JUMP2 MOV TIME1,#0AH MOV STATE,#03H MOV FLAG1,#01H AJMP EXITSTA2 JUMP2: DEC TIME1 EXITSTA2: MOV FLAG,#00H STA2EXI: AJMP CHEXIT STA3: MOV A,TIME1 CJNE A,#06H,JUMP3 MOV STATE,#04H MOV FLAG1,#01H JUMP3: DEC TIME1 MOV FLAG,#00H STA3EXI: AJMP CHEXIT STA4: MOV A,TIME1 CJNE A,#01H,STAJUMP4 MOV TIME1,#0FH MOV STATE,#01H MOV FLAG1,#01H AJMP EXITSTA4 STAJUMP4: DEC TIME1 EXITSTA4: MOV FLAG,#00H STA4EXI: AJMP CHEXIT STA5: MOV A,TIME2 CJNE A,#01H,STAJUMP5 MOV TIME2,#0AH
单片机实验报告
MOV FLAG1,#01H AJMP STAEXIT2 STAJUMP5: DEC TIME2 STAEXIT2: MOV FLAG,#00H STA5EXI: AJMP CHEXIT CHEXIT:RET INT0P: MOV STATE1,STATE MOV STATE,#05H MOV FLAG1,#01H RETI IT0P: CLR EA MOV TL0,#0B0H ;;;; MOV TH0,#3CH SETB 0AFH ;YELLOW_FLASH YFLA: MOV A,STATE CJNE A,#02,FLASHE ;MOV A,COUNT ;CJNE A,#10,FLASHE CPL SY AJMP FLAEND FLASHE: MOV A,STATE CJNE A,#04,FLAEND ;MOV A,COUNT ;CJNE A,#10,FLAEND CPL EY ;YELLOW_FLASH_END FLAEND: MOV A,STATE CJNE A,#05,NOCOUNT INC COUNT1 MOV A,COUNT1 CJNE A,#20,IEXIT
单片机实验报告
MOV COUNT1,#00H AJMP IEXIT NOCOUNT: INC COUNT MOV A,COUNT CJNE A,#20,IEXIT MOV FLAG,#01H MOV COUNT,#00H IEXIT:RETI LIGHTPLAY: MOV A,FLAG1 CJNE A,#01H,LIEXIT MOV FLAG1,#00H MOV A,STATE DEC A clr c Rlc A MOV DPTR,#LIFUN JMP @A+DPTR LIFUN: AJMP LIPLAY1 AJMP LIPLAY2 AJMP LIPLAY3 AJMP LIPLAY4 AJMP LIPLAY5 LIPLAY1: CLR SR CLR SY SETB SG SETB ER CLR EY CLR EG AJMP LIEXIT LIPLAY2: CLR SR SETB SY CLR SG SETB ER CLR EY CLR EG AJMP LIEXIT LIPLAY3:
单片机实验报告
CLR SY CLR SG CLR ER CLR EY SETB EG AJMP LIEXIT LIPLAY4: SETB SR CLR SY CLR SG CLR ER SETB EY CLR EG AJMP LIEXIT LIPLAY5: SETB SR CLR SY CLR SG SETB ER CLR EY CLR EG AJMP LIEXIT LIEXIT:RET LEDPLAY: MOV A,STATE CJNE A,#05,T0 MOV A,TIME2 AJMP LEMAIN T0: MOV A,TIME1 LEMAIN: ;MOV DELAYT,#1 BUF: MOV DPTR,#BCDMAP MOVC A,@A+DPTR MOV R0,A ;MOV R2,#2H MOV R3,#00100000B LOOP1: MOV A,R0 SWAP A
单片机实验报告
ANL A,#0FH MOV DPTR,#LEDMAP MOVC A,@A+DPTR MOV LEDBUF,A MOV R1,#LEDBUF MOV DPTR,#OUT …… 此处隐藏:5135字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [政务民生]2013年公共基础知识热点问题(七)
- [政务民生]检验检测机构资质认定评审准则及释义20
- [政务民生]关于印发重庆市房屋建筑和市政基础设施
- [政务民生]1、隧道洞身开挖支护施工技术交底书
- [政务民生]2015年山东省17地市中考语文试题分类汇
- [政务民生]2-高级会计师资格考试和评审流程图
- [政务民生]2018版中国清分机行业发展分析及前景策
- [政务民生]新课改高中政治探究
- [政务民生]2018-2024年中国新型组合房屋行业投资
- [政务民生]2015年上海市春季高考数学模拟试卷五
- [政务民生]灌砂法及环刀法测压实度(带计算过程)
- [政务民生]运筹学实验2求解非线性规划
- [政务民生]劝学、逍遥游默写(教师卷)
- [政务民生]《运筹学》 - 期末考试 - 试卷A - 答案
- [政务民生]八年级英语下册 Module 6 Hobbies测试
- [政务民生]2019年宪法知识竞赛试题库100题(含答
- [政务民生]自动化英文文献翻译
- [政务民生]公文格式实施细则
- [政务民生]高一地理上册课堂跟踪练习题6
- [政务民生]会计继续教育习题及答案
- 第三章 无约束最优化方法
- 泛读教程第三册答案
- 魏晋南北朝文学
- 幂的运算复习题
- 城市环境问题的成因与治理策略_以社会
- 钢结构行业产业链及竞争分析研究
- 新型热塑性弹性体增韧聚丙烯的研究
- 中国旅游地理B卷试题及答案
- (苏教版)五年级数学上册第三单元测试卷
- 不稳定性心绞痛诊断与治疗
- 俞氏国际后勤职能部门绩效考核办法
- GB7258-2017新标准考试题含答案
- 小学生汉字听写比赛活动方案
- 1.3《平抛运动》学案 教科版必修2
- 2011香港特别行政区公务员考试复习资料
- 考虑水力条件变化的城市给水管网可靠性
- 表面活性剂在油田开发和生产中的应用
- ITT内部培训资料-FI端吸泵的介绍
- 文明守纪,从我做起学生发言稿
- 初中读《聊斋志异》心得体会800字范文




