Olá.

Estou concluindo um projeto de uma fechadura eletrônica.

Mexo a pouco tempo com arduino, e tenho muita pouca noção de programação. 

Levando em conta minhas limitações optei por fazer o projeto em pedaços separados e no final unir tudo.

Sobre o projeto:

O projeto sera composto por um RFID, um display LCD com I2C e um teclado matricial.

Oque quero que faça:

Quero que se aproximar um cartão RFID que ja esta cadastrado, libera o acesso.

Se digitar a senha em um teclado matricial, libera acesso.

Ao digitar o números(protocolos) predefinidos, troca a senha.

Ao digitar números(protocolos) predefinidos, cadastra ou exclui RFID.

Ha muito custo consegui fazer todas as partes funcionarem (com alguns bugs). Porém ao juntas o programa tem atitudes inesperadas, sei mais o menos oque esta acontecendo...

Bugs:

1º -Texto piscando no LCD, quero que ele exiba no começo, e fique estático.

2º -Ao apertar alguma tecla do teclado matricial o programa se perde nas funções. E imprime o texto que digitado anteriormente junto com o atual, sempre somando blocos de 4. Fica mais facil de entender se executar no Arduíno.

*TUDO ESTA FUNCIONANDO SEPARADAMENTE. O PROBLEMA É QUANDO JUNTA.

Segue o sketchs componentes em anexo. Vou anexar a versão que estou trabalhando no comentário.

Exibições: 94

Anexos

As respostas para este tópico estão encerradas.

Respostas a este tópico

Bom dia JPM,

analisando o seu code " Vers_o_final_fechadura_eletronica.ino " , encontrei 4 erros em compilação.

o mesmo erro em 4 linhas 

Está:   tecla_pressionada = ""  e deveria ser  : tecla_pressionada = ' ';  .

Linhas 277, 307, 340, 363.

Continuando a testar.

RV

Então não sei oque acontece...mais se utiliza tecla_pressionada = ' ' da erro. Se utiliza o tecla_pressionada = "" da *erro permissivo.

Eu passei e nem liguei, estava tudo funcionando. Fora que não sabia a linha onde estava o problema.

Agora com o Sr. me chamando a atenção substitui o  tecla_pressionada = "" por tecla_pressionada = ' \0'  (Caracter nulo).

Tem que ter um espaço entre  '  ' .

RV

Tipo se colocar o espaço oque vai ficar na variavel tecla_pressionada é o metacaracter branco, mais pra frente no sketch tem um trecho onde pega oque tem no char e mais somando em uma string(Variavel_conversao).

Se deixar o espaço (/s) ele vai somar e ficaria "/sblabla" quando o programa espera somente o texto "blabla". Ai teria que customizar tudo dnv.

JPM, 

Discordo de vc,

Em seu code :  " Vers_o_final_fechadura_eletronica.ino " , todas vez que vc usou

a variável "tecla_pressionada" em alguma operação, antes vc carregou algum valor nela,

com o método teclado1.getKey(), ou seja ela nunca foi usada com o valor "espaço".

Alias, acho desnecessária a instrução :   tecla_pressionada = ' ';, pela mesma razão anterior.

Esta variável foi definida como char, então o tamanho dela é de somente 1 byte.

RV

Desculpa a dmr. Esses dias estão corridos, vou ver se termino e faço os testes. Assim que tiver resultados dou retorno.

RSS

Destaques

Registre-se no
Lab de Garagem
Clicando aqui

Convide um
amigo para fazer
parte

curso gratis de arduino

© 2018   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço