Close

Začátky s Bluetooth modulem

Úvodní stránka Fórum Vaše projekty Arduino Začátky s Bluetooth modulem

Označeno štítky: , ,

  • Toto téma obsahuje celkem 2 odpovědi. Do diskuze (2 diskutující) se naposledy zapojil uživatel djvvv a poslední změna proběhla před 8 roky a 6 měsíci.
Aktuálně jsou na stránce zobrazeny 3 příspěvky - 1. až 3. (celkem z 3)
  • Autor
    Příspěvky
  • #4789
    djvvv
    Účastník

    Ahoj Jsem začátečník programování moc neumím,mám arduino a zkoušel jsem už s ním skoro vše co se v základu dá dělat,ale chtěl bych jej ovládat pomocí mobilu,tabletu.Pořídil jsem si bluetooth modul a začal hledat všelijaké návody a příklady,ale nikdy jsem neuspěl.Na google play je spousta programů které jsem si nahrál,ale nenašel jsem fungční schémata nebo kódy pro nahrátí do arduina.
    Pro program Arduino Bluetooth controler jsem našel tento kód:
    void setup() {
    Serial.begin(9600); // start serial communication at 9600bps
    }
    void loop() {
    if( Serial.available() > 0 ) // if data is available to read
    {
    incomingByte = Serial.read(); // read it and store it in ‚incomingByte‘
    }

    }

    Je mi jasné,že jde o kostru,ale jak toho využít a použít pro ovládání třeba jen rozsvícení led,nebo načtení hodnoty z potenciometru do mobilu.

    #4791
    Zbyšek Voda
    Správce

    Dobrý den.
    Můžete si představit, že bluetooth spojení se (většinou) u Arduina chová tak, jako by tam žádný bluetooth modul nebyl a Arduino přijímalo data přes sériovou linku.

    Každá mobilní aplikace bude mít asi ovládání trochu specifické, veskrze se ale bude jednat o odesílání nějaké sekvence čísel, popřípadě znaků.

    Konstra, kterou posíláte vlastně jenom říká, že se do incomingByte uloží byte přijatý přes sériovou linku.

    Mějme nějakou modelovou aplikaci – například jednoduchý joystick. Při směru nahoru pošle byte s hodnotou ‚u‘, při směru dolů ‚d‘, při směru doleva ‚l‘ a doprava ‚r‘. Vy pak v Arduinu budete na přijetí těchto znaků čekat. Například:

    
    if(incommingByte == 'u'){
        jedNahoru();
    }
    

    Takto si například můžete udělat jednoduché autíčko.

    Asi nejjednodušší na začátek bude, když si do mobilu stáhnete nějaký Bluetooth Terminál – myslím, že mi dobře fungoval třeba tento: Bluetooth Terminal. Ten jenom odešle znaky, které mu zadáte.

    V terminálu se připojíte k vašemu bluetooth modulu a pošlete například znak ‚a‘. V tu chvíli by se měl tento znak uložit do proměnné incommingByte.

    Různé aplikace pro bluetooth komunikaci budou fungovat podobným způsobem. Jakou konkrétní sekvenci posílají najdete většinou v jejich dokumentaci.

    Podrobněji se bluetooth věnuji ve článku Propojujeme Arduino s jinými zařízeními. Tam také popisuji hodně zajímavou aplikaci SensoDuino, která umí posílat data z mobilních senzorů přes BT do Arduina.

    #4797
    djvvv
    Účastník

    Děkuji moc za potvrzení mé doměnky,že je jedno zda pošlu instrukce,kód přes usb kabel nebo přes bluetooth,ale zjistil jsem jinou závadu proč mi to nešlo,měl jsem modul zapojený podle jiného článku na pinech 2,3 a použil jsem (knihovnu,příkaz):
    #include <SoftwareSerial.h>//
    SoftwareSerial mySerial(2, 3); // 2-RX, 3-TX

    Jen s tím,že nevím proč či jak ale na pinech pro rx a tx to funguje (0,1 pin) ale na 2,3 ne. Možná budu muset vložit odpory na ten jeden pin.

Aktuálně jsou na stránce zobrazeny 3 příspěvky - 1. až 3. (celkem z 3)
  • Pro reakci na toto téma se musíte přihlásit.