Índice:
- Etapa 1: Avaliação / modificação
- Etapa 2: Programação do HC05
- Etapa 3: HC06 revisitado
- Etapa 4: Configurando HC05 para HC06
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:35
Então, este Lazy Old Geek (L. O. G.) finalmente conseguiu um módulo Bluetooth HC05 da AliExpress.com. Eu pedi um depois de escrever este Instructable:
www.instructables.com/id/OldMan-and-Blueto…
Bem, passei várias horas tentando fazer isso funcionar no modo de comando, sem sucesso. Eu até destruí um módulo HC05 (provavelmente aplicando tensões erradas), então tive que comprar outro.
DICA: O modo de comando está se comunicando com o próprio módulo HC05 ou HC06. O modo de comunicação está falando com outro dispositivo Bluetooth.
O que eu encontrei são muitas diferenças entre o HC05 e o HC06. O HC05 pode ser mestre ou escravo, o HC06 é somente escravo. Basicamente, um mestre pode falar com um escravo, dois escravos não podem falar um com o outro. O HC05 e o HC06 possuem comandos diferentes. O HC05 deve ser configurado por hardware para entrar no modo de comando, ele pode ter diferentes taxas de transmissão para comunicação e modo de comando.
O HC06 está sempre em modo de comunicação e comando. Definir a taxa de transmissão para um mudará o outro.
DICA: Acompanhe isso como eu não fazia e tive alguns problemas.
DICA: Diferentes HC05s e HC06s podem ser diferentes dos que eu tenho.
O HCO6 executará comandos, mas nem sempre mostra resultados alterados, por exemplo Mudança de nome.
Etapa 1: Avaliação / modificação
Em anexo está um esquema HC05 semelhante ao meu. Duas diferenças que eu sei, são que há um resistor de 2,2 K entre PIO11 (34) e o pino EN e o regulador de 3,3 V é um pacote de 3 pinos e não tem um pino CE. A imagem em anexo é um esquema marcado para o que eu acho que tenho.
Para fins de programação, o que é importante é que a chave do pino 34 seja conectada ao pino EN por meio de um resistor de 2,2K. (Também está conectado ao botão de pressão, o outro lado está conectado a 3,3 V)
O estoque HC05 requer energia de 5 V, embora funcione com sinais de 3,3 V, então modifiquei meu HCO5 para usar 3,3 V. Eu removi o regulador de 3,3 V e executei um jumper do pino VCC diretamente para 3,3 V. Isso é mostrado no esquema modificado e na minha imagem HC05 modificada.
A propósito, o HC05 Command Set.pdf anexado contém algumas informações valiosas sobre o uso do HC05. Infelizmente, ele não é muito amigável.
Etapa 2: Programação do HC05
Decidi que a maneira mais fácil de usar o HC05 era conectá-lo a um de meus adaptadores seriais CP2102 de 3,3 V como fiz em Old Man And Bluetooth Instructable com um HC06. Veja a imagem e o esquema.
DICA IMPORTANTE: Para ligar o HC05 no modo de comando, o pino PIO11 (34) precisa estar alto antes que 3,3 V seja aplicado. O pino EN no meu HC05 está conectado ao PIO11 por meio de um resistor de 2,2K, então ele só precisa ser conectado a 3,3V. O esquema mostra isso como os pinos do programa, mas apenas coloque um jumper de 3,3 V para o pino EN. Certifique-se de fazer isso antes de ligar a energia. No meu, você pode dizer se está no modo de comando porque o LED HC05 piscará lentamente. Se estiver piscando rápido, você está no modo de pareamento e precisa tentar novamente.
DICA: O HC05 no modo de comando sempre fala a uma taxa de transmissão de 38400. Todos os comandos são capitalizados e precisam ser seguidos por um CR e LF. (Isso é diferente do HC06)
DICA: O formato do comando é muito rígido. Sempre use bonés. Todos eles começam com “AT”. Siga-os exatamente, você não pode adicionar espaços onde eles não são mostrados.
Inicie o Arduino. Vá para “Ferramentas” “Porta” e selecione a porta Com à qual o CP2102 está conectado.
Abra o Monitor Serial. Na parte inferior da janela, selecione “Ambos NL e CR” e “38400 baud”. (NL significa New Line, que é o mesmo que LF, que é Line Feed).
No topo, há uma caixa ao lado do botão Enviar, clique nela.
No seu PC, ative Caps Lock
Digite AT
A janela grande deve exibir “OK”.
Você está se comunicando no modo de comando
Alguns comandos que funcionam no meu
NO
AT + RESET
AT + VERSION?
AT + NAME?
AT + ADDR? ADDR: 98D3: 31: F5CB41
AT + NAME = BT1 Isso muda o nome para BT1
AT + ROLE? 0 = Escravo 1 = Mestre
Etapa 3: HC06 revisitado
Uma das principais diferenças entre o HC05 e o HC06 é que o HC05 pode ser mestre ou escravo, enquanto o HC06 é apenas escravo. Isso significa que você pode conversar entre um HC05 e um HC06. No entanto, existem muitas outras diferenças.
Embora eu pudesse ter usado um Arduino para configurar meu HC06, optei por usar um 3.3v CP2102. Ver foto
Conexões
CP2102 HC06
Gnd Gnd
Vcc Vcc
TXD RXD
RXD TXD
Este é basicamente o mesmo que o HC05, exceto que meu HC06 tem apenas quatro pinos.
Meu CP2102 foi modificado para fornecer 3,3 V
Meu HC06 foi modificado para aceitar 3,3 V
O CP2102 USB está conectado ao meu PC. No meu PC, estou usando o IDE Arduino.
Selecione a “Porta” correta e abra o Monitor Serial.
No meu HC06, o LED vermelho está piscando rapidamente, o que indica que ele está pronto para emparelhar, mas também pode receber comandos.
Algumas dessas informações vieram de Martyn Currey:
www.martyncurrey.com/arduino-and-hc-06-zs-0…
Portanto, cada tipo de HC06 pode ser diferente, o meu retorna a VERSÃO linvorV1.5
Para meu HC06 (e provavelmente todos eles), não há nenhum procedimento especial para colocá-lo no modo de comando. Aparentemente, se não estiver emparelhado, você sempre pode enviar comandos pela porta serial.
DICA: você não pode enviar comandos para nenhum módulo Bluetooth (que eu conheça) via Bluetooth.
Abra o Monitor Serial
Clique na primeira caixa na parte inferior do Monitor serial e defina como "sem fim de linha"
Inicialmente, minha taxa de transmissão era de 9600 baud
No seu PC, ative o Caps Lock
Na caixa superior digite AT
Digite Enter ou toque no botão “Enviar”
A tela deve exibir OK
DICA: Se você não obtiver um OK, pode ser porque a taxa de transmissão foi alterada ou está diferente. Você pode tentar vários, até que, com sorte, encontre o correto.
NOTA: Enviando vários comandos, os dados de resposta não mudam para a próxima linha. Na parte inferior, você pode clicar em Limpar saída.
Comandos que funcionam para mim:
Resposta de Comando
AT + VERSÃO OKlinvorV1.5
AT + NAMEFred retornaOKsetname
(Não informa o nome, mas se estiver conectado por Bluetooth, ele aparecerá.)
NOTA: se você alterar o nome, o nome antigo será exibido em seu smartphone até que você desemparelhe e volte a emparelhar.
AT + PINxxx Ainda não tentei. O padrão é 1234
AT + BAUD8 altera a taxa de transmissão para 115200
A resposta é a taxa de transmissão, por exemplo 115200
(Depois de alterar a taxa de bauds, você deve alterar a taxa de bauds do Serial Monitor para 115200 para enviar outros comandos.
Opções de taxa de transmissão
1 1200
2 2400
3 4800
4 9600 (padrão)
5 19200
6 38400
7 57600
8 115200
9 230400
A 460800
B 921600
C 1382400
NOTA: Não tentei mais do que 8 115200. Já ouvi falar de pessoas que tentam taxas mais altas com resultados ruins.
Os outros comandos que deveriam funcionar, mas não foram testados:
AT + PN sem verificação de paridade (padrão)
Verificação de paridade ímpar AT + PO
AT + PE mesmo verificação de paridade
IMPORTANTE: neste ponto, eu sugiro que você escolha um nome exclusivo e o insira. Eu também sugiro que você decida a taxa de transmissão que deseja se comunicar, coloque-o e marque seu HC06 com ele.
Etapa 4: Configurando HC05 para HC06
Ok, este Instructable foi muito útil para mim:
www.instructables.com/id/How-to-Configure-…
Minha configuração:
SLAVE encontrando endereço
HC06 com CP2102 (automaticamente em modo de comando)
Conecte o cabo USB CP2102 para alimentar o HC06.
O LED HC06 deve piscar rápido (modo de emparelhamento).
No smartphone, abra as configurações
Vá para Bluetooth
Procure por um novo dispositivo
Se você vir algo como HC06 ou o nome que você deu, selecione isto.
Você provavelmente verá uma sequência de números como 00: 12: 09: 27: 19: 13, provavelmente é isso.
Anote este endereço. (O número é seu endereço único)
Selecione-o
Quando for solicitado um PIN, digite 1234.
O nome deve ser exibido.
Se você ainda não tiver o endereço, em “Dispositivos conectados anteriormente” selecione o nome.
Clique em Informações, o endereço deve ser exibido. Anotá-la.
Se não aparecer, saia da configuração e abra o aplicativo Bluetooth Terminal HC-05.
Em Dispositivos emparelhados, encontre o nome, o endereço deve estar abaixo dele, anote-o.
Configuração de escravo
Se o LED HC06 não estiver piscando, desligue e ligue a alimentação para colocá-lo de volta no modo de emparelhamento.
Inicie o Arduino
Em “Ferramentas” “Porta” Selecione a porta Com correta
Abrir Serial Monitor
Na parte inferior desta janela
Selecione “Sem fim de linha” e “9600 baud”
MESTRE
HC05 com CP2102 definido em modo de comando (EN com jumpers alto)
Conecte o cabo USB do CP2102 ao PC
Eu descobri que posso abrir dois Arduinos
No segundo Arduino, selecione a porta Com correta para HC05
Abrir Serial Monitor
Na parte inferior da janela
Selecione “Ambos NL&CR” e “38400 baud”
O seguinte é do Instructable acima
Configuração Mestre
Os comandos AT necessários para definir a configuração:
RESPOSTA DE COMANDO O que faz
AT + ROLE = 1 OK Definir HC05 como mestre
AT + CMODE = 1 OK Conecte ao endereço específico
NOTA: O endereço HC06 provavelmente está formatado assim 00: 12: 09: 27: 19: 13
O comando BIND espera este 0012, 09, 27193 (você tira os dois-pontos, pega os primeiros quatro números, depois a vírgula, os próximos dois números, depois a vírgula e os últimos seis números)
AT + BIND = 0012, 09, 271913 OK Conecta / liga com HC06
(A propósito, AT + BIND? Responde com + BIND: 12: 9: 271913)
(Você deseja que a velocidade de comunicação do HC05 seja igual à do HC06) por exemplo:
AT + UART = 115200, 0, 0 OK Baud rate 115200 (1º bit superior, sem paridade)
Para testar as comunicações:
Remova o jumper HC05 EN, desligue e ligue.
Quando os dois estiverem conectados, o LED HC05 piscará duas vezes a cada poucos segundos, o LED HC06 permanecerá aceso continuamente.
Defina ambas as portas de comunicação com a mesma taxa de transmissão (seja qual for a configuração)
Defina ambos como “Ambos NL&CR”
Digite algo em Serial Monitor1, Serial Monitor2 deve exibi-lo.
Digite algo em Serial Monitor2, Serial Monitor1 deve exibi-lo.
Parabéns, você está se comunicando via Bluetooth
Agora, o Instructable acima tem alguns esboços de como usar os módulos com o Arduino. Para este Instructable, não vou me aprofundar nisso.
Recomendado:
Como fazer uma antena dupla BiQuade 4G LTE Etapas fáceis: 3 etapas
Como Fazer Antena Dupla BiQuade 4G LTE Etapas fáceis: Na maioria das vezes que enfrentei, não tenho uma boa intensidade de sinal para meus trabalhos do dia-a-dia. Então. Procuro e tento diferentes tipos de antena, mas não funciona. Depois de perder tempo, encontrei uma antena que espero fazer e testar, porque não é um princípio de construção
Design de jogo no Flick em 5 etapas: 5 etapas
Design de jogos no Flick em 5 etapas: o Flick é uma maneira realmente simples de fazer um jogo, especialmente algo como um quebra-cabeça, romance visual ou jogo de aventura
Detecção de rosto no Raspberry Pi 4B em 3 etapas: 3 etapas
Detecção de rosto no Raspberry Pi 4B em 3 etapas: Neste Instructable, vamos realizar a detecção de rosto no Raspberry Pi 4 com Shunya O / S usando a Biblioteca Shunyaface. Shunyaface é uma biblioteca de reconhecimento / detecção de rosto. O projeto visa alcançar a detecção mais rápida e velocidade de reconhecimento com
Espelho de cortesia DIY em etapas fáceis (usando luzes de tira LED): 4 etapas
Espelho de toucador DIY em etapas fáceis (usando tiras de LED): Neste post, fiz um espelho de toucador DIY com a ajuda de tiras de LED. É muito legal e você deve experimentá-los também
OldMan e Bluetooth: 5 etapas
OldMan e Bluetooth: Atualização de abril de 2020, graças a um comentário de um leitor, Krasla, agora sou capaz de entrar no modo de comando com JDY-31. Vou tentar entrar no concurso Sensor. Então, este Lazy Old Geek (LOG) apenas concluiu um projeto GPS: https: //www.instructables.com/id/Old-Ma