Sisukord:
- Samm: mida vajate ja skeem
- Samm: Arduino koodi deklareerimine ja seadistamine
- Samm: Arduino kood (põhikood)
- 4. samm: rakenduse leiutaja
- 5. samm: järeldus
Video: Arduino Led/ribad RGB Bluetooth (Arduino + App Inventor): 5 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:49
Selles õpetuses näitan, kuidas kasutada App Inventorit ja ühendada see Bluetoothi abil arduinoga
Samm: mida vajate ja skeem
See on see nimekiri, sest tavaliselt ei muutu midagi, kui skripti jaoks siin lihtsalt kerida
- Ühendus Internet
- Android -telefon (muidugi)
- Registreeruge, see on tasuta (mitte reklaam) App Inventor
- Arduino + Bluetooth -moodul
- LED/riba RGB
- Takisti 100/200/330
Samm: Arduino koodi deklareerimine ja seadistamine
Esmalt deklareerige muutujad, numbriport jne (asendage "<-ga)
#include "SoftwareSerial.h"
#segu "Wire.h" SoftwareSerial BT (10, 11);
Kasutan RX TX -na porte 7 ja 8, pidage meeles, et kui soovite Bluetooth -mooduli ühendada, veenduge, et tihvtiga RX -moodul ühendatakse pin -TX -iga.
int LED_RED = 3;
int LED_GREEN = 5; int LED_BLUE = 6; Stringi andmed = ""; String data_Previous = "255.255.255"; String ON = "LON"; String OFF = "LOFF"; loogiline olek = vale;
järgmine skript on veenduda, et RGB LED/Stips tihvt läheb pin PWM -i
tühine seadistus ()
{pinMode (LED_RED, OUTPUT); pinMode (LED_GREEN, pinMode (LED_BLUE, OUTPUT); Serial.begin (9600); BT.begin (9600); data.reserve (30);}
Nagu näete, nimetasin bluetooth -i pordi BT -ks, nii et kuulutage see nagu jada nagu tavaliselt, veenduge, et boudrate on sama mis mooduli konfiguratsioon (vaikimisi on 9600).
Samm: Arduino kood (põhikood)
SEES VOID LOOP
samas (BT. saadaval ())
{char ReadChar = (char) BT.read (); Serial.println ("Ühendatud"); if (ReadChar == '+') {olek = true; } else {andmed += ReadChar; }}
Bluetooth -mooduli kontrollimise skript on ühendatud või mitte, kui see on ühendatud, võtab see andmeid vastu ja salvestab need ReadChari.
kui (osariik)
{Serial.print ("andmed:"); Serial.print (andmed); Serial.print ("Predata:"); Serial.print (andmed_Eelmine); kui (andmed == SEES) {andmed = andmed_Eelmine; Andmed_LED (); } muu kui (andmed == VÄLJAS) {andmed = "0,0,0"; Andmed_LED (); } muu {Data_LED (); andmed_Eelne = andmed; } andmed = ""; olek = vale; }
see on void loopi viimane jaotis, olek if, et veenduda, et andmed on täielikud, kui no ei töötanud selle sees.
FUNKTSIOONI ANDMED LED
int seperator1 = andmed.indexOf ('-');
int seperator2 = andmed.indexOf ('-', eraldaja1+1); int seperator3 = data.indexOf ('-', eraldaja2+1);
see osa on põhikood, sest ühe stringi saamiseks peab see teadma, kus eraldaja asub. RGB väärtused alla 50 ei ole võimalik, kasutades indeksit. Kui see leiab selle abil otsitud sümbolite arvu, saame teada, milline number alamstringi funktsiooni käivitada.
String R = andmed.alamstring (0, eraldaja1);
String G = andmed.alamstring (eraldaja1+1, eraldaja2); String B = andmed.alamstring (eraldaja2+1, eraldaja3);
Pärast iga väärtuse positsiooni saamist salvestab alamstringi funktsioon iga muutuja iga numbri, suurendades eraldajat, veendumaks, et ei lugenud väärtust enne seda.
4. samm: rakenduse leiutaja
See teenus muudab algaja (nagu mina) Android -rakenduse loomise lihtsamaks, vajab lihtsalt loogikat, ole kannatlik ja internet
Esmalt tehke lihtne GUI
Alustage paigutuse kavandamist või kujutamist, seal on kaks versiooni, mille tegin mustaks, esimene ja valge teine
2. avage MIT APP või klõpsake siin
- Kas see samm klõpsake nuppu Loo rakendused! parema nurga peal
- Alusta uut projekti
- Sisestage nimi
- Alustage disaini
Kui kasutate minu allikat, klõpsake nuppu Projektid ja valige import aia
Sissejuhatus
Selle teenuse puhul on teil vaja loogikat, sest iga sisu jaoks on oma värv ja seletus, otsige lihtsalt, kui aru ei saa, pole keeruline, kui olete skripti/kodeerimisega kursis.
Peamine oli värviratas ja bluetooth -klient, siin on selgitus
VÄRVIRATAS
- Värviratas saab väärtuse, tuvastades sõrme, kus see puudutab
- Kursor järgib sõrme, pidage meeles, et mõnikord ei viinud kursor sihtmärgiga vastavusse
- Kursor saab väärtused X ja Y ja
- Seda väärtust kasutab funktsioon getBackgroundPixelColour, nagu teiste rakenduste värvivalija
- Seal on 3 väärtust (punane, roheline, sinine), millest igaüks on eraldi loendi arvu järgi (alustades 1 -st)
- See on lihtne viis värviratta valmistamiseks
BLUETOOTH
- Pärast väärtuse saamist ja saatke see lisades - iga märgi jaoks ja lisage lõpuks +, kasutades liitumisfunktsiooni
- Saada see seriaalile
5. samm: järeldus
Vabandan halva inglise keele pärast, katsetasin ja leidsin probleemi oma RGB LED -iga (punane diood harjub heledaks sündmuseks, ma kasutan 100R -i). Ma teen RGB Stripi, kui see on olemas, proovin oma lennukit kolmanda versiooniga, et luua rohkem funktsioone, nagu peovalgus, kohandatud peovalgus ja midagi paremaks muuta.
Kui see tõesti töötab, kui mitte, parandab ka mind. Head kodeerimist ^^
Soovitan:
Motion Reactive Surfboardi LED -ribad: 8 sammu (piltidega)
Motion Reactive Surfboardi LED -ribad: hiljuti avastasime mõne sõbraga jõesurfi. Elades Münchenis, on meil õnnelik, et kuulsa Eisbachi surfimiskoha seas on kolm surfatavat jõelainet. Jõesurfimise negatiivne külg on see, et see on üsna sõltuvust tekitav ja seetõttu leian aega harva
One Control Multi LED ribad: 3 sammu
One Control Multi LED Strip: Mul on 5 mööblieset, millesse tahtsin paigaldada LED -riba tuled. LEDid tuli kaugjuhtida, valides Alexa ON/OFF. KÕIK LED -id pidid sisse lülitama & muutke värvi sünkroonis vaid ühe nupuvajutusega. Nad on ka
Hääljuhtimise tuled Elektroonika RGB LED -ribad ja palju muud koos Cortana ja Arduino koduautomaatikaga: 3 sammu
Hääljuhtimise tuled Elektroonika RGB LED -ribad ja palju muud koos Cortana ja Arduino koduautomaatikaga: Kas teile meeldib idee juhtida asju oma häälega? Või ei meeldi voodist tõusta, et tuled välja lülitada? Kuid kõik olemasolevad lahendused, nagu google home, on liiga kallid? Nüüd saate seda ise teha alla 10 dollari eest. Ja veelgi parem, see on väga lihtne
Sinkraadio ribad 2 meetrit/ 70 cm mikroliba PCB: 9 sammu
Sinkraadio bändid 2 meetrit/ 70 cm mikroriba PCB: Tere, see on Andy G0SFJI, kes ei leidnud kirjandusest mitte ühtegi plaani mikrolibade antenniplaatide jaoks 70 cm ja 2 meetri pikkuste singiribade jaoks. Need kõik tunduvad olevat rfid -seadmete või 2,4 Ghz või kõrgemate jaoks. Nii et ma otsustasin välja töötada mikroriba trükitud bo
WiFi võrgusilma sünkroniseeritud LED -ribad: 3 sammu (piltidega)
WiFi võrgusilma sünkroniseeritud LED -ribad: see projekt on LED -ribade kogum, millel on individuaalselt juhitavad digitaalsed LED -id (WS2812b "Neopikslid"). Need võimaldavad nende vahel animatsioone teha ilma neid ühendamata. Nad kasutavad üksteisega ühenduse loomiseks WiFi -võrku ja