Arduino typ K temperaturindikatorn (3 / 3 steg)
Steg 3: skiss
Arduino skiss.För att få MAX31855 bibliotek:
https://github.com/adafruit/Adafruit-MAX31855-libr...
Endast är nödvändigt ändra Arduino pins urval.
För LCD-display minns ingår i Arduino IDE, endast är nödvändigt ändra pin urval.
Este proyecto se realizo sv enero de 2014 para hacer una demo de la operatividad
del integrado MAX31855, que integro en circuito impreso mi curso Antonio
Las pruebas son FN éxito y se añadión un display LCD, tambien hö cambios sv la
Salida por puerto serie para monitorizar y registrar la indicación.
Las siguientes etapas tratan de realizar multiplar mått de termopar y además realizar
La comunicación en través de una conexión de röda TCP-IP
Incluye el código de la librería:
#include < LiquidCrystal.h >
initiera bibliotek med numrerar av gränssnittet stiften
LiquidCrystal lcd (2, 3, 4, 5, 6, 7);
Adruino 1.0 definierar före dessa variabler
#include < MAX31855.h >
#if ARDUINO < 100
int SCK = 13.
int MISO = 12.
int SS = 10;
#endif
Declaración de las variabler enteras
int LED = 9.
int buttonPin = 8;
int buttonState = 0;
Declaración de las variabler de usadas con el MAX
dubbel tempTC, tempCJC;
bool faultOpen, faultShortGND, faultShortVCC, x;
bool temp_unit = 0; 0 = Celsius, 1 = Fahrenheit
Init MAX31855 bibliotek för chip.
MAX31855 temp (SCK, SS, MISO);
void setup() {
sätta din installation kod här, om du vill köra en gång:
Serial.BEGIN(9600);
pinMode (LED, OUTPUT);
Ange den LCD antal kolumner och rader:
LCD.BEGIN (16, 2);
Skriv ut ett meddelande till LCD-skärmen.
LCD.Print ("Hola Curso!"); Skriva på LCD
initiera tryckknapp PIN-koden som indata:
pinMode (buttonPin, ingång);
}
void loop() {
sätta din huvudsakliga kod här, för att köra flera gånger:
x = temp.readMAX31855 (& tempTC, & tempCJC, & faultOpen, och faultShortGND, och faultShortVCC, temp_unit);
Lo que escribimos en el puerto serie lo podemos modificar en las siguientes líneas
Serial.Print(tempTC);
Serial.Print("\t");
Serial.Print(tempCJC);
Serial.Print("\t");
Serial.Print(faultOpen);
Serial.Print(faultShortGND);
Serial.println(faultShortVCC);
Lo que escribimos en el LCD lo definimos en partir de aquí
LCD.BEGIN (16, 2); //The först berättar Liquid Crystal biblioteket hur många kolumner och rader displayen har
lcd.setCursor (0,0); //The först anger markörens position (där nästa text kommer att visas) till kolumn 0 eller 1. Både
kolumn- och nummer börjar på 0 istället för 1.
om (buttonState == hög) {
Terese unidades en F
LCD.Print ("CJ Temp = F");
}
annat {
Deja las unidades sv C
LCD.Print ("CJ Temp = C");
}
lcd.setCursor (9, 0);
LCD.Print(tempCJC);
lcd.setCursor (0,1);
om (buttonState == hög) {
Terese unidades en F
LCD.Print ("TC Temp = F");
}
annat {
Deja las unidades sv C
LCD.Print ("TC Temp = C");
}
lcd.setCursor (9, 1);
LCD.Print(tempTC);
El ledde parpadea al ritmo impuesto por el dröjsmål dando ritmo al bucle
digitalWrite (LED, hög);
Delay(100);
digitalWrite (LED, låg);
Delay(100);
Läs statligt av tryckknapp värdet:
buttonState = digitalRead(buttonPin);
Kontrollera om tryckknappen trycks.
om det är, är buttonState hög:
om (buttonState == hög) {
Aktivera LED:
temp_unit = 1;
}
annat {
Inaktivera LED:
temp_unit = 0;
}
}