Boa tarde Colegas, tudo bem?
Estou montando um projeto o qual eu recebo uma informação do módulo bluetooth e de acordo com o conteúdo desta informação eu faço determinada tarefa, como por exemplo, colocar uma saída como nível lógico alto.
Primeiramente, como teste, eu montei o circuito do Atmega 328p na protoboard e utilizei um cabo USB-Serial para o RX e TX do Atmega, o meu sketch é o seguinte:
const int ledPin = 8;
int txt;
void setup() {
Serial.begin(9600);
pinMode(ledPin, OUTPUT);
digitalWrite(ledPin, HIGH);
}
void loop() {
if(Serial.available()){
txt = Serial.read();
Serial.println(txt);
digitalWrite(ledPin, LOW);
}
}
Quando eu abro o Monitor Serial, seleciono a COM, informo o meu baudrate e digito algum número, ele retorna alguns caracteres estranhos, como por exemplo, quando digito 1 ele me retorna g⸮V⸮
Em anexo algumas fotos do circuito montado.
Tags:
As respostas para este tópico estão encerradas.
Boa tarde José, uma última dúvida...
Estou com o Módulo Conversor USB para TTL e tudo OK, consegui mandar uma informação para meu Atmega328...
Mas quando eu troco o TX do conversor pelo TX do HC-05 o micro interpreta como se eu não tivesse mandado nada...
Testei o HC 05 com o módulo conversor e ele está OK.
O que poderia ser isto? Aparentemente, quando uso o módulo, os 2 funcionam perfeitamente, o problema só acontece quando realizo a configuração RX e TX(HC-05) -> TX e RX(Atmega328p).
olá Guilherme.
O que o Eduardo Marcondes disse, sobre o Cristal estar próximo do Processador, é absolutamente necessário. Pelo menos se vc quiser que o Oscilador funcione de forma estável e sem grandes desvios do valor nominal da frequência do Cristal. O Cristal deve estar junto aos terminais do Processador, ali na protoboard.
Mas lembre-se: aqueles dois Capacitores Cerâmicos ligados junto ao Cristal (dá pra vê-los claramente nas suas fotos), também terão suas capacitâncias somadas às capacitâncias "parasitas" dos contatos do protoboard (já que metal/plástico/metal = capacitância). Como o valor desses capacitores é algo entre 18pF e 39pF, veja vc que não é tão difícil corromper este valor, e esta capacitância tem efeito direto no desvio de frequência do Cristal.
Uma dica que pode ajudar: grave o exemplo "Blink" no Processador, fazendo o LED piscar a cada segundo. Depois use um cronômetro (como os de celular), e meça quanto tempo demora para o LED piscar 50 vezes. Divida este tempo por 50 e então terá uma ideia se a frequência está ao menos próxima do que deveria estar.
E se vc tiver um Multímetro que meça Frequência, pode fazer isso também: no código use um Contador, e incremente este contador a cada vez que o "millis" ciclar 5 unidades. Então, toda vez que vc incrementar o Contador, também inverta o nível lógico em um pino programado como saída. Meça com o multímetro a frequência, que deverá ser de 100 Hz (devido ao "toggle" do pino). Isto também poderá dar uma ideia se a frequência está pelo menos próxima ao esperado.
Parabéns por sua ótima iniciativa, pois é uma excelente forma de aprender. Mas procure ser o mais rigoroso que vc puder.
Abrçs,
Elcids
Opa, muito obrigado pela ajuda!
Já coloquei o crystal perto do micro, porém, meu problema ainda continua...
Usei o sketch padrão do blink e para piscar 50 vezes ele demorou cerca de 100 segundos.
Boa tarde Guilherme,
Esses tutoriais são muito bons. Siga as instruções e faça testes:
http://www.martyncurrey.com/hc-05-with-firmware-2-0-20100601/#Conne...
http://www.martyncurrey.com/hc-05-with-firmware-2-0-20100601/
Se esta usando as portas TX e RX do Arduino para acessar a console serial/USB, não use para conectar o Bluetooth.
Vai apresentar problemas.
Não estou usando as portas TX e RX para controle serial/USB, apenas para meu HC-05.
Olhei os links e fiz os testes...
Acontece que meu HC-05 parece estar funcionando corretamente(quando faço ligação com o Módulo conversor USB para TTL), mas, quando conecto ele no meu Atmega, ele ou o 328 não funcionam corretamente..
O 328 quando conecto no módulo conversor também funciona...
Será que eu preciso fazer alguma ligação HC-05 - Converter para TTL - Atmega328p?
O estranho é que eu vi todos tutorias apenas ligando o HC-05 diretamente no Atmega...
Acho estranho o 328 estar queimado, já que funciona com o conversor...
Yes...
Consegui solucionar,alterei a porta RX e TX do micro para a 2 e 3...
O estranho é que eu estava usando a porta TX e RX padrão(0 e 1)apenas para a comunicação com o HC-05.
Enfim, muito obrigado pela ajuda José!
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por