Probleem met de code

Hallo allemaal,

Ik ben vrij nieuw met arduino, en heb een projectje bedacht maar waar ik toch in vast loop.
Ik zal eerst uitleggen wat ik wil bereiken.

De bedoeling is dat ik een stookketel heb waarvan ik de toevoer van koelwater een bepaalde volume moet hebben om uitgaande water temperatuur op ongeveer 55 graden te laten uitkomen. Nu heb ik een code maar begint gelijk met een fout. De gebruikte componenten zijn een Arduino Uno, lcd scherm (adres is 0x27), buzzer en een regelaar voor de pomp.

De code is:

// LiquidCrystal_I2C-1.1.2 – Version: Latest
#include <LiquidCrystal_I2C.h>
#include <max6675.h>
#include <Wire.h>

int thermoCLK = 4;
int thermoCS = 5;
int thermoDO = 6;

MAX6675 thermocouple(thermoCLK, thermoCS, thermoDO);
int gndPin = 2;
int vccPin = 3;

// Het shield zit op adres 0x27:
LiquidCrystal_I2C lcd(0x27,16,2);

int buzzer = 12; // set the buzzer control digital IO pin

void setup() {
Serial.begin(9600);
// use Arduino pins
pinMode(vccPin, OUTPUT); digitalWrite(vccPin, HIGH);
pinMode(gndPin, OUTPUT); digitalWrite(gndPin, LOW);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);

pinMode(buzzer, OUTPUT); // set pin 12 as output

Serial.println(“MAX6675 test”);
// wait for MAX chip to stabilize
delay(500);

digitalWrite(7,LOW); // pump rotation direction
digitalWrite(8,HIGH); // pump rotation direction
analogWrite(9,200);
delay(5000);
}

void loop() {
// basic readout test, just print the current temp

Serial.print(“C = “);
Serial.println(thermocouple.readCelsius());
float temperature = thermocouple.readCelsius();

lcd.init();
lcd.backlight();
lcd.clear();
lcd.print(“Temp:”);
lcd.setCursor(7, 0);
lcd.print(thermocouple.readCelsius());
lcd.setCursor(13, 0);
lcd.print(“C”);
lcd.setCursor(0, 1);
lcd.print(“Speed:”);
lcd.setCursor(13, 1);
lcd.print(“%”);
lcd.setCursor(7, 1);

digitalWrite(7,LOW); // pump rotation direction
digitalWrite(8,HIGH); // pump rotation direction
digitalWrite(12,LOW); // For Buzzer

if (temperature < 55) {
analogWrite(9,77);
lcd.print(30);
} else if (temperature < 56) {
analogWrite(9,79);
lcd.print(31);
} else if (temperature < 57) {
analogWrite(9,83);
lcd.print(33);
} else if (temperature < 58) {
analogWrite(9,90);
lcd.print(35);
} else if (temperature < 59) {
analogWrite(9,97);
lcd.print(38);
} else if (temperature < 60) {
analogWrite(9,104);
lcd.print(41);
} else if (temperature < 61) {
analogWrite(9,111);
lcd.print(44);
} else if (temperature < 62) {
analogWrite(9,118);
lcd.print(46);
} else if (temperature < 63) {
analogWrite(9,125);
lcd.print(49);
} else if (temperature < 64) {
analogWrite(9,200);
lcd.print(78);
} else { // temp >= 65
analogWrite(9,255);
lcd.print(100);
for (int i = 0; i < 900; i++) { // make a sound
digitalWrite(buzzer, HIGH); // send high signal to buzzer
delay(1); // delay 1ms
digitalWrite(buzzer, LOW); // send low signal to buzzer
delay(1);
}
delay(50);
for (int j = 0; j < 100; j++) { //make another sound
digitalWrite(buzzer, HIGH);
delay(2); // delay 2ms
digitalWrite(buzzer, LOW);
delay(2);
}
delay(1000);
}
}

Echter gelijk krijg ik de fout:
Arduino:1.8.13 (Windows 10), Board:“Arduino Uno”

sketch_nov13f:2:10: fatal error: LiquidCrystal_I2C.h: No such file or directory

#include <LiquidCrystal_I2C.h>

^~~~~~~~~~~~~~~~~~~~~

compilation terminated.

exit status 1

LiquidCrystal_I2C.h: No such file or directory

Misschien een beginners ding maar ik kom er niet uit.
Wie kan mij helpen?

Heb je de bibliotheek geinstalleerd? Wees je er ook van bewust dat er meerdere LiquidCrystal_I2C bibliotheken zijn, je zult ook nog de goede moeten vinden :)

Kun je bovenstaande post even bewerken en [quote] vervangen door [code] en [/quote] vervangen door [/code] zodat het results er uit ziet zoals hieronder

je programma hier

Dank je Sterretje,

Weer een nieuw begrip waar ik dan even in moet duiken Bibliotheek :) Maar is gelukt moest er meer in zetten. Heb trouwens code van gemaakt in het bericht.

een heel stuk verder alleen nog het volgende probleem:

Arduino:1.8.13 (Windows 10), Board:"Arduino Uno"

Display:30:16: error: stray '\342' in program

 Serial.println(“MAX6675 test”);

                ^

Display:30:17: error: stray '\200' in program

 Serial.println(“MAX6675 test”);

                 ^

Display:30:18: error: stray '\234' in program

 Serial.println(“MAX6675 test”);

                  ^

Display:30:31: error: stray '\342' in program

 Serial.println(“MAX6675 test”);

                               ^

Display:30:32: error: stray '\200' in program

 Serial.println(“MAX6675 test”);

                                ^

Display:30:33: error: stray '\235' in program

 Serial.println(“MAX6675 test”);

                                 ^

Display:43:14: error: stray '\342' in program

 Serial.print(“C = “);

              ^

Display:43:15: error: stray '\200' in program

 Serial.print(“C = “);

               ^

Display:43:16: error: stray '\234' in program

 Serial.print(“C = “);

                ^

Display:43:21: error: stray '\342' in program

 Serial.print(“C = “);

                     ^

Display:43:22: error: stray '\200' in program

 Serial.print(“C = “);

                      ^

Display:43:23: error: stray '\234' in program

 Serial.print(“C = “);

                       ^

Display:50:11: error: stray '\342' in program

 lcd.print(“Temp:”);

           ^

Display:50:12: error: stray '\200' in program

 lcd.print(“Temp:”);

            ^

Display:50:13: error: stray '\234' in program

 lcd.print(“Temp:”);

             ^

Display:50:19: error: stray '\342' in program

 lcd.print(“Temp:”);

                   ^

Display:50:20: error: stray '\200' in program

 lcd.print(“Temp:”);

                    ^

Display:50:21: error: stray '\235' in program

 lcd.print(“Temp:”);

                     ^

Display:54:11: error: stray '\342' in program

 lcd.print(“C”);

           ^

Display:54:12: error: stray '\200' in program

 lcd.print(“C”);

            ^

Display:54:13: error: stray '\234' in program

 lcd.print(“C”);

             ^

Display:54:15: error: stray '\342' in program

 lcd.print(“C”);

               ^

Display:54:16: error: stray '\200' in program

 lcd.print(“C”);

                ^

Display:54:17: error: stray '\235' in program

 lcd.print(“C”);

                 ^

Display:56:11: error: stray '\342' in program

 lcd.print(“Speed:”);

           ^

Display:56:12: error: stray '\200' in program

 lcd.print(“Speed:”);

            ^

Display:56:13: error: stray '\234' in program

 lcd.print(“Speed:”);

             ^

Display:56:20: error: stray '\342' in program

 lcd.print(“Speed:”);

                    ^

Display:56:21: error: stray '\200' in program

 lcd.print(“Speed:”);

                     ^

Display:56:22: error: stray '\235' in program

 lcd.print(“Speed:”);

                      ^

Display:58:11: error: stray '\342' in program

 lcd.print(“%”);

           ^

Display:58:12: error: stray '\200' in program

 lcd.print(“%”);

            ^

Display:58:13: error: stray '\234' in program

 lcd.print(“%”);

             ^

Display:58:15: error: stray '\342' in program

 lcd.print(“%”);

               ^

Display:58:16: error: stray '\200' in program

 lcd.print(“%”);

                ^

Display:58:17: error: stray '\235' in program

 lcd.print(“%”);

                 ^

C:\Users\Reno\AppData\Local\Temp\arduino_modified_sketch_820882\Display.ino: In function 'void setup()':

Display:30:27: error: expected primary-expression before 'test'

 Serial.println(“MAX6675 test”);

                           ^~~~

C:\Users\Reno\AppData\Local\Temp\arduino_modified_sketch_820882\Display.ino: In function 'void loop()':

Display:43:17: error: 'C' was not declared in this scope

 Serial.print(“C = “);

                 ^

Display:43:24: error: expected primary-expression before ')' token

 Serial.print(“C = “);

                        ^

Display:50:14: error: 'Temp' was not declared in this scope

 lcd.print(“Temp:”);

              ^~~~

C:\Users\Reno\AppData\Local\Temp\arduino_modified_sketch_820882\Display.ino:50:14: note: suggested alternative: 'exp'

 lcd.print(“Temp:”);

              ^~~~

              exp

Display:56:14: error: 'Speed' was not declared in this scope

 lcd.print(“Speed:”);

              ^~~~~

Display:58:14: error: expected primary-expression before '%' token

 lcd.print(“%”);

              ^

Display:58:18: error: expected primary-expression before ')' token

 lcd.print(“%”);

                  ^

exit status 1

stray '\342' in program

Dit rapport zou meer informatie bevatten met
"Uitgebreide uitvoer weergeven tijden compilatie"
optie aan in Bestand -> Voorkeuren.

Heeft dit te maken met niet de juiste bibliotheek?

O, die stray-dingen zijn vervelend.

Je hebt mogelijk iets gekopieerd vanaf een website of tekstverwerker en codes hebt meegenomen die je niet ziet. Er staan tekens tussen die je niet ziet. Het lijkt alsof een tekstverwerker de dubbele aanhalingstekens heeft vertaald. Type die regel opnieuw (gewoon met je toetsenbord) en verwijder de foute regel.

Het zijn er nogal veel. Kun je ergens de bron-code als gewone tekst vinden ? Desnoods kun je het als bijlage toevoegen, dan fietsen wij die stray-dingen er wel uit.

Kopieren is dus ook een dingentje dus. Wat ik heb zal ik hier als bijlage toevoegen.

Heb het maar even gedeeld vanuit one drive

https://1drv.ms/u/s!AlaV3nUGdXyNgtU-Wf4CgPBliO2bnw?e=a2qbiw

Opgelost!!!

Sterretje en Koepel bedankt voor jullie hulp, hierdoor ben ik er door heen gekomen. Oplossing was eigenlijk eenvoudig. Ik heb de code hierboven neergezet en daar staat wat anders dan in mijn sketch. Door Google kwam ik erachter dat het forum de code weer opmaakt met code tags zoals bedoelt. Dus zonder verborgen tekens. Door select knop weer de code te pakken in een nieuwe sketch staat het goed. In ieder geval bij mij. Nu verder distilleren ehhhh uitproberen :)