Satura rādītājs:
- 1. darbība. Processing.serial izmantošana
- 2. darbība. Izprotiet sērijas klasi
- 3. darbība: Arduino sērijas klase
- 4. darbība: izveidojiet GUI 7 segmenta kontrolieri
Video: Apstrādes un Arduino savienošana un 7 segmentu un servo GUI kontrolieris: 4 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:53
Dažiem jūsu veiktajiem projektiem ir jāizmanto Arduino, jo tā nodrošina vienkāršu prototipēšanas platformu, bet grafikas parādīšana Arduino sērijas monitorā var aizņemt diezgan ilgu laiku, un to ir pat grūti izdarīt. Jūs varat parādīt diagrammas Arduino sērijas monitorā, taču diagrammas nav vienīgā lieta, kas jums var būt jāparāda. Visi interaktīvie objekti, piemēram, slīdņi, pogas, programmas ar 2D, 3D, PDF vai SVG izvadi, un jūs varat arī viegli izveidot animācijas. Apstrādes noklusējuma programmēšanas režīms ir Java, taču jūs varat to pārslēgt uz Android, p5.js, REPL, CoffeeScript un JavaScript. Šajā instrukcijā mēs tomēr izmantosim Java programmēšanas režīmu.
Viss saturs un kods ir pieejams arī manā github šeit.
1. darbība. Processing.serial izmantošana
Apstrādes kods
Pirmās divas koda rindas būs
importa apstrāde.sērija.*; Sērijas myPort;
Šeit pirmajā rindā mēs importējam bibliotēku - apstrādi un otrajā rindā mēs izveidojam sērijas klases objektu ar nosaukumu myPort, jūs varat to nosaukt, kā vēlaties, ievērojot identifikatora nosaukšanas noteikumus.
Apstrādes laikā mums ir void setup () un void draw (), kur void ir funkcijas atgriešanas veids, kuru varat mainīt arī uz int setup () un int draw () vai citu datu veidu, kas jums patīk, bet jums būs jāatgriež vērtība, kurai ir tāds pats datu tips kā pirms funkcijām izmantotajam datu tipam.
setup () mēs rakstām paziņojumus, kas mums jāizpilda vienreiz, savukārt draw () mēs rakstām paziņojumus, kas mums jāizpilda vairākas reizes. Abas iepriekš minētās koda rindiņas jāraksta virs void setup (), jo tām ir jābūt globālai piekļuvei.
Void setup () mēs inicializēsim objektu myPort.
void setup () {
izmērs (800, 800);
myPort = jauns seriāls (šis, "COM18", 9600);
}
Līnijas izmērs (800, 800); nosaka ekrāna izmēru, kas ir 800 x 800 pikseļi.
Atslēgas vārds jauns otrajā rindā tiek izmantots, lai rezervētu vietu objektam atmiņā, arguments tas ir atsauces mainīgais, kas attiecas uz pašreizējo objektu. Arguments COM18 ir savienota Arduino osta, mums tas ir vajadzīgs, jo mēs transportēsim datus, izmantojot seriālo saskarni. Cipars 18 jūsu gadījumā var būt atšķirīgs, to varat atrast Arduino IDE sadaļā Rīki> Ports, un 9600 ir datu pārraides ātrums, ko varat mainīt gan Arduino, gan Processing.
2. darbība. Izprotiet sērijas klasi
Seriāla konstruktors
Seriāls (vecāks, porta nosaukums, baudas ātrums, paritāte, dataBits, stopBits)
Argumenti:
vecāki: parasti izmantojiet “šo”
baudRate (int): noklusējums ir 9600
portName (String): porta nosaukums (COM1 ir noklusējums)
paritāte (simbols): “N” nav, “E” - pāra, “O” - nepāra, “M” - zīme, “S” - atstarpe (“N” ir noklusējuma vērtība)
dataBits (int): noklusējums ir 8
stopBits (pludiņš): 1,0, 1,5 vai 2,0 (1,0 ir noklusējums)
Svarīgas metodes:
- myPort.available () - atgriež pieejamo baitu skaitu.
- myPort.clear () - iztukšo buferi un noņem visus tur saglabātos datus.
- myPort.read () - atgriež skaitli no 0 līdz 255 nākamajam baitam, kas gaida buferī.
- myPort.readString () - atgriež visus datus no bufera kā virkni vai nulli, ja nekas nav pieejams.
- myPort.write ("tests") - raksta baitus, rakstzīmes, ints, baitus , virknes uz seriālo portu.
- myPort.stop () - paātrina datu sasmalcināšanu ostā.
3. darbība: Arduino sērijas klase
Pirms sērijveida klases izmantošanas Arduino nav jāimportē.
Arduino ir divas funkcijas, ko sauc par iestatīšanu () un cilpu (), iestatīšana darbojas tikai vienu reizi, bet cilpa darbojas vairākas reizes. Iestatījumā () mums ir jāraksta, lai sāktu sērijas sakarus, izmantojot sākuma () metodi. Arduino atšķirībā no apstrādes mums nav jāpiemin osta kā argumenti start () metodei, jo mēs jau norādām ostu, augšupielādējot skici Arduino.
Tātad iestatīšana () izskatīsies šādi:
void setup () {
Sērijas sākums (9600); // sākt sērijas sakarus
}
9600 šeit norāda datu pārraides ātrumu, ko mēs arī minējām apstrādes failā. Lai nodrošinātu pareizu saziņu, abiem datu pārraides ātrumiem jābūt vienādiem, vai arī sērijveida izvade var šķist muļķīga.
Tagad apskatīsim cilpas () daļu. Šī koda daļa darbojas vairākas reizes. Ja mēs vēlamies nolasīt dažus datus pēc porta, mēs izmantosim Serial.read () metodi. Šī funkcija atgriež nulli, ja nav pieejami dati, tāpēc šo metodi izsauksim tikai tad, ja būs pieejami daži dati sērijas straumē.
Lai pārbaudītu, vai ir pieejami daži dati, mēs izmantosim metodi Serial.available (). Ja tiek atgriezta vērtība, kas lielāka par 0, ir pieejami daži dati.
Tātad cilpas () daļa izskatīsies šādi:
void loop () {
ja (Serial.available ()> 0) {// ja seriālajā portā ir pieejami daži dati
char stāvoklis = Serial.read (); // nolasīt vērtību
// ja paziņojumi vai pārslēdzas burts
}
}
Tagad mēs varam izmantot, ja kāpnes vai ja ir daudz iespējamo rezultātu, mēs varam izmantot slēdža korpusu arī mainīgam stāvoklim.
4. darbība: izveidojiet GUI 7 segmenta kontrolieri
Faili ir pievienoti šeit. Piezīme. Apstrādei jums būs jāinstalē arī kontroles p5 bibliotēka, kuru esmu izmantojis, lai izveidotu GUI interaktīvās pogas.
Pin cipari
7 segments (alfabētiskā secībā) norāda attēlu
a - digitālā tapa 2
b - digitālā tapa 3
c - digitālā tapa 4
d - digitālā tapa 5
e - digitālā tapa 6
f - digitālā tapa 7
g - digitālā tapa 8
dp - digitālā tapa 9
Viss saturs un kods ir pieejams arī manā github šeit
Ieteicams:
Arduino apstrādes grafiskā pāreja: 5 soļi
Arduino apstrādes grafiskā pāreja: Sveiki, šis projekts ir paredzēts, lai padarītu redzamu grafiku no neredzamām daļiņām, kuras varētu uztvert sensori. Šajā gadījumā es izmantoju ultraskaņas sensoru un fotorezistoru, lai kontrolētu gaismu un attālumu. Es to vizualizēju, izveidojot mainīgos no se
DIY spēļu kontrolieris uz Arduino bāzes - Arduino PS2 spēļu kontrolieris - Spēlējot Tekken ar DIY Arduino Gamepad: 7 soļi
DIY spēļu kontrolieris uz Arduino bāzes | Arduino PS2 spēļu kontrolieris | Spēlēt Tekken ar DIY Arduino Gamepad: Sveiki, puiši, spēlēt spēles vienmēr ir jautri, bet spēlēt ar savu DIY pielāgoto spēļu kontrolieri ir jautrāk. Tāpēc šajā instrukcijā mēs izveidosim spēles kontrolieri, izmantojot arduino pro micro
Arduino LED pogu spilventiņš, kas virza apstrādes animācijas: 36 soļi (ar attēliem)
Arduino LED pogu spilventiņš, kas virza apstrādes animācijas: Šis pogas paliktnis ir izgatavots, izmantojot PCB un citas Sparkfun ražotās sastāvdaļas. To vada Arduino Mega. Katra poga ir jauka, gluda un apmierinoša, lai to nospiestu, un tās iekšpusē ir RGB gaismas diode! Es to izmantoju, lai kontrolētu animācijas
YABC - vēl viens Blynk kontrolieris - IoT mākoņa temperatūras un mitruma kontrolieris, ESP8266: 4 soļi
YABC - Vēl viens Blynk kontrolieris - IoT mākoņa temperatūras un mitruma kontrolieris, ESP8266: Sveiki, Makers, es nesen sāku audzēt sēnes mājās, austeru sēnes, bet man jau ir 3x no šiem kontrolieriem mājās, lai raudzētu temperatūras kontroli savai mājas brūvei, sieva arī tagad dara šo Kombucha lietu un kā siltuma termostatu
Kā kontrolēt vienkāršu apstrādes spēli ar Arduino: 6 soļi
Kā kontrolēt vienkāršu apstrādes spēli ar Arduino: Sveiki, šajā pamācībā mēs redzēsim, kā izveidot " saiti " starp apstrādes skici un Arduino karti. Šajā piemērā vienkāršā spēlē lidmašīnas vadīšanai tiks izmantots ultraskaņas modulis. Atkal šī apmācība ir tikai piemērs