Sisukord:
- Samm 1: Processing.seria kasutamine
- 2. samm: mõistke seeriaklassi
- Samm: Arduino jadaklass
- Samm: looge GUI 7 segmendi kontroller
Video: Töötlemise ja Arduino ühendamine ning 7 segmendi ja servo GUI kontrolleri ühendamine: 4 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:47
Mõne teie tehtud projekti puhul on vaja kasutada Arduinot, kuna see pakub lihtsat prototüüpimisplatvormi, kuid graafika kuvamine Arduino jadamonitoris võib võtta päris kaua aega ja seda on isegi raske teha. Graafikuid saate kuvada Arduino jadamonitoril, kuid graafikud pole ainus, mida peate kuvama. Kõik interaktiivsed objektid, nagu liugurid, nupud, 2D-, 3D-, PDF- või SVG -väljundiga programmid, samuti saate hõlpsalt animatsioone luua. Töötlemiseks on vaikimisi programmeerimisrežiim Java, kuid saate seda vahetada Android, p5.js, REPL, CoffeeScript ja JavaScript. Selles juhendis kasutame siiski Java programmeerimisrežiimi.
Kogu sisu ja kood on saadaval ka minu githubis siin.
Samm 1: Processing.seria kasutamine
Töötlemise kood
Koodi esimesed kaks rida on
impordi töötlemine.seriaalne.*; Seeria myPort;
Siin esimesel real impordime raamatukogu - töötlemist ja teisel real loome klassi Serial objekti nimega myPort, võite sellele nime anda mis tahes, järgides identifikaatori nimetamise reegleid.
Töötlemisel on meil void setup () ja void draw (), kus void on funktsiooni tagastustüüp, mille saate muuta ka int setup () ja int draw () või muuks meelepäraseks andmetüübiks, kuid peate tagastama väärtus, millel on sama andmetüüp kui andmetüübil, mida kasutasite enne funktsioone.
seadistuses () kirjutame avaldused, mida peame üks kord täitma, samas kui joonistuses () kirjutame avaldused, mida peame täitma mitu korda. Eespool nimetatud kaks koodirida tuleks kirjutada void setup () kohale, kuna neil peab olema üldine juurdepääs.
Void setupis () lähtestame objekti myPort.
tühine seadistus () {
suurus (800, 800);
myPort = uus seeria (see, "COM18", 9600);
}
Liini suurus (800, 800); määrab ekraani suuruseks 800 x 800 pikslit.
Teisel real olevat võtmesõna new kasutatakse mälus olevale objektile ruumi reserveerimiseks, argument see on viitemuutuja, mis viitab praegusele objektile. Argument COM18 on ühendatud Arduino sadam, me vajame seda, kuna transpordime andmeid jadaliidese kaudu. Number 18 võib teie puhul olla erinev, selle leiate Arduino IDE menüüst Tööriistad> Port ja 9600 on edastuskiirus, mida saate muuta nii Arduino kui ka töötlemise korral.
2. samm: mõistke seeriaklassi
Seriali konstruktor
Seeria (vanem, portName, baudRate, pariteet, dataBits, stopBits)
Argumendid:
lapsevanem: kasutage tavaliselt "seda"
baudRate (int): vaikimisi on 9600
portName (string): pordi nimi (COM1 on vaikimisi)
pariteet (sümbol): "N" ei ole, "E" on paaris, "O" on paaritu, "M" tähistab, "S" on tühik ("N" on vaikimisi)
dataBits (int): vaikimisi on 8
stopBits (ujuk): 1,0, 1,5 või 2,0 (vaikimisi on 1,0)
Olulised meetodid:
- myPort.available () - tagastab saadaolevate baitide arvu.
- myPort.clear () - tühjendab puhvri ja eemaldab kõik sinna salvestatud andmed.
- myPort.read () - tagastab järgmise puhvris ootava baidi arvu vahemikus 0 kuni 255.
- myPort.readString () - tagastab kõik andmed puhvrist stringina või nullina, kui midagi pole saadaval.
- myPort.write ("test") - kirjutab jadapordile baite, märke, inte, baite , stringe.
- myPort.stop () - peatab andmete peenestamise sadamas.
Samm: Arduino jadaklass
Te ei pea Arduino seeriaklassi enne selle importimist importima.
Arduinos on kaks funktsiooni, mida nimetatakse setup () ja loop (), seadistus töötab ainult üks kord, kuid tsükkel töötab mitu korda. Seadistuses () peame kirjutama, kasutades jadaühenduse alustamiseks meetodit start (). Erinevalt töötlemisest ei pea me Arduinos porti mainima meetodi start () argumentidena, kuna määrame porti juba eskiisi Arduinos üleslaadimisel.
Seadistus () näeb välja selline:
tühine seadistus () {
Seriaalne algus (9600); // jadaühenduse alustamine
}
9600 siin määrab edastuskiiruse, mida me ka töötlemisfailis mainisime. Nõuetekohaseks suhtlemiseks peaksid mõlemad edastuskiirused olema võrdsed või võite näha seeriaväljundit kui jama.
Nüüd vaatame silmuse () osa. See koodi osa töötab mitu korda. Kui tahame pordi järgi mõnda teavet lugeda, kasutame meetodit Serial.read (). See funktsioon tagastab nulli, kui andmeid pole saadaval, nii et me nimetame seda meetodit ainult siis, kui meil on jadavoos saadaolevaid andmeid.
Et kontrollida, kas andmeid on saadaval, kasutame meetodit Serial.available (). Kui see tagastab väärtuse, mis on suurem kui 0 - mõned andmed on saadaval.
Nii et loop () osa näeb välja selline:
void loop () {
if (Serial.available ()> 0) {// kui jadaportis on teatud andmed saadaval
char olek = Serial.read (); // loe väärtust
// kui avaldused või vaheta väiketähti
}
}
Nüüd saame redeli või paljude võimalike tulemuste korral kasutada muutuva oleku jaoks ka lülituskorpust.
Samm: looge GUI 7 segmendi kontroller
Failid on lisatud siia. Märkus. Töötlemiseks peate installima ka kontrollp5 teegi, mida olen kasutanud interaktiivsete GUI -nuppude loomisel.
Pin -numbrid
7 -segment (tähestikulises järjekorras) viitab pildile
a - digitaalne tihvt 2
b - digitaalne tihvt 3
c - digitaalne tihvt 4
d - digitaalne tihvt 5
e - digitaalne tihvt 6
f - digitaalne tihvt 7
g - digitaalne tihvt 8
dp - digitaalne tihvt 9
Kogu sisu ja kood on saadaval ka minu githubis siin
Soovitan:
Kontrolleri paigaldamine, käivitamine ja emulaatoriga ühendamine: 7 sammu
Kuidas paigaldada, käivitada ja ühendada kontroller emulaatoriga: kas olete kunagi istunud ja meenutanud oma lapsepõlve noore mängijana ning mõnikord soovinud, et võiksite neid vanu kalliskive uuesti vaadata? Noh, selle jaoks on olemas rakendus … täpsemalt on mängijate kogukond, kes teeb programmi
Interaktiivne LED -kuppel Fadecandy, töötlemise ja Kinectiga: 24 sammu (koos piltidega)
Interaktiivne LED -kuppel koos Fadecandy, töötlemise ja Kinectiga: WhatWhen in Dome on 4,2 m geodeetiline kuppel, mis on kaetud 4378 LED -iga. Kõik LED -id on individuaalselt kaardistatud ja adresseeritavad. Neid juhib Windowsi töölaual Fadecandy ja Processing. Kinect on kinnitatud kupli ühe tugiposti külge, nii et
Isetegemise voltmeeter Arduino ja töötlemise abil: 4 sammu
Isetegemise voltmeeter Arduino ja töötlemise abil: Tere ja tere tulemast tänasesse projekti. Olen Sarvesh ja täna teeme arduino -põhise voltmeetri. Kuid selles on erinev see, et see näitab oma väljundit töötlustarkvaras. Nüüd tegime ühes oma eelmises õpetuses protsessi
Salvestage Arduino anduri andmed MYsql -sse töötlemise abil: 6 sammu
Salvestage Arduino anduri andmed töötlemise abil MYsql -i: Ausalt öeldes on Arduino andmeid raske otse MySQL -i salvestada, nii et Arduino IDE -st sõltuvuses kasutasin IDD töötlemist, mis on sarnane Arduino IDE -ga, kuid millel on palju erinevaid kasutusviise ja saate seda kodeerida java. Märkus: ärge käivitage Arduino seeriamoni
Kuidas juhtida LED -e töötlemise ja Arduino abil: 5 sammu
Kuidas juhtida LED -e töötlemise ja Arduino abil: eelmisel päeval puutusin kokku huvitava probleemiga, mul oli vaja arvutiekraanil toimuvast interaktsioonist tulede seeriat juhtida ja see pidi olema võimalikult odav. Mõtlesin kohe Arduinole. Sellel oli iga