精品文档
精品文档
PAGE
PAGE #欢迎下载
精品文档
精品文档
PAGE
PAGE #欢迎下载
单片机C语言程序设计专题实习专周报告
班 级:
学 号:
姓 名:
指导老师:
专周成绩:一、硬件设计
1.设计要求:OA、B两通道都有车,两道正向放行 35s,然 后左向行驶放行15s。[当A道放行时(绿),B道禁止(红),反 之亦然,放行时间中包含有闪烁时间 ]②绿灯—红灯转换必须经 5s的警视状态O设置紧急情况处理器,当紧急情况发生时,两道 都亮红灯,让紧急车辆通过,完备再回到当前的状态O4具有数码 管显示倒计时功能。
2.图样:
3.硬件选择:选用8052单片机一片,红、黄、绿 LED交通 显示灯各4个,导线若干,7SEG数码显示管。
单片机模块:主控芯片采用 AT89C52单片机,AT89C52是AT89C5X
系列单片机的典型产品,我们以这一代表性的机型进行系统的讲
解。AT89C52单片机包含中央处理器、 程序存储器(ROM、数据存 储器(RAM)定时/计数器、并行接口、串行接口和中断系统等几
大单元及数据总线、地址总线和控制总线等三大总线。AT89C52
大单元及数据总线、地址总线和控制总线等三大总线。
AT89C52
共有4组8位I/O 口 (P0、P1、P2或P3),用于对外部数据的传
输,其内置最高频率达12MHZ勺时钟电路,用于产生整个单片机
运行的脉冲时序。管脚图如下图所示
P1.0-
厂
P1.1-
'2
-PQO
3
+ 1.
Pi 5-
A
-PO2
?].J-
5
-PO.5
6
P] 6-
7
TO兰
PJ.7-
E
-P06
I?ST/k*ID^
9
-PO7
IUCD.P3.1b-
10
L
H"5I
-EA/r>(>
TXD.P3.I-
JI
WL
-A IE. PROG
[?MTP.F3.2-
P
-|*SFN
国Ti、P3,3-
13
-P27
mpg』一
14
TI.P3.5-
-1^5
训取吋一
16
-P2.4
17
-P2 3
?CTAL2*"
IS
XTALl-
19
-P2.1
2U
一叭
倒计时显示模块:由于黄灯5秒闪烁时间不单另计时,四个路口 的倒计时是同步的。故倒计时采用两个七段数码显示管。
紧急模式模块:交通路口出现紧急状况在所难免, 如特大事件发 生,救护车等急行车通过等,我们都必须尽量允许其畅通无阻, 毕竟在这种情况下是分秒必争的, 时时刻刻关系着公共财产安全, 个人生死攸关等。由此在交通控制中增设禁停按键,就可达到此
目的。
二、软件设计
1.设计思路:本系统以单片机为核心,由状态灯,LED显示, 按键等组成。其中P0用于送显两片LED数码管,P1、P2、P3用 于控制红绿黄发光二极管,采用自带晶振时钟电路,REST引脚接 上复位电路,P3.1接紧急模式设置键,P3.2、P3.3、P3.4用于 调解预置交通灯时间。
系统上电或手动复位之后,系统等待模式选择设置键按下, 模式分两种:红绿灯时间自动和紧急模式。系统默认运行时间自
动,若此时3.1键按下,则设置为紧急模式,再次按3.1,回到
自动时间红绿灯模式。接下来,系统必须先显示状态灯及 LED数 码管,将状态码值送显 P1、P2、P3 口,将要显示的时间值的个 位和十位分别送显P0 口,在此同时以50ms为周期,用软件方法 计时1秒,到达1s就要将时间值减1,刷新LED数码管。 时间 到达一个状态所要全部时间, 则要进行下一状态判断及衔接,并
装入次状态的相应状态码值以及时间值。
三、程序流程图
精品文档
精品文档
PAGE
PAGE #欢迎。下载
精品文档
精品文档
PAGE
PAGE #欢迎。下载
四、程序及说明#include #include #define uint unsigned int #define uchar unsigned char uchar night_flag=0;uchar time_cl=0;
四、程序及说明
#include #include #define uint unsigned int #define uchar unsigned char uchar night_flag=0;
uchar time_cl=0;
uchar flag=0;
uchar B_N_D_flag=1;
uchar X_D_D_flag=1; uchar i,j;
uchar t=3;
uchar num=0;
//uchar num_night=0;
uchar time=35;
int bei,nan,xi,dong; // uc