|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
#include <reg52.h> //头文件
5 d. W; Q" F" x* q6 ?#define uint unsigned int //宏定义" ? N* _. V+ d$ g
#define uchar unsigned char5 h9 a9 V" D8 c) y# H$ q, Q
code tabup[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
/ `0 C7 P1 T2 o$ n2 J3 `code tabdowm[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};- Y- ]" e9 ~/ g& a4 v7 c
void delay(uint z);
# _' g" ], p1 P4 X- {' _9 Uint i;6 `4 B7 E3 R0 `7 _2 x+ R9 `9 A
sbit beep=P2^3;# J% ^+ Q: ^2 `1 l+ s; b9 W- l
void blue_Init() //蓝牙串口初始化
7 A4 x- I) T$ F2 V9 R{$ E( D* b" }) T
TMOD = 0x20;# r+ Y" a' X9 i4 ?' b" V; ]9 a
TH1 = 0xfd; //96006 q1 |, k# q4 `0 g/ L( [1 ~0 ~
TL1 = 0xfd;
4 u o; R! a4 K' d. i' J SM0 = 0;
- s" ]8 k( d. v4 I$ h2 b SM1 = 1;
3 n' g$ s9 Y& {- ?! u N REN = 1;4 \1 \( f+ k9 E! c
TR1 = 1;
1 Q1 p% }1 a. r; B" ^- w+ D& i9 I}+ l1 v9 H( ~6 N N
/**主函数**/
9 g' u$ T) M5 d5 Wvoid main()& c) `* F; g. V
{
6 o4 t- R3 f6 l O6 j3 A; ^7 R# F8 P4 v int a;) }' U- z" i4 ~) n% W
blue_Init();
) s$ k" w, H8 @, Y" p6 b P1=0xff;! y3 o& b: E* ^7 p) M. ^$ A
while(1), p2 m; |" U" Q: J& d$ k3 _- H
{
8 U3 y& d2 @% _/ Y p' Q" P2 u/ o* B if(RI==1) ) w1 I* r6 i" X0 g
{
9 S/ j7 A0 y9 w: I7 q- V" g a=SBUF;
- I) ^' f: @7 F RI=0;) D9 \' I9 s, B5 K8 \! L3 T
if(a=='1') //熄灭LED' G4 m5 I1 P. c% F
{" R2 u; _7 l' T: Y& T
P1=0xff;* `+ {5 e+ j3 ?2 k/ E; ]
beep=0;
$ U2 v% N/ ^; ^4 ?/ i4 P \ delay(100);3 b, T1 }( a$ t+ R+ P( v( j
beep=1;- ^1 ]' h+ v& p3 `% `( {4 s
} ' q9 ]2 ~+ ?# v `$ ~
else if(a=='2') //点亮LED; t. z R9 y4 N, }" _
{
, |. r6 g6 x2 v P1=0x00;
$ L/ h& \5 u8 }4 |4 F6 s) \ beep=0;
% v7 w& \( }8 d+ q0 }+ c& J delay(100);
0 |4 w: D( I! q beep=1;: K8 p: ?* b; K3 J+ Q; [: t1 }
}1 d l$ o- Q B( m5 L
else if(a=='3') //顺时针流水灯
5 \* ]! k" L7 f! h ? {
* Z" h9 K9 S( l" A/ d for(i=0;i<8;i++) j9 K6 _; T0 x
{: R4 M, O+ M( a$ u/ D8 J
P1=tabup;' I! Q) \; A+ c. K
delay(2000);
. Z2 x1 c6 q) u- B }. E0 L* _; E4 i, e }
; T! C% B% Z# x4 n' v }
1 l. `$ p) E h/ s1 h3 V6 X0 E else if(a=='4') //逆时针流水灯
& W. I p |, M- u7 e/ @: v0 w {
- _, _& L0 J% U9 K$ b& Y for(i=0;i<8;i++)& @. [" J/ N# v6 t
{
1 W# I/ v: k$ s P1=tabdowm;2 a$ e* ~# k n
delay(2000);
$ f: M( x/ g) i* I- ] }
+ O* |" Z0 T( t }: d5 ?0 l) w6 ~6 W3 o. [7 k
* C; X# P5 P, R4 F2 ~$ O
} ( u( Q) U4 l& c. s: Y9 b) i
}( F# _) \' q3 {
}# W3 R5 x. m q8 `% P; X' ?$ m6 |
void delay(uint z) //延时函数$ M/ w4 M$ O" |' q) O, B
{: z5 D3 y5 B, J- Z; X0 [
uchar x,y; D9 _, e+ G1 L3 A# j+ B
for(x=z;x>0;x--)
/ T3 R4 v% ^4 `1 i5 ` for(y=210;y>0;y--);! j( h- B; L* u: O/ E' z0 `
}
& Z, r1 l6 h5 e `5 t1 h& C6 d# L |
|