Kan ikke se hvad jeg gør forkert, kan få vist hastigheden men der er andre symboler efter hastigende? Hvorfor
??
Har fået lavet temperatur til at vise rigtigt. Hastigheden vises også rigtigt men vil gerne have symbolerne væk.
Jeg er helt grøn på programmering...
#include <Servo.h>
#include <LiquidCrystal.h>
Servo myServo; // Servo motor
LiquidCrystal lcd(12,11,5,4,3,2);
int const potPin = A0; // Analog pin hvor der er monteret et potmeter
int potVal; // Ud læs data fra analog porten
int angle; // Hvor servo motoren skal stå
float voltage, degreesF;
int degreesC; // fjern degreesC fra den oppe over og sæt den ind i int
const int temperaturePin = 1;
const int alarm = 8;
void setup()
{
myServo.attach(9); // Det er til servomotoren på pin 9
Serial.begin(9600); // Til serial komunitation
pinMode (8,OUTPUT); // Til busser
{
lcd.begin(16, 2); //kolonner og rækker
lcd.print("Welkommen til ;)");
delay(800); // Så denn viser det i 5 sek
}
lcd.clear(); // Stel det derstår oven over
lcd.setCursor(0,0);
lcd.print("Km/t:");
lcd.setCursor(11,0); //På linge 2
lcd.print("Temp:");
}
void loop()
{
potVal = analogRead(potPin); // Læs potiometeret posion
angle = map(potVal, 0, 1023, 0, 200); // Nummert fra potionmeter
myServo.write(angle); // så kan servotoren virke
Serial.print("Km/t : "); //Vis hastigheden
Serial.print(angle);
lcd.setCursor(0,1);
lcd.print(angle);
lcd.write(angle);
if (angle >80) // når hatsigheden kommer over 80
{
digitalWrite(8,HIGH);
}
else
{
digitalWrite(8,LOW);
}
voltage = getVoltage(temperaturePin);
degreesC = round((voltage - 0.5) * 100);
//degreesF = degreesC * (9.0/5.0) + 32.0;
//Serial.print("voltage: ");
//Serial.print(voltage);
Serial.print(" Temp :");
Serial.println(degreesC); //println skriv printLN så skifter den linge
delay(500);
lcd.setCursor(12,1); // Så den ved hvor den skal skrive til
lcd.print(degreesC); // SÅ kommer det på display
lcd.setCursor(15,1);
lcd.print("C");
}
float getVoltage(int pin)
{
return (analogRead(pin) * 0.004882814);
}
Mange tak for kikket.