|
遙控器可以用來控制各種家電設(shè)備,玩具模型,工業(yè)設(shè)備等。遙控器很小容易給弄丟了,一個(gè)設(shè)備一個(gè)遙控器很費(fèi)事,本人DIY了一個(gè)可以用手機(jī)遙控家電等設(shè)備的遙控器。
制作中要在手機(jī)上安裝一個(gè)叫藍(lán)牙串口的應(yīng)用軟件,手機(jī)必須是智能手機(jī)。在網(wǎng)上買來藍(lán)牙無線串口模塊,這個(gè)藍(lán)牙模塊分為主機(jī)和從機(jī),主機(jī)能與從機(jī)配對(duì),主機(jī)與主機(jī)以及從機(jī)與從機(jī)不能配對(duì),手機(jī)的藍(lán)牙可以與從機(jī)配對(duì),這里我們只有從機(jī)模塊不需要主機(jī)模塊。模塊上的VCC GND 引腳就上5v電源,TXD RXD引腳接單片機(jī)上的P3.0和P3.1引腳。硬件完成后可以編程了。
IMG_20130301_155254.jpg (419.98 KB, 下載次數(shù): 66)
下載附件
藍(lán)牙模塊
2013-3-1 20:31 上傳
IMG_20130301_155540.jpg (729.03 KB, 下載次數(shù): 71)
下載附件
單片機(jī)控制板
2013-3-1 20:31 上傳
程序中定義了變量,主函數(shù)開始執(zhí)行初始化函數(shù),初始化函數(shù)設(shè)置了串口波特率,然后循環(huán)執(zhí)行顯示函數(shù),當(dāng)手機(jī)發(fā)送命令時(shí),單片機(jī)串口中斷服務(wù)函數(shù)將數(shù)據(jù)寫入dat變量,通過顯示函數(shù)顯示命令數(shù),根據(jù)控制要求我們可以自由編寫程序。
#include<reg51.h>
#define uchar unsigned char
uchar displaycode[]={~0x3F,~0x06,~0x5B,~0x4F,~0x66,~0x6D,~0x7D,~0x07,~0x7F,~0x6F};
uchar dat=0;
void Com_init()
{TMOD=0x20;
TH1=0xfd;
TL1=0xfd;
TR1=1;
SCON=0x50;
ES=1;
EA=1;
PCON=0x00;
}
void Com_int() interrupt 4
{
ES=0;
RI=0;
dat=SBUF;
ES=1;
}
void main()
{
Com_init();
while(1)
{
P0=displaycode[dat%10];
P1=displaycode[dat%100/10];
P2=displaycode[dat/100];
}
}
|
|