Seriell display (parallax)
En ovärderlig feedbackfunktion i Arduinos IDE är den inbyggda seriella monitorn. Utan den hade man inte gjort många knop när man knackar kod. Det finns lika lättanvända displayer där ute, t.ex. parallax seriella display.

Den här kategorin displayer brukar ibland etiketteras som "intelligenta displayer" och denna flådiga rätt så överdrivna beskrivning syftar egentligen bara på att det sitter en processor ombord med teckengenerator och oftast någon enkel kommunikation med omvärlden, t.ex. ett serieinterface.
En sådan display jag äger i min samling av diverse elektronik-gunk kommer från parallax. Displayen har en inbyggd teckengenerator och kan med en enkel serie-tråd anslutas till vilken serie-port som helst.
Anslutningen blir enklast möjliga (en tråd + spänning till displayen) och det är ingenting förutom hastigheten på serietråden som behöver justeras. Jag sätter denna hastighet till 9600 baud på displayen. Det gör man med dip-switcharna på baksidan av displayen. På baksidan finns även anslutningarna till displayen, bara 3 stycken trådar här som behövs. Spänning (5 volt) samt serietråden.

Vad är det man skickar till displayen? Med seriekommunikation syftar man på, om inget annat nämns, RS232.
RS232 på 10 sekunder
Vi skickar en serie 1:or och 0:or som kodas enligt hög och låg spänning.

Det är sedan lite flexibelt vad det är som överförs. Det viktiga är att sändaren och mottagaren är överens om hur det fungerar, dvs om man använder 5,6,7 bitar eller 8 bitar, 1 eller 2 stopbitar, om man använder paritet eller inte och inte minst vilken hastighet det överförs med. Hastigheten brukar mätas i baud.
https://sv.wikipedia.org/wiki/Serieport
https://sv.wikipedia.org/wiki/RS-232
Kod
För att få lite mer att hända i nedanstående exempel har jag kopplat in en potentiometer på analog ingång 2 dvs A2. Vi läser av värdet på A/D -ingången och skriver ut det på displayen.
OBS att jag gjort egna utskriftsfunktioner till LCD -displayen nedan där jag typkonverterar till char. Jag fick det faktiskt inte att fungera utan detta. Har inte grottat så djupt i detta. Får säkert tillfälle att återkomma.
#include <SoftwareSerial.h>
int analogin;
char str[50];
// pinne 2 till display
SoftwareSerial lcd(3,2);
void gotoXY(int x, int y)
{
lcd.print((char)(128 + y*20 + x));
}
void printLCD(char *s)
{
while(*s)
{
lcd.write((char)*s++);
}
}
void printLnLCD(char *s)
{
while(*s)
{
lcd.write((char)*s++);
}
lcd.write((char)13);
}
void displayLight(bool on)
{
lcd.write(on?(char)17:(char)18);
}
void cls()
{
lcd.write((char)12);
delay(10);
}
void setup()
{
// samma hastighet som inställd på
// baksidan av displayen
lcd.begin(9600);
// ge displayen tid boota upp
delay(500);
cls();
displayLight(true);
printLnLCD("Potentiometer");
printLnLCD("pa analog in A2");
}
void loop()
{
analogin = analogRead(2);
gotoXY(0,2);
sprintf(str, "%d", analogin);
printLnLCD(str);
delay(500);
}

OBS att ovan potentiometern (spänningsdelaren) är inkopplad till 3.3 volt så utslaget på A/D-ingången blir inte 0-1023 utan något i stil med 0-675. Den händige flyttar lätt den röda kabeln 2 pinnhål till 5 volt så blir utslaget 0-1023 !
Annons
Egen domän, epost & webbsida
Från 120 + 140 = 260 kr per år + moms för Brons -konto med .com -domän.
Bästa sättet att lära sig något, är att 1) ha något att Meka med 2) Meka.
Detsamma gäller förstås internet och webbsidor.
Vill du lära dig göra roliga saker, t.ex. en fixa en egen hemsida på en egen domän eller installera en hemma-server på egen domän? Skaffa ett konto på ett billigt hjälpsamt webbhotell, där du kan ställa många dumma frågor till supporten. Välkommen!
Kontrollpanel (Direct Admin), där du kan lägga till epostadresser, installera wordpress för en företagssida eller privat blogg, lägga till subdomäner, tanka upp filer, ändra DNS -pekare och massor med annat. Behöver du hjälp fixa webbsida? Vi hjälper dig. Börjar ditt nuvarande webbhotell bli störande dyrt? Hör av dig, vi kan troligtvis hjälpa dig med flytten.
Karla Hosting AB • https://karlahosting.se