Hello everyone, I am working out a schedule to use TID as developed in threads Opel TID Display - #135 by sipeti
What occurs to me is the following, I made the sketch, and on the test bench, it works perfectly. However, when connecting to the 12V of the car, it simply freezes, the Arduino does not respond to any command.
Even using a stabilized source, the same thing happens. But when I turn on any other source, the system works normally.
Here's the code I'm using.
#include "TID12_10.h"
TID MyTid(3,4,5); //D5->SCL, D6->MRQ, D7->SDA
int capo = 2; //Capo dianteiro
int botao1 = 7; //Porta 01
int botao2 = 8; //Porta 02
int botao3 = 9; //Porta 04
int botao4 = 10; //Porta 05
int botao5 = 11; //Porta Malas
int botao6 = 12; //Luz do ABS
int info = 13; //Liga transistor que comuta os fios do TID, ou o sinal que apaga a tela do TID para aparecer as informações
int sinalTID = 6;
void setup() {
MyTid.space1_init(0,0); //(first position,last position) (i. e. just the first digit)
MyTid.space2_init(0,9); //use digit 2 to 10
MyTid.clear_space(1);
MyTid.clear_space(2);
digitalWrite(sinalTID, HIGH);
pinMode(botao1, INPUT_PULLUP);
pinMode(botao2, INPUT_PULLUP);
pinMode(botao3, INPUT_PULLUP);
pinMode(botao4, INPUT_PULLUP);
pinMode(botao5, INPUT_PULLUP);
pinMode(botao6, INPUT_PULLUP);
pinMode(capo, INPUT_PULLUP);
pinMode(info, OUTPUT);
}
void loop() {
if (!digitalRead(botao1) || !digitalRead(botao2) || !digitalRead(botao3) || !digitalRead(botao4) || !digitalRead(botao5) || !digitalRead(botao6) || !digitalRead(capo)){
digitalWrite(info, HIGH);
delay(0);
}else{
digitalWrite(info, LOW);}
if (digitalRead(botao1) == LOW)
MyTid.display_message("PORTA DIANTEIRA ESQUERDA ABERTA ",8,2);// (speed,position)
if (!digitalRead(botao1) || !digitalRead(botao2) || !digitalRead(botao3) || !digitalRead(botao4) || !digitalRead(botao5) || !digitalRead(botao6) || !digitalRead(capo)){
digitalWrite(info, HIGH);
MyTid.display_message(" CHECK ",8,2);// (speed,position)
delay(0);
}else{
MyTid.clear_space(2);}
if (digitalRead(botao2) == LOW)
MyTid.display_message("PORTA DIANTEIRA DIREITA ABERTA ",8,2);// (speed,position)
if (!digitalRead(botao1) || !digitalRead(botao2) || !digitalRead(botao3) || !digitalRead(botao4) || !digitalRead(botao5) || !digitalRead(botao6) || !digitalRead(capo)){
digitalWrite(info, HIGH);
delay(0);
}else{
MyTid.clear_space(2);}
if (digitalRead(botao3) == LOW)
MyTid.display_message("PORTA TRASEIRA ESQUERDA ABERTA ",8,2);// (speed,position)
if (!digitalRead(botao1) || !digitalRead(botao2) || !digitalRead(botao3) || !digitalRead(botao4) || !digitalRead(botao5) || !digitalRead(botao6) || !digitalRead(capo)){
digitalWrite(info, HIGH);
delay(0);
}else{
MyTid.clear_space(2);}
if (digitalRead(botao4) == LOW)
MyTid.display_message("PORTA TRASEIRA DIREITA ABERTA ",8,2);// (speed,position)
if (!digitalRead(botao1) || !digitalRead(botao2) || !digitalRead(botao3) || !digitalRead(botao4) || !digitalRead(botao5) || !digitalRead(botao6) || !digitalRead(capo)){
digitalWrite(info, HIGH);
delay(0);
}else{
MyTid.clear_space(2);}
if (digitalRead(botao5) == LOW)
MyTid.display_message("PORTA MALAS ABERTO ",8,2);// (speed,position)
if (!digitalRead(botao1) || !digitalRead(botao2) || !digitalRead(botao3) || !digitalRead(botao4) || !digitalRead(botao5) || !digitalRead(botao6) || !digitalRead(capo)){
digitalWrite(info, HIGH);
delay(0);
}else{
MyTid.clear_space(2);}
if (digitalRead(botao6) == LOW)
MyTid.display_message("AVARIA NOS FREIOS ABS ",8,2);// (speed,position)
if (!digitalRead(botao1) || !digitalRead(botao2) || !digitalRead(botao3) || !digitalRead(botao4) || !digitalRead(botao5) || !digitalRead(botao6) || !digitalRead(capo)){
digitalWrite(info, HIGH);
delay(0);
}else{
MyTid.clear_space(2);}
if (digitalRead(capo) == LOW)
MyTid.display_message("CAPO ABERTO - VERIFICAR !+!+!+! ",8,2);// (speed,position)
if (!digitalRead(botao1) || !digitalRead(botao2) || !digitalRead(botao3) || !digitalRead(botao4) || !digitalRead(botao5) || !digitalRead(botao6) || !digitalRead(capo)){
digitalWrite(info, HIGH);
delay(0);
}else{
MyTid.clear_space(2);}
if (!digitalRead(botao1) && !digitalRead(botao2) && !digitalRead(botao3) && !digitalRead(botao4) && !digitalRead(botao5) && !digitalRead(botao6) && !digitalRead(capo)){
digitalWrite(info, HIGH);
delay(0);
}else{
digitalWrite(info, LOW);}
}