久久久国产一区二区_国产精品av电影_日韩精品中文字幕一区二区三区_精品一区二区三区免费毛片爱
機械社區
標題:
5-LED模擬交通燈單片機C語言程序設計實訓100例
[打印本頁]
作者:
2369353531
時間:
2018-6-21 09:06
標題:
5-LED模擬交通燈單片機C語言程序設計實訓100例
(, 下載次數: 43)
上傳
點擊文件名下載附件
下載積分: 威望 -10 點
(, 下載次數: 36)
上傳
點擊文件名下載附件
下載積分: 威望 -10 點
2 ^% W4 }/ D6 h A! |/ j
#include<reg51.h>
+ G' ]% j6 Q* D" H0 U x' G* l
#define uchar unsigned char
/ _ Z4 ]7 ?9 |% }
#define uint unsigned int
& q$ M& s7 S( n+ g' n
sbit RED_A=P0^0; //東西向燈
/ Y/ N8 C! j) A$ z9 Z+ p# H1 y0 ~. J; \
sbit YELLOW_A=P0^1;
# P& c; K3 F% g C7 r, r! m
sbit GREEN_A=P0^2;
) ~5 _& t' m/ s) h% _) E
sbit RED_B=P0^3; //南北向燈
A! g, k+ u. }9 V6 A+ C/ }
sbit YELLOW_B=P0^4;
) M, W! J6 Y8 z/ n- E
sbit GREEN_B=P0^5;
3 ?" z7 o( |* s0 \& R
uchar Flash_Count=0,Operation_Type=1; //閃爍次數,操作類型變量
+ t. A E, f9 V) V4 a
5 V0 ^6 y8 ^; G6 b9 C
//延時
+ O7 P! |. e- l8 U8 G1 \
void DelayMS(uint x)
5 h( j3 C8 R* D, m- X: z; ^* l5 i) ^
{
7 T5 e9 i, x" x
uchar i;
" y; f _" E# P
while(x--) for(i=0;i<120;i++);
W9 w* C% C3 q! X+ A: t$ w3 _
}
$ b4 b; d; S7 R$ m @& q
//交通燈切換
5 R6 @2 t4 j1 S: J2 _
void Traffic_Light()
b/ d( Y$ v( y; ]+ a' C- U
{
/ y( h# O& z# k" ?4 I, i" m
switch(Operation_Type)
% d9 r% \) E5 _1 u) a
{
+ A; A$ f2 m4 B
case 1: //東西向綠燈與南北向紅燈亮
9 R, Y2 }5 k1 V; |# A1 t
RED_A=1;YELLOW_A=1;GREEN_A=0;
, A" l6 l( ?7 {. d9 H; n! f2 I
RED_B=0;YELLOW_B=1;GREEN_B=1;
8 a+ D3 F- h O7 ` K* `" n8 U
DelayMS(2000);
# w5 D- m. x" M; t
Operation_Type=2;
; s! s/ [7 m1 u3 H' ^/ S: Y
break;
0 O# P) z! A4 j0 s0 v2 v
case 2: //東西向黃燈閃爍,綠燈關閉
' H( v, A5 f/ m
DelayMS(300);
s [- }& L* q$ g2 \7 E; G4 f
YELLOW_A=~YELLOW_A;GREEN_A=1;
- L! y( ?; {! K+ x% S( E: C( {
if(++Flash_Count!=10) return; //閃爍 5 次
( @) }' J( N/ N C0 M
Flash_Count=0;
* ^* P5 ?/ q: M1 p$ B
Operation_Type=3;
6 [0 }% s( h: }) b
break;
# l3 _$ B! w$ d7 Y
case 3: //東西向紅燈,南北向綠燈亮
" S( p5 G: I+ E: P, b: C
RED_A=0;YELLOW_A=1;GREEN_A=1;
8 r7 @1 n6 ^" B6 Z. c2 P
RED_B=1;YELLOW_B=1;GREEN_B=0;
4 W9 u* d* \/ B$ h
DelayMS(2000);
$ O" C* t7 c+ ]& y; k8 J
Operation_Type=4;
* j* t7 ~% }# W4 A3 a
break;
4 c( b' D/ |# }
case 4: //南北向黃燈閃爍 5 次
9 R% k; F" R( n3 a( ~
DelayMS(300);
; P t) q' E( I% w! `, t/ T/ K$ y
YELLOW_B=~YELLOW_B;GREEN_B=1;
3 N* N N) A; [! D8 [
if(++Flash_Count!=10) return;
9 w( h; d# s% t& W+ M
Flash_Count=0;
, p% {* _$ p; m' p9 R) V! e5 h* I
Operation_Type=1;
' \" Z3 b* M0 o X: c" K! H% x
}
2 T2 F4 t6 N K$ M t, M; C
}
3 e; w' p4 J) {0 @
//主程序
. Y! u" O5 o8 ]4 @+ @4 C& V5 Z) s
void main()
) g9 X0 W3 {! K7 ]& l
{
, ~/ Y( Q2 n* ^
while(1) Traffic_Light();
/ Q) x4 G% J: F$ d( y
}
' r1 K; J U8 j D2 ~" ?
' u, L6 W# l: i2 }& D
5 p- u$ C1 F! O; A% O" S9 Y
/ \) B, B9 ]$ Z- u7 y
歡迎光臨 機械社區 (http://www.ytsybjq.com/)
Powered by Discuz! X3.5