2015年12月14日 星期一

02162411_劉永健_Week14 期末作品構想

  DIY遙控車





  大致參照:





需要另外購買的硬體:
Bluetooth HC-06
ULN2003 Board (達靈頓放大器)
L293D Board (H-橋式電機驅動器)
 車




使用的車載體:

  參考藍牙通訊程式碼

#include <SoftwareSerial.h>
#include <Wire.h>

// the maximum received command length from an Android system (over the bluetooth)
#define MAX_BTCMDLEN 128


// HC-06    Arduino
// TX       RX/Pin10
// RX       TX/Pin11
SoftwareSerial BTSerial(10,11); // Arduino RX/TX

byte cmd[MAX_BTCMDLEN]; // received 128 bytes from an Android system
int len = 0; // received command length

void setup() {
    Serial.begin(9600);   // Arduino起始鮑率:9600
    BTSerial.begin(9600); // HC-06 出廠的鮑率:每個藍牙晶片的鮑率都不太一樣,請務必確認
}

void loop() {
    char str[MAX_BTCMDLEN];
    int insize, ii;  
    int tick=0;
    while ( tick<MAX_BTCMDLEN ) { // 因為包率同為9600, Android送過來的字元可能被切成數份
        if ( (insize=(BTSerial.available()))>0 ){ // 讀取藍牙訊息
            for ( ii=0; ii<insize; ii++ ){
                cmd[(len++)%MAX_BTCMDLEN]=char(BTSerial.read());
            }
        } else {
            tick++;
        }
    }
    if ( len ) { // 用串列埠顯示從Android手機傳過來的訊息
        sprintf(str,"%s",cmd);
        Serial.println(str);
        cmd[0] = '\0';
    }
    len = 0;
}


                          



沒有留言:

張貼留言