久久久国产一区二区_国产精品av电影_日韩精品中文字幕一区二区三区_精品一区二区三区免费毛片爱

 找回密碼
 注冊會員

QQ登錄

只需一步,快速開始

搜索
查看: 3066|回復: 0

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

[復制鏈接]
1#
發表于 2018-6-21 09:06:56 | 只看該作者 |只看大圖 |倒序瀏覽 |閱讀模式
' V+ W8 U& a; |, b, p1 \
#include<reg51.h>) x' E! \0 H  o  L
#define uchar unsigned char6 C  ?) @2 Z% E+ A/ j
#define uint unsigned int# k7 E* f8 l* @
sbit RED_A=P0^0; //東西向燈0 m& P3 K8 t6 O& w! B5 i
sbit YELLOW_A=P0^1;& t& i% p  a- ]7 q# H8 l
sbit GREEN_A=P0^2;
, e3 l8 D6 |' M7 l+ Isbit RED_B=P0^3; //南北向燈  @4 p% t0 J+ r  b
sbit YELLOW_B=P0^4;
' W( W. T5 }% }! r5 Vsbit GREEN_B=P0^5;
" p, i/ X! x/ E, ~1 E! c: juchar Flash_Count=0,Operation_Type=1; //閃爍次數,操作類型變量  + d4 E( r7 S. P- x$ q8 f' o
+ I& O; v0 K+ i: I( a+ d
//延時9 T3 P# A" a" k2 A: r6 d+ j
void DelayMS(uint x)
" W5 x/ _. d' W{5 V5 U8 T. h' M
uchar i;7 w2 g! N& S. ]5 x; D! n
while(x--) for(i=0;i<120;i++);
1 b( `! B. I. y: M( D  b) }}. R3 i& L* z2 C! f+ ]7 G6 ]5 K
//交通燈切換/ }7 ~7 ]' C: p* `3 X8 y% }4 f
void Traffic_Light()1 [; N# P, R+ b' q
{) g' o( o% v' ^/ x
switch(Operation_Type)
9 n7 N0 s* e- Y( _3 Q- a{
# |; D5 J7 E* s7 I6 U9 s# ccase 1: //東西向綠燈與南北向紅燈亮7 g2 U' p% J! e+ [- j% T
RED_A=1;YELLOW_A=1;GREEN_A=0;
" J3 B7 {1 m9 {; ]( b5 |( H6 W2 jRED_B=0;YELLOW_B=1;GREEN_B=1;
" P7 `. {& ?: V- R+ @9 g3 wDelayMS(2000);+ h: t& ^. I; N( `4 g7 L& g8 o( D
Operation_Type=2;+ t5 J, e. _; z1 B6 F/ M
break;! Q; h3 ~4 t, H4 N9 B  D3 r- n# c
case 2: //東西向黃燈閃爍,綠燈關閉1 u5 J, i. ^$ i8 U# Q
DelayMS(300);) g7 X( _8 N2 I7 l2 S8 D
YELLOW_A=~YELLOW_A;GREEN_A=1;1 X, j9 O4 w$ D& Y! `
if(++Flash_Count!=10) return; //閃爍 5 次
* w5 ^) e2 ]1 O' [2 DFlash_Count=0;  a( T/ [; p8 P4 h8 I* N
Operation_Type=3;
4 s* f3 `/ l/ Y( ?1 q* jbreak;
' g4 A0 p: v8 q; g  x0 r2 tcase 3: //東西向紅燈,南北向綠燈亮/ w3 F& c  H7 }' \6 q+ v
RED_A=0;YELLOW_A=1;GREEN_A=1;
$ ~2 j1 p( k& a8 Y0 L$ K+ |3 HRED_B=1;YELLOW_B=1;GREEN_B=0;  Y$ ?8 K; A# h- S+ E
DelayMS(2000);
+ N2 p" {$ g4 YOperation_Type=4;
( h- O* z2 o0 I& S6 _0 Q% Sbreak;
$ m+ v. w0 H% Ccase 4: //南北向黃燈閃爍 5 次
/ }; k$ b& f* C" s( A2 Q  h% eDelayMS(300);/ B8 S% m0 z- U7 q. A7 t0 R/ o
YELLOW_B=~YELLOW_B;GREEN_B=1;
: Z6 r" Q' `$ O2 u  N: W$ U* xif(++Flash_Count!=10) return;
( z8 k" [: e9 b$ RFlash_Count=0;
8 Q' W  p, j9 J8 t* L$ n4 nOperation_Type=1;) X7 o( w+ a6 t. ^# p# q2 `: n
}
6 |- j# `7 c# m/ Y, b3 B}6 p/ v* @) r0 d' _
//主程序
8 ^! X% Z$ A1 o  U- Z- e' e! f+ w' qvoid main()7 a4 w' G3 o. o7 h3 M9 ~
{" p0 h: X/ M7 h/ W* [( x
while(1) Traffic_Light();
( x: X! ]6 l, ?$ q2 Q" O% T* g8 u}  
4 v# _6 q1 d( q' r$ ^' l
8 b; u# [5 |) [8 u; Y- r. S
9 q, w! ?/ Q; G1 L+ ]: Y, K
3 k$ l% X0 D% a. y! q. D% y% Q
回復

使用道具 舉報

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

本版積分規則

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

GMT+8, 2025-7-23 20:22 , Processed in 0.066911 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

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