|
視頻地址:http://v.qq.com/page/f/9/9/f0306rbk299.html
130939uqg3ykqkoky7sqr7.jpg.thumb.jpg (48.3 KB, 下載次數: 196)
下載附件
2016-7-5 03:21 上傳
藍牙是淘寶買的 HC-05,原理挺簡單的,就是51單片機的串口通信,還有靈活使用hex和ASCII碼
單片機程序:
- #include
- #define uint unsigned int
- #define uchar unsigned char
- void delay1ms(uint n);
- uint table1_0[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
- uint table1_1[]={0x41,0x22,0x14,0x08,0x14,0x22,0x41};
- uint table0_0[]={0x01,0x02,0x04,0x08};
- uint table0_1[]={0x05,0x0a,0x05,0x0a};
- uint n=500;
- uchar temp=0x00;
- void main()
- {
- unsigned char i=0,j=0;
- P1=0xff;
- P0=0xff;
- P2=0xff;
- SCON=0x50;
- TMOD=0x20;
- PCON = 0x80;
- TH1=0xfa;
- TL1=0xfa;
- ES=1;
- EA=1;
- TR1=1;
- RI=0;
-
- /*********************開燈**************************/
- /*
- while(1)
- {
- P0=0x0f;
- P1=0x00;
- }
- */
-
- /*********************關燈**************************/
- /*
- while(1)
- {
- P0=0x00;
- P1=0xff;
- }
- */
-
- /***************全閃************************/
- /*
- while(1)
- {
- P0=0x0f;
- P1=0x00;
- delay1ms(100);
- P0=0x00;
- P1=0xff;
- delay1ms(100);
- }
- */
-
- /*********************正流水燈*****************************/
- /*
- while(1)
- {
- for(i=0;i<4;i++)
- {
- P0=table0_0[i];
- for(j=0;j<7;j++)
- {
- P1=~table1_0[j];
- delay1ms(100);
- }
- }
- }
- */
- /*********************倒流水燈*****************************/
- /*
- while(1)
- {
- for(i=4;i>0;i--)
- {
- P0=table0_0[i-1];
- for(j=7;j>0;j--)
- {
- P1=~table1_0[j-1];
- delay1ms(100);
- }
- }
- }
- */
-
- /*********************向中看齊*****************************/
- /*
- while(1)
- {
- P0=0x0f;
- for(j=0;j<7;j++)
- {
- P1=~table1_1[j];
- delay1ms(100);
- }
- }
- */
- /***********************雙燈跑馬********************/
- /*
- while(1)
- {
- for(i=0;i<4;i++)
- {
- P0=table0_1[i];
- for(j=0;j<7;j++)
- {
- P1=~table1_0[j];
- delay1ms(100);
- }
- }
- }
- */
- /***********************四燈跑馬********************/
- /*
- while(1)
- {
- P0=0x0f;
- for(j=0;j<7;j++)
- {
- P1=~table1_0[j];
- delay1ms(100);
- }
- }
- */
- /**********************響應程序***********************/
- while(1)
- {
- while(temp=='a')
- {
- P2=0xff;
- P0=0x0f;
- P1=0x00;
- }
- while(temp=='b')
- {
- P2=0xff;
- P0=0x0f;
- P1=0x00;
- delay1ms(n);
- P0=0x00;
- P1=0xff;
- delay1ms(n);
- }
- while(temp=='c')
- {
- P2=0xff;
- P0=0x00;
- P1=0xff;
- }
- while(temp=='d')
- {
- P2=0xff;
- for(i=0;i<4;i++)
- {
- P0=table0_0[i];
- for(j=0;j<7;j++)
- {
- P1=~table1_0[j];
- delay1ms(n);
- }
- }
- }
- while(temp=='e')
- {
- P2=0xff;
- P0=0x0f;
- for(j=0;j<7;j++)
- {
- P1=~table1_1[j];
- delay1ms(n);
- }
- }
- while(temp=='f')
- {
- P2=0xff;
- for(i=4;i>0;i--)
- {
- P0=table0_0[i-1];
- for(j=7;j>0;j--)
- {
- P1=~table1_0[j-1];
- delay1ms(n);
- }
- }
- }
- while(temp=='g')
- {
- P2=0xff;
- for(i=0;i<4;i++)
- {
- P0=table0_1[i];
- for(j=0;j<7;j++)
- {
- P1=~table1_0[j];
- delay1ms(n);
- }
- }
- }
- while(temp=='i')
- {
- P2=0xff;
- P0=0x0f;
- for(j=0;j<7;j++)
- {
- P1=~table1_0[j];
- delay1ms(n);
- }
- }
- }
- }
-
- void serial_int() interrupt 4
- {
- uchar num;
- num=temp;
- temp=SBUF;
- RI=0;
- SBUF=temp;
- while(!TI);
- TI=0;
- if(temp=='k')
- {
- n=n*2;
- // SBUF=n;
- // while(!TI);
- // TI=0;
- if(n>500000)
- n=500000;
- temp=num;
- }
- else if(temp=='j')
- {
- n=n/2;
- if(n==0)
- n=1;
- // SBUF=n;
- // while(!TI);
- // TI=0;
- temp=num;
- }
- else if(temp=='a'||temp=='b'||temp=='c'||temp=='d'||temp=='e'||temp=='f'||temp=='g'||temp=='i')
- {
-
- }
- else
- {
- P1=0xff;
- P2=~temp;
- }
-
- }
- void delay1ms(uint n) //誤差 0us
- {
- unsigned int a,b,c;
- for(c=n;c>0;c--)
- for(b=14;b>0;b--)
- for(a=2;a>0;a--);
- }
復制代碼
|
-
-
模塊程序.doc
2016-7-5 02:58 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
36.5 KB, 下載次數: 94, 下載積分: 黑幣 -5
評分
-
查看全部評分
|