Bonjour,
J'aimerais faire apparaître un signal analogique d'une LED quand celle-ci s'allume , je suis sur un projet où je travaille sur un capteur de température et je dois afficher la température sur un afficheur grove et d'autres manip et là pour finir je dois faire apparaître une consigne , la température et une LED sur un graphe j'ai réussi pour les 2 premiers mais pour la LED je n'ai pas réussi.
voici le programme pour l'instant :
include <math.h>
#include <rgb_lcd.h>
rgb_lcd lcd;
const int colorR = 255;
const int colorG = 255;
const int colorB = 255;
const int B = 4275; // B value of the thermistor
const int R0 = 100000; // R0 = 100k
const int pinTempSensor = A0; // Grove - Temperature Sensor connect to A0
int sensorValue = 0;
int sensorPin = A1;
int intensitelcd = 0;
int ledPin = 13;
#if defined(ARDUINO_ARCH_AVR)
#define debug Serial
#elif defined(ARDUINO_ARCH_SAMD) || defined(ARDUINO_ARCH_SAM)
#define debug SerialUSB
#else
#define debug Serial
#endif
void setup()
{
Serial.begin(9600);
pinMode(ledPin, OUTPUT);
lcd.begin(16,2);
lcd.setRGB(colorR, colorG, colorB);
}
void loop()
{
int a = analogRead(pinTempSensor);
float R = 1023.0/a-1.0;
R = R0*R;
float temperature = 1.0/(log(R/R0)/B+1/298.15)-273.15; // convert to temperature via datasheet
if (temperature < intensitelcd)
{
lcd.setRGB(colorR, 0, 0);
digitalWrite(LED_BUILTIN, HIGH);
delay(200);
}
if (temperature > intensitelcd)
{
lcd.setRGB(0, 0, colorB);
digitalWrite(LED_BUILTIN, LOW);
delay(200);
}
Serial.print(temperature);
Serial.print(",");
Serial.print(intensitelcd);
Serial.print("\n");
lcd.clear();
intensitelcd = map(sensorValue, 0, 1023, 0, 50);
lcd.print("Cons :");
sensorValue = analogRead(sensorPin);
lcd.print(intensitelcd);
lcd.setCursor(0, 1);
lcd.print("Temp :");
lcd.print(temperature);
lcd.print(" C");
delay(200);
}
Merci d'avance pour votre aide ,