|
大學(xué)畢業(yè)后,就利用業(yè)余時(shí)間做一個(gè)藍(lán)牙遙控小車,就在網(wǎng)上找資料及購(gòu)買配件。用STC89S52單片機(jī)控制小車, LN298電機(jī)驅(qū)動(dòng)模塊驅(qū)動(dòng)小車電機(jī),BC04-B主從一體 藍(lán)牙串口適配器 接收上位機(jī)指令。現(xiàn)在小車已經(jīng)成功,特和大家分享我的小車。
0.png (70.05 KB, 下載次數(shù): 182)
下載附件
2016-8-20 02:08 上傳
全部制作資料下載:
藍(lán)牙小車上位機(jī)和下位機(jī)程序.rar
(908.78 KB, 下載次數(shù): 77)
2016-8-20 02:09 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
221321uy8qy97qyq1qzy88.jpg.thumb.jpg (48.69 KB, 下載次數(shù): 192)
下載附件
2016-8-20 02:56 上傳
淘寶上買的配件: 1 小車四驅(qū)動(dòng)底座。 2. LN298電機(jī)驅(qū)動(dòng)模塊。 3 BC04-B主從一體 藍(lán)牙串口適配器
222058adhxhlk7suj3z0l0.jpg.thumb.jpg (38.54 KB, 下載次數(shù): 189)
下載附件
2016-8-20 02:56 上傳
222104gbbg5b0rp0ap1rad.jpg.thumb.jpg (18.43 KB, 下載次數(shù): 200)
下載附件
2016-8-20 02:56 上傳
222110d0yrd9mept0yrstb.jpg.thumb.jpg (32.28 KB, 下載次數(shù): 216)
下載附件
2016-8-20 02:56 上傳
由于藍(lán)牙模塊買之前不知道需要外圍電路,買回來(lái)后自己焊接了外圍電路。
222948jxmbzn0ph63lez88.jpg.thumb.jpg (32.43 KB, 下載次數(shù): 196)
下載附件
2016-8-20 02:56 上傳
自己做的51單片機(jī)最小系統(tǒng),純手工。
223228u77j22q2dcs2siij.jpg.thumb.jpg (28.48 KB, 下載次數(shù): 146)
下載附件
2016-8-20 02:56 上傳
電源模塊用的是之前我自己做的備用電源,輸出5V,給單片機(jī)和電機(jī)驅(qū)動(dòng)供電。5V給電機(jī)供電,電機(jī)速度較慢,可以用10的電壓。
223508gi1ti64il5itu6tz.jpg.thumb.jpg (22.87 KB, 下載次數(shù): 161)
下載附件
2016-8-20 02:56 上傳
223633pm46msml5c6bfovo.jpg.thumb.jpg (49.76 KB, 下載次數(shù): 177)
下載附件
2016-8-20 02:56 上傳
然后組裝到一起的效果
223809goovqcvc3hnnvhnh.jpg.thumb.jpg (35.96 KB, 下載次數(shù): 185)
下載附件
2016-8-20 02:56 上傳
上位機(jī)軟件
224435rz43reatqkaauykf.jpg.thumb.jpg (34.72 KB, 下載次數(shù): 145)
下載附件
2016-8-20 02:56 上傳
下載程序測(cè)試,小車運(yùn)行流暢。
|
224016om17mhqxoxum7k15.jpg.thumb.jpg (28.58 KB, 下載次數(shù): 184)
下載附件
2016-8-20 02:56 上傳
下位機(jī)程序:
- #include
- #define uchar unsigned char
- #define uint unsigned int
- uchar a;
- void init()
- {
- TMOD=0X20; //設(shè)置定時(shí)器1為方式2
- TH1=0xfd ;
- TL1=0xfd ; //裝初值
- TR1=1; //啟動(dòng)定時(shí)器1
- REN=1; // 使能接收
- SM0=0;
- SM1=1; //設(shè)置串口為工作方式1
-
- EA=1; // 打開總中斷開關(guān)
- ES=1; // 打開串口中斷開關(guān)
- }
-
- void main()
- {
- init();
- while(1);
- }
- void ser() interrupt 4
- {
- ES=0;
- RI=0; //將接受中斷標(biāo)志位清0;
-
- a=SBUF; //將接受到的數(shù)據(jù)賦值給a
-
- switch(a)
- {
- case 65: P1=0Xa5; break; // 發(fā)送的是A 前進(jìn)指令
- case 66: P1=0X55; break; // 發(fā)送的是B 右轉(zhuǎn)指令
- case 67: P1=0Xaa; break; // 發(fā)送的是C 左轉(zhuǎn)指令
- case 68: P1=0X5a; break; // 發(fā)送的是D 后退指令
-
- case 97: P1=0X00; break; //發(fā)送的是a 停止指令
- case 98: P1=0X00; break; //發(fā)送的是b 停止指令
- case 99: P1=0X00; break; //發(fā)送的是c 停止指令
- case 100: P1=0X00; break; //發(fā)送的是d 停止指令
- //P2口是我的電機(jī)驅(qū)動(dòng)的控制端
-
- default: break;
- }
- ES=1;
- }
復(fù)制代碼
|
|