久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 35907|回復: 17
打印 上一主題 下一主題
收起左側

手把手教你做Android手機遙控小車

  [復制鏈接]
跳轉到指定樓層
樓主
安卓手機遙控小車,顧名思義就是用安卓手機來控制小車前后左右運動。給大家展示一個既可觸摸按鍵控制又可重力感應控制的Android手機軟件和DIY小車,廢話少說,上圖:

Android上位機軟件運行界面截圖




觸摸按鍵控制模式




重力感應控制模式



更換背景


在手機上的運行圖








上DIY小車圖片













看完圖片還不過癮,上視頻:



看完了,感覺還行吧! 不要羨慕,你也可以,下面來一起DIY。

先來看一看下位機也就是小車部分。既然是小車,底盤車輪也就少不了了。
下面是這輛車的底盤

底盤正面



底盤反面




除了小車底盤,我們還得有一個單片機最小系統來控制吧

正面

需要說明一下的是,別以為它沒有晶振,沒有電容等——它們都在單片機下面藏起來了。
但這的確是一個“最小系統”,除了I/O口引出了外,什么都沒有擴展。



PCB底板,銅線都氧化了




最小系統的電路應該都知道



底盤和最小系統搞好了,小車還是跑不起來——缺少電機驅動。
單片機的I/O是驅動不了電機的,我選用的是L298N電機專用驅動芯片。
下面是我的電機驅動模塊PCB




時間有點長了,看起來不是很好看。但PCB布線排版還可以吧!

底面涂了一層綠油,但沒有涂勻。

下面是這個模塊的電路圖




L298用起來蠻簡單,網上的資料很多。但若嫌電路麻煩,
對驅動能力要求又不高的情況下你可以試一下ULN2003驅動芯片
很簡單。

再就是電源部分,我用的是兩塊手機電池,串聯起來用的,一路經7805降壓后供
單片機用,一路直接給電機驅動模塊供電。


至此,小車的基本部分搭建完畢。下面看一下重量級部分——藍牙。
說道藍牙,大家可能覺得很高深,害怕。的確,藍牙技術是一門高深的技術,藍牙的通信協議讓人頭疼。
但不要害怕,我們是不接觸藍牙底層協議的,況且現在的模塊技術是很發達的,HC06——藍牙轉串口模塊
看圖



它將復雜藍牙通信協議直接變成了單片機上擁有的,我們也熟悉的RXD  TXD串口通信。高興了吧!
我們只需接3根線就行了——VCC  GND就不說了。大家注意一下它的RXD要接51單片機的P3.0,也就是RXD.
為什么RXD接RXD,不是接TXD嗎?有人會問。大家注意一下,這個模塊上的RXD的意思是告訴你,外部的RXD接我這兒,不是說這個引腳就是RXD,它其實是TXD.   TXD也是一樣的,要注意一下。
我們只接3根線,TXD不接,因為我們用手機發送指令,藍牙模塊只負責接收就行。STATE   EN這兩引腳也不用管。
關于這個模塊的其它用法,想更改設置波特率,更改設備名稱等,網上都有相應資料,解決不了的可以加QQ:1399836578


到這兒,自己將上面幾個模塊組裝一下,所有的硬件部分就完成了。
下面來看軟件部分。軟件部分又分為兩個部分——下位機(單片機程序)和上位機(Android手機控制端);
由于下位機是根據上位機發送的指令來編程的,我們就先看看上位機部分
上位機截圖上面已給出了。

由于上位機的編寫涉及到Java語言編程知識和Android系統知識,不是十句八句能說清楚的,在這兒就不討論它是怎樣編寫出來的。待會兒我會給出 它的APK安裝包,下載到手機上直接安裝就行。我們先對著上圖說說它是怎么工作的。

當我們用手按下 前進   時,手機會通過藍牙以ASCII碼的形式發送一個字符“A”,釋放時會發送一個字符“a”;
當我們用手按下 后退   時,手機會通過藍牙以ASCII碼的形式發送一個字符“D”,釋放時會發送一個字符“d”;
當我們用手按下 左轉   時,手機會通過藍牙以ASCII碼的形式發送一個字符“C”,釋放時會發送一個字符“c”;
當我們用手按下 右轉   時,手機會通過藍牙以ASCII碼的形式發送一個字符“B”,釋放時會發送一個字符“b”;

當使用重力感應模式是,也是根據手機的狀態來發送這幾個字符的。

同時我們看他查詢得ABCDabcd 八個字符的ASCII碼值:A-65  a-97  B-66  b-98 C-67  c-99  D-68  d-100.

有了這些,我們就知道怎樣寫單片機程序了——使用51單片機的串口通信。打開串口中斷,我們可以在串口中斷服務函數中接收到字符后用  switch() 語句來判斷接收到的字符。例如
case:65    break; 表示接收到的字符是A,也就是按 前進 時發送過來的,這時就可以在  break前寫上小車前進的代碼;
case:97    break;表示接收到的是a,即松開 前進 時發送出來的,既然松開了 前進 按鈕 ,就可以再break前加上小車停止的語句。左轉,右轉也是一樣的。至于小車前進后退左轉右轉的代碼,要根據你自己的電機機驅動來寫。
下面是我的下位機程序,電機驅動代碼要自己寫,這個只供參考

#include
#define uchar unsigned char
#define uint unsigned int
uchar a;
void init()
   {
     TMOD=0X20;   //設置定時器1為方式2
     TH1=0xfd ;     
     TL1=0xfd ;   //裝初值
     TR1=1;       //啟動定時器1
     REN=1;       // 使能接收
     SM0=0;
     SM1=1;       //設置串口為工作方式1
     
     EA=1;       // 打開總中斷開關
     ES=1;       // 打開串口中斷開關
   }
  
    void main()
    {
        init();
while(1);
     }
   void ser() interrupt 4
    {
           ES=0;
           RI=0;   //將接受中斷標志位清0;
            
           a=SBUF; //將接受到的數據賦值給a
         
        switch(a)
    {
      case 65:  P2=0X17;  break;   //  發送的是A  前進指令
      case 66:  P2=0X1B;  break;   //  發送的是B  右轉指令
      case 67:  P2=0X27;  break;   //  發送的是C  左轉指令
      case 68:  P2=0X2B;  break;   //  發送的是D  后退指令
      
      case 97:   P2=0X00;  break;  //發送的是a   停止指令
      case 98:   P2=0X00;  break;  //發送的是b   停止指令
      case 99:   P2=0X00;  break;  //發送的是c   停止指令
      case 100:  P2=0X00;  break;  //發送的是d   停止指令
   //P2口是我的電機驅動的控制端
      
      default: break;
     }
  ES=1;
}

整個過程講解完畢,想DIY的趕快行動起來吧!(有問題可以加QQ:1399836578)

差點忘了,下面給出編寫的安卓手機控制端(上位機)軟件

先說一下手機(必須是安卓手機)控制端使用方法



先用手機的藍牙設置搜索到你的小車的藍牙,并完成配對。





在手機上打開控制端點擊 開始 后會彈出已配對的藍牙設備,如果是你的小車上的藍牙模塊,就點擊 連接小車,完成連接,
在完成連接前,HC06藍牙轉串口模塊上的LED等會不停的閃爍,連接完成后,LED燈長亮,停止閃爍。


下面是安卓手機控制端軟件和一些文檔的資料包

手把手教你做Android手機遙控車.zip 5.6M
下載地址:http://www.zg4o1577.cn/bbs/dpj-47636-1.html

還有這個:
手機遙控車DIY.pdf (4.69 MB, 下載次數: 137)
最近,部分網友反映買的藍牙轉串口模塊買成了主機,結果不能用。在這里說明一下,這種模塊有主從機之分,
我們要選購從機,主機與手機不能通信的。對于疏忽表示歉意。



最后祝想DIY的同學早日成功!

評分

參與人數 1黑幣 +5 收起 理由
zz661 + 5 絕世好帖!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏7 分享淘帖 頂1 踩
回復

使用道具 舉報

沙發
ID:223768 發表于 2017-8-1 10:53 | 只看該作者
真的不錯哦
回復

使用道具 舉報

板凳
ID:244589 發表于 2017-11-14 09:08 | 只看該作者
樓主真的費心,很耐心的講解
回復

使用道具 舉報

地板
ID:276869 發表于 2018-1-17 10:03 | 只看該作者
畢設想做小車 但是要求比這個高   
需要手機觸摸屏定位  小車自主導航到指定位置
所以定位這一塊還挺難得
回復

使用道具 舉報

5#
ID:285038 發表于 2018-3-6 21:34 | 只看該作者
樓主,貌似沒有上位機軟件啊
回復

使用道具 舉報

6#
ID:261485 發表于 2018-3-7 16:04 來自觸屏版 | 只看該作者
想問下這個底座具體有哪些原件?謝謝

210347p2hsrhnpz4pvvr5h.jpg (46.63 KB, 下載次數: 75)

210347p2hsrhnpz4pvvr5h.jpg
回復

使用道具 舉報

7#
ID:171111 發表于 2018-5-15 00:05 來自觸屏版 | 只看該作者
真好真詳細 謝謝分享
回復

使用道具 舉報

8#
ID:354613 發表于 2018-8-13 17:26 | 只看該作者
很好,感謝分享資源。
回復

使用道具 舉報

9#
ID:381821 發表于 2018-9-24 12:50 | 只看該作者
照著做了一個,很不錯的帖子
回復

使用道具 舉報

10#
ID:401655 發表于 2018-9-24 14:47 | 只看該作者
哇。。樓主厲害。贊 。。。。
回復

使用道具 舉報

11#
ID:357520 發表于 2018-9-24 16:47 | 只看該作者
樓主,手機控制程序在哪里啊
回復

使用道具 舉報

12#
ID:399179 發表于 2018-9-24 20:40 來自觸屏版 | 只看該作者
照著做就能成功嗎?
回復

使用道具 舉報

13#
ID:413449 發表于 2018-10-22 14:27 | 只看該作者
666666,那用這個做無人機可不可以啊
回復

使用道具 舉報

14#
ID:413449 發表于 2018-10-22 14:31 | 只看該作者
很詳細的操作,學到了
回復

使用道具 舉報

15#
ID:446782 發表于 2018-12-15 15:03 | 只看該作者
感謝樓主,頂一下
回復

使用道具 舉報

16#
ID:318672 發表于 2018-12-15 19:58 來自觸屏版 | 只看該作者
不錯,不錯的分享
回復

使用道具 舉報

17#
ID:372154 發表于 2019-1-28 00:55 | 只看該作者
多謝分享
回復

使用道具 舉報

18#
ID:895316 發表于 2021-3-23 08:08 | 只看該作者
多謝分享剛好我做DIY小玩意也需要用
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产中文字幕在线观看 | 99视频免费| 久久高清精品 | 久久久精 | 亚洲三区视频 | 国产精品91网站 | 国产成人91视频 | 久久久做 | 亚洲人成人一区二区在线观看 | 亚洲一区中文字幕 | 亚洲视频在线一区 | 精品麻豆剧传媒av国产九九九 | 天天天插 | 99精品久久久久久 | 国产精品亚洲成在人线 | 日韩视频91 | 99婷婷| 九九热免费视频在线观看 | 亚洲欧美中文日韩在线v日本 | 国产精品亚洲欧美日韩一区在线 | 久久久爽爽爽美女图片 | 精品视频999 | 欧美日韩一区二区三区在线观看 | 国产一区久久精品 | 国产在线精品一区二区三区 | www.se91 | 无码日韩精品一区二区免费 | 日本天天色 | 国产视频三区 | 国产乱码一二三区精品 | 日韩中文字幕 | 中文字幕高清一区 | 日韩精品久久久久 | 国产午夜精品久久久久 | 日本三级播放 | 久久久日韩精品一区二区三区 | 天天视频一区二区三区 | 精品毛片在线观看 | 成人免费观看男女羞羞视频 | 久久久www| 亚洲喷水 |