Olá pessoal?

Estou tentando construir uma balança.

Eu tenho o strain gauge para 5Kg e o HX711.

Também o LCD 16x2 com o PCF8574.

A grande questão é...

O microcontrolador que estou utilizando é o ESP8266-01.

Sabendo que as portas 0 e 2 são utilizadas como I2C fiz a conexão da balança e LCD.

No entanto, o HF711 não é I2C e nem serial, segundo pesquisa realizada no google.

Mas, para minha surpresa, realizei alguns testes e eventualmente funcionou.

Ou seja, as vezes após desligar ou reiniciar tudo, ou a tela do LCD fica mostrando tudo normal, ou não mostra nada.

Logo, preciso de uma ajudinha para isso ficar "redondinho".

Segue em anexo o código para analise.

Exibições: 267

Anexos

Responder esta

Respostas a este tópico

Tenta isso:

no Setup coloca uma mensagem tipo: Ligando. De um delay (1000); e um ldc.clear;

void setup() {
Wire.begin(0, 2); // INFORMA AS PORTAS A SEREM UTILIZADAS PELO LCD
lcd.begin (16, 2); // INICIALIZA O DISPLAY LCD
lcd.createChar(0, customChar);
lcd.backlight();

//-----------------------------------

lcd.setCursor(0, 0); 
lcd.print("Ligando.....");

delay(1000);

lcd.clear;

//----------------------------------
}

uhm. Boa dica.

Vou testar!

Boa noite FSP,

não entendi bem, você conseguiu rodar com o LCD é o HX711?

Qual biblioteca (link) vc está usando para o LCD?

Você usou os métodos lcd.print() e lcd.write(), Porque?

Porque usou o método: Wire.endTransmission();?

RV

Olá?

Então, trouxe essas informações para que possamos discutir, pois estou em fase de aprendizagem.

Eu consegui rodar o LCD, o HX711, um DHT22 e um relé. Tudo no ESP01.

A questão que trouxe para discussão seria sobre o funcionamento do I2C e o padrão do HX711.

Conforme dados que pesquisei na internet, o HX711 não é I2C.

Então, fiquei na dúvida sobre como os dois funcionam juntos.

A biblioteca que estou utilizando é a LiquidCrystal, que pode ser instalada pelo arduino IDE via sketch.

Acho que só utilizei o  lcd.print() para imprimir os textos no LCD. Já o lcd.write() utilizei para inserir um caractere customizado.

O Wire.endTransmission() foi utilizado para parar a transmissão de dados para o LCD e liberar as portas para o  HX711. Pelo menos essa foi a lógica que implementei.

Aguardo por sugestões.

Gostaria de aprender mais e sei que aqui no labdegaragem só tem fera!!!

FSP, ainda não entendi, 

você conseguiu usar o LCD I2C, o modulo HX711 e o modulo DHT22 e um relé,

tudo ao mesmo tempo em um ESP8266-01?

RV

Sim. Consegui!

Bom dia FSP,

fiquei curioso como ligou todos estes módulos,

você poderia colocar o esquema com o ESP8266-01 com todos este módulos ligados?

Qdo fiz a pergunta:

"Qual biblioteca (link) vc está usando para o LCD?" 

quero saber o link da biblioteca

que você usou para ver que método ela tem.

RV

ESP8266-01

PS:

Teste este seu código com pequenas modificações e conta o resultado.

testes.ino

RV

Montagem (Tá feio mas tá bonito)

parte%20interna.jpeg

Página web de controle de dados para o funcionamento do relé

p%C3%A1gina%20web.jpeg

Vídeo

Exemplo funcional

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço