Stap 2: Code
U kunt dit voorbeeld uitvoeren gebruiken we een arduino-bibliotheek voor verwerking. Het is een echt praktisch bibliotheek die arduino/verwerking interface een stuk makkelijker maakt.
Kunt u de verwerking van webpagina bezoeken door hier te klikken: https://www.processing.org/.
De bibliotheek downloaden en voor meer informatie over hoe te installeren en te gebruiken, kunt u de link blaten terecht: http://playground.arduino.cc/Interfacing/Processing
Dus de bibliotheek wordt geïnstalleerd. Nu moeten we om te uploaden naar de arduino in het voorbeeld van de standaard firmata (firmware); te vinden op de arduino IDE bestand openen > voorbeelden > Firmata > StandardFirmata. Selecteer uw COM-poort, arduino board en uploaden van het voorbeeld.
Voor de verwerking code:
Venster:
Wanneer we een project verwerking uitvoert, het geopende venster heeft een bepaalde breedte en hoogte en elke vorm zoals knoppen, lijnen, etc. zijn formaat aangepast aan dat venster in sommige esthetische/functionele manier. Maar wat als we willen of nodig hebben van een groter venster; of een kleinere? Moeten we moeten re-spanwijdte alles?
Om te houden dingen evenredig, schetste ik op papier het gewenste aspect voor het venster. Vervolgens, altijd denken in procenten, gedeeld het venster in bruikbare gebieden en randen, zoals u in de afbeelding hierboven zien kunt.
In dit geval kwam ik met deze verhoudingen:
80% voor de breedte van kolommen en 20% voor randen en spatiëring van, zo b=80%*width/number van kolommen, c=20%*width/number van kolommen.
//Automatic window and column re-sizing float b=0.8*w/3; //default is at 0.8; float c=0.2*w/3; float a=c/2; //c=2*a float d=h-3*a-b; float e=w-c;
Kolom:
Elke kolom werd gemaakt door verschillende gekleurde lijnen en als de kolom hoogte variëren met de vensterhoogte, dat doet elke kleur lijnen. Om te gaan met is dit gebruikte ik de kaart functie heks zeer nuttig in, Nou, toewijzing waarden tussen een bepaald bereik.
Als u één kolom langzaam verschijnen, kunt u het bestand "Een kolom" in verwerking.
Communiceren met arduino:
Wat gebeurt er in de belangrijkste functie van de code:
VOID draw()
{
Als (mouseX > een & & mouseX <a + b & & mouseY > een & & mouseY < a + d & & mousePressed)
Als de muisaanwijzer binnen de rode kolom en de linker muisknop ingedrukt, doen wat volgt
{
De positie van de aanwijzer in deze kolom bepaalt de rode waarde tussen 0 en 255
RV = kaart (mouseY, a + d, a, 0, 255);
while(now-before)
{
Now=Millis();
}
arduino.analogWrite (Rled, (int) Rv); Waarde voor rood (van 0 tot 255) aan de arduino te sturen
}
Doen een soortgelijke als verklaring aan de waarden van groen en blauw. (getoond in de broncode die is gekoppeld)
Kleur in het voorbeeldvak weergeven
Fill(RV,gv,bv); Waarden die zijn verzonden naar de arduino zijn dezelfde als die u hier invoert
rect (a, 2 * a + d, e, b); Hiermee tekent u onder vak (voorbeeldvak)
voorheen = nu; "Reset" vertraging
}