国产精品乱码一区-性开放网站-少妇又紧又爽视频-西西大胆午夜人体视频-国产极品一区-欧美成人tv-四虎av在线-国产无遮挡无码视频免费软件-中文字幕亚洲乱码熟女一区二区-日产精品一区二区三区在线观看-亚洲国产亚综合在线区-五月婷婷综合色-亚洲日本视频在线观看-97精品人人妻人人-久久久久久一区二区三区四区别墅-www.免费av-波多野结衣绝顶大高潮-日本在线a一区视频高清视频-强美女免费网站在线视频-亚洲永久免费

 找回密碼
 注冊會員

QQ登錄

只需一步,快速開始

搜索
查看: 3127|回復: 0

5-LED模擬交通燈單片機C語言程序設計實訓100例

[復制鏈接]
1#
發表于 2018-6-21 09:06:56 | 只看該作者 |只看大圖 |倒序瀏覽 |閱讀模式

' C, c% {3 s% V#include<reg51.h>4 g4 r, ~! _( ]% L, B  o
#define uchar unsigned char
" D6 n" x3 {0 c+ d3 S" r8 \$ k! U#define uint unsigned int
  G! X& Q+ w- i+ s7 ssbit RED_A=P0^0; //東西向燈
2 U% B7 z) o7 N+ v1 Fsbit YELLOW_A=P0^1;- @2 w2 k# K9 _0 N- B- l" g
sbit GREEN_A=P0^2;3 p" \6 |5 v; O0 G2 z
sbit RED_B=P0^3; //南北向燈$ h- w2 p' J4 l6 d& w
sbit YELLOW_B=P0^4;
& h4 U! J+ L' g9 ]sbit GREEN_B=P0^5;
. W) Z4 N) S( c3 uuchar Flash_Count=0,Operation_Type=1; //閃爍次數,操作類型變量  9 a! x% C4 Z1 F' w( s* u2 G3 ~

! X2 R9 N# Q5 I2 z! k2 Z//延時2 N: [' w" O( L/ u) }
void DelayMS(uint x)
- `# ^& Q+ o% c& }{2 [- o. f/ P" `9 y) W/ Z. ~$ K
uchar i;% s9 j8 }) d! g7 z4 d- h: T
while(x--) for(i=0;i<120;i++);4 v2 B4 ~9 v4 _
}
$ b- q5 {' Y) h2 {$ d//交通燈切換
2 l0 m( Q: u1 }/ e2 k4 ?# U+ }void Traffic_Light()7 A& d& C0 Y/ }, r& C, B
{% a2 j" |) _4 \2 p0 A( c) o. c) j
switch(Operation_Type)6 Q+ @4 ]" Z4 s9 z! T9 b4 v, ~
{# d9 ~1 b& C! `7 ]# P9 v
case 1: //東西向綠燈與南北向紅燈亮
; c% D# C% J$ ?# H7 MRED_A=1;YELLOW_A=1;GREEN_A=0;, Y! |, o, j0 O
RED_B=0;YELLOW_B=1;GREEN_B=1;% Q! L0 P; g/ ~6 K) K: k
DelayMS(2000);. h# C+ W- w) [5 N
Operation_Type=2;
8 m, P2 u* o4 R/ I8 Sbreak;4 e4 N- Q. T% O& b& u
case 2: //東西向黃燈閃爍,綠燈關閉
7 l4 g- s3 R$ @9 O7 IDelayMS(300);( h; {' E9 B4 X$ {
YELLOW_A=~YELLOW_A;GREEN_A=1;. z. N* Y8 W$ P% W; K. D
if(++Flash_Count!=10) return; //閃爍 5 次9 R) t+ x% G& @4 g0 }2 P  ~
Flash_Count=0;% p, ^8 w, b8 ]) ~$ M; r
Operation_Type=3;" Z  `% s2 Y2 F+ o  s* K
break;
. O$ w- R% v' {case 3: //東西向紅燈,南北向綠燈亮
! T3 v# o( e) q8 f& dRED_A=0;YELLOW_A=1;GREEN_A=1;
9 d  _8 K" `" S. qRED_B=1;YELLOW_B=1;GREEN_B=0;! N! e" F/ t* R
DelayMS(2000);" v: [/ U% k' o" B' ?4 Y/ ]3 D* ]
Operation_Type=4;
8 ?; J! T0 o% t1 bbreak;" I, K" Q, \5 y) r
case 4: //南北向黃燈閃爍 5 次
/ y2 Q/ ~7 y! W" n6 fDelayMS(300);
) v' j. e3 |$ x0 `! [3 pYELLOW_B=~YELLOW_B;GREEN_B=1;; F; \" q7 _4 P
if(++Flash_Count!=10) return;
* i7 \* u# k, ~- b( k& ~% F! T1 p6 o7 VFlash_Count=0;
; h6 Z% S  L' F2 `7 v9 H  yOperation_Type=1;
4 L" d! C9 c; m* b& `' Q}
. ~- K7 m) j( D5 k; j}
/ L2 b: h1 G9 N+ N' u* t( w//主程序, v3 a& W; H; l, b) u
void main()3 M7 q; `6 B! E( p. ^; ]
{/ M$ y( F/ @6 C8 s. ?2 V- d
while(1) Traffic_Light();
7 x: a; @* J2 c' K; c$ h0 S" L6 T}  
# F7 F& c3 |# Z* J) O% g
; o" H( f0 a+ N% T, A: ?% K
6 D! c( b0 Y8 B; t  c$ A( ?7 C
- j4 r* U! v8 V$ \: h5 Y0 S
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 注冊會員

本版積分規則

Archiver|手機版|小黑屋|機械社區 ( 京ICP備10217105號-1,京ICP證050210號,浙公網安備33038202004372號 )

GMT+8, 2025-9-27 02:27 , Processed in 0.068381 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

快速回復 返回頂部 返回列表