Bonjour, je souhaite réaliser un vitesse-mètre avec affichage de : km, km total, vitesse max, vitesse instantané avec affichage OLED et capteur à effet hall.
-
Mon afficheur OLED est de 0.96'' 128*64 en I2C ( adresse I2C trouvé avec scanner = 0x3C ) SSD1306.
-
Mon capteur à effet hall est un UGN3503 qui envoie du 2.5v quand aucun champs magnétique augmente quand un champs magnétique "nord" se rapproche ( quand il passe environ 3v ) et diminue quand un champs magnétique "sud" se rapproche. Mon capteur est donc analogique pas comme les "autres"( la majorité ).
Je n'ai aucun problème au niveau cablâge ( ecran 5v et gnd + sda sur sda et sci sur sci ) (effet hall supply sur 5v gnd sur gnd et output sur a0 ) par contre au niveau programmation je n'arrive pas du tout; j'ai déjà regardé les différents articles de capteur à effet hall tachymetre mais je ne comprends rien à ceux-ci.
Je ne souhaite pas forcément de codes tout faitsmais de conseils et de bouts de codes, surtout le calcul pour mesurer la vitesse.
J'ai essayé avec ce début de programme affichant le tempstrouvé sur serial pour l'instant mais ça ne fonctionne pas, je pense à un problème du DernierPassage
unsigned long temps = millis;
unsigned long DernierPassage;
unsigned long tempstrouvé;
int pinCapteur = A0;
void setup(){
Serial.begin(9600);
}
void loop(){
if(digitalRead(pinCapteur) <= 2*204.6 ||digitalRead(pinCapteur) >= 3*204.6){ //Si aimant pole nord //ou aimant pole sud (si moins de 2v ou plus de 3v)
tempstrouvé = temps - DernierPassage;
DernierPassage = temps;
Serial.println(tempstrouvé);
delay(50);
//et la je suis bloqué
}
}
Merci d'avance à tous ceux qui prendront le temps de regarder mon post et d'y répondre ou même, qui sait, de trouver une solution.