|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
单片机检测开关按下状态的程序& H) M+ o2 F @( a- G) o" m9 A
( \; k8 z4 f; d9 ~! B6 H% V# ^4 v t" l9 c: o8 z' I: u3 ?& @
1 Y, b' a, H6 V2 G3 R
9 t0 v s- o2 i5 ?6 Z# m; J下面的程序是为了使我们按下开关按键的时候,能够通过一个LED灯来显示对应的状态,这个程序的作用是:可以通过单片机和按键控制多种线路的输出作用,当然我们如果把LED灯改成实现其它功能的电路,则达到了控制多种电路的目的。比如抢答器的应用,当我们选手按下的时候,可以通过数码管,让其显示选手的号码,当然抢答器比这个会复杂点,但这个程序是抢答器的一个基础。我觉得挺实用的,所以拿出来跟大家分享下。具体的电路如下: ![]()
! `7 L' |. P6 t3 L
6 M2 l1 t; U8 D/ ~
' v1 C; B0 l; A: R程序如下: #include" \' P$ J4 `: }9 @0 M' I6 B" v9 w7 b) O) E
sbit p20=P2^0;7 W( r, v4 s# Z; C" l0 I+ S
sbit p21=P2^1;; p; j, r/ A$ V
sbit p22=P2^2;
( N4 o, t; X2 d, Usbit p23=P2^3;' m% }% d$ Z4 @4 Q5 T$ |8 ]
sbit p24=P2^4;
, M- A* M B1 x; p( |sbit p25=P2^5;7 f' u- ~1 w$ e* U- ~( l% }1 Z
sbit p26=P2^6;# Y% v6 q5 p" N& Z4 ^: l
sbit p27=P2^7;9 _; q2 X% S. Q' d v1 U! m0 G
void main()4 r0 B( q5 b) _; [
{$ L& w. V! N0 m( P) `. W3 @% y
while(1)1 ]% b- s2 ~" T; Y& t& |
{
. @9 f: T! H7 n2 J lif(p24==0)
: p9 f$ g9 f$ w! H! P p23=0;4 F: o7 i8 T# b0 H/ x6 [# v
else" ]8 t6 B% V9 [! s; n: Z6 U
p23=1;; X/ W" D; A2 R" @/ i2 k
if(p25==0)
. E+ Q9 {" w1 G3 Z2 ` p22=0;
+ {" }: S- w3 p; V" q: m% l) A Aelse2 J4 F! I# i7 o
p22=1;! K0 u. E7 s/ T: \( O
if(p26==0)
3 G; p. ~% v! o' r7 d* G p21=0;
( ?$ O4 C$ G. Y; K0 Xelse
$ l) F }. A+ B) N3 m" x& V; N$ O, xp21=1; if(p27==0)
/ \5 Z6 _4 u! a9 F/ _4 D3 z( H4 z p20=0;
# {% E6 ^( _( H/ X3 velse; Y4 [: p( }+ T
p20=1; $ `0 y* u/ }* | ^& a) H0 B Y
}9 e6 A$ f4 @' r z7 Y
} ; k2 \9 V- m( \- E$ d
|
|