Arduino från Scratch - Digital termometer (4 / 7 steg)
Steg 4: programmering...
1. om du har en annan Adruino kan du programmera ditt chip genom att försiktigt byta ut chipet kom med. ELLER
2. du kan köpa en "FTDI vän" från adafruit.com $14,75 thats vad jag använt.
Om du inte använder detta gå till nästa steg.
Den levereras med en 6-pin rad. Sätta detta i (se bild) och Anslut följande gå vänster till höger.
- Att marken
- Inte används
- Till 5v
- Till stift 2
- Till stift 3
- Till stift 1
Nu med det ansluten kan du koppla in FTDI vän och programmera den via USB från en dator med Arduino programvara.
(Obs: inte koppla in både FTDI vän och externa behörighet samtidigt)
Använda en dessa 2 metoder gå vidare och programmera "Blink" skissen som medföljer programvaran.
Om din LED börjar blinka bort, vet du allt är bra och det är dags att gå vidare.
Om du vill göra en digital termometer än du kan programmera denna skiss nu.
/ * Denna skiss är början har från Ladyada.com.
Det har ändrats av Matt Jenkins 10/27/2011
*/
inkludera bibliotek-koden:
#include < LiquidCrystal.h >
initiera bibliotek med numrerar av gränssnittet stiften
LiquidCrystal lcd (7, 8, 9, 10, 11, 12);
TMP36 Pin variabler
int tempPin = 1; den analoga stift TMP36 Vout (känsla) pin är ansluten till
resolutionen är 10 mV / grad Celsius med en
500 mV offset för negativa temperaturer
int tempReading; analog läsning från sensorn
void setup(void) {
Ange den LCD antal kolumner och rader:
LCD.BEGIN (16, 2);
Skriv ut ett meddelande till LCD-skärmen.
LCD.Print("Temp-O-Mattic"); Du kan ändra "Temp-O-Mattic" till något annat liknande "Temp är..."
}
void loop(void) {
tempReading = analogRead(tempPin);
konvertera att läsning till spänning
flyta spänning = tempReading * 5.0;
spänning = 1024.0;
flyta temperatureC = (spänning - 0,5) * 100; konvertering från 10 mv per grad wit 500 mV offset
grader ((volatge - 500mV) gånger 100)
ställa markören till kolumn 0, linje 1
(Obs: linje 1 är den andra raden, sedan räknar börjar med 0):
lcd.setCursor (0, 1);
nu konvertera till Fahrenheit
flyta temperatureF = (temperatureC * 9.0 / 5.0) + 32,0;
LCD.Print(temperatureF); Om du vill att ändra C och inte F bara "temperatureF" till "temperatureC"
LCD.println ("grader F"); Du kan ändra F-C
Delay(1000);
}