Sommario:
- Passaggio 1: valutazione/modifica
- Fase 2: Programmazione dell'HC05
- Passaggio 3: HC06 rivisitato
- Passaggio 4: configurazione da HC05 a HC06
Video: OldMan e Bluetooth2: 4 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:00
Quindi questo Lazy Old Geek (L. O. G.) ha finalmente ottenuto un modulo Bluetooth HC05 da AliExpress.com. Ne ho ordinato uno dopo aver scritto questo Instructable:
www.instructables.com/id/OldMan-and-Blueto…
Bene, ho passato diverse ore a cercare di farlo funzionare in modalità di comando senza successo. Ho persino distrutto un modulo HC05 (probabilmente applicando tensioni sbagliate) quindi ho dovuto comprarne un altro.
SUGGERIMENTO: la modalità di comando sta parlando con il modulo HC05 o HC06 stesso. La modalità di comunicazione sta parlando con un altro dispositivo Bluetooth.
Quello che ho trovato sono molte differenze tra HC05 e HC06. L'HC05 può essere master o slave, l'HC06 è solo slave. Fondamentalmente, un master può parlare con uno slave, due slave non possono parlare tra loro. L'HC05 e l'HC06 hanno comandi diversi. L'HC05 deve essere configurato hardware per entrare in modalità di comando, può avere baud rate differenti per la comunicazione e la modalità di comando.
L'HC06 è sempre in modalità di comunicazione e comando. L'impostazione della velocità di trasmissione per uno cambierà l'altro.
SUGGERIMENTO: tieni traccia di questo perché non l'ho fatto e ho avuto alcuni problemi.
SUGGERIMENTO: HC05 e HC06 diversi potrebbero essere diversi da quelli che ho ricevuto.
L'HCO6 eseguirà i comandi, ma non sempre mostra i risultati modificati, ad es. cambio di nome.
Passaggio 1: valutazione/modifica
In allegato c'è uno schema HC05 simile al mio. Due differenze che conosco sono che c'è un resistore da 2,2 K tra PIO11 (34) e il pin EN e il regolatore da 3,3 V è un pacchetto a 3 pin e non ha un pin CE. L'immagine allegata è uno schema marcato di quello che penso di avere.
Ai fini della programmazione, l'importante è che il pin 34 Key sia collegato al pin EN tramite un resistore da 2,2K. (È anche collegato al pulsante, l'altro lato è collegato a 3,3 V)
L'HC05 di serie richiede un'alimentazione di 5 V sebbene funzioni con segnali a 3,3 V, quindi ho modificato il mio HCO5 per utilizzare invece 3,3 V. Ho rimosso il regolatore da 3,3 V e ho eseguito un ponticello dal pin VCC direttamente a 3,3 V. Questo è mostrato sullo schema modificato e sulla mia immagine HC05 modificata.
A proposito, l'allegato HC05 Command Set.pdf contiene alcune preziose informazioni sull'utilizzo dell'HC05, purtroppo non è molto intuitivo.
Fase 2: Programmazione dell'HC05
Ho deciso che il modo più semplice per utilizzare l'HC05 era collegarlo a uno dei miei adattatori seriali CP2102 da 3,3 V come ho fatto in Old Man And Bluetooth Instructable con un HC06. Vedi immagine e schema.
SUGGERIMENTO IMPORTANTE: per alimentare l'HC05 in modalità comando, il pin PIO11 (34) deve essere alto prima di applicare 3,3 V. Il pin EN del mio HC05 è collegato a PIO11 tramite un resistore da 2,2 K, quindi deve solo essere collegato a 3,3 V. Lo schema mostra questo come i pin del programma, ma basta posizionare un ponticello da 3,3 V al pin EN. Assicurati di farlo prima di applicare il potere. Sul mio, puoi dire se sei in modalità di comando perché il LED HC05 lampeggerà lentamente. Se lampeggia velocemente, sei in modalità di associazione e devi riprovare.
SUGGERIMENTO: l'HC05 in modalità di comando parla sempre a 38400 baud rate. Tutti i comandi sono in maiuscolo e devono essere seguiti da CR e LF. (Questo è diverso dall'HC06)
SUGGERIMENTO: il formato del comando è molto rigido. Usa sempre i cappucci. Iniziano tutti con "AT" Seguili esattamente, non puoi aggiungere spazi dove non sono mostrati.
Avvia Arduino. Andare su "Strumenti" "Porta" e selezionare la porta Com a cui è collegato il CP2102.
Apri il monitor seriale. Nella parte inferiore di quella finestra, seleziona "Both NL and CR" e "38400 baud". (NL sta per New Line che è lo stesso di LF che è Line Feed).
Verso l'alto, c'è una casella accanto al pulsante Invia, fai clic su di essa.
Sul tuo PC attiva Blocco maiuscole
Tipo AT
La finestra grande dovrebbe visualizzare "OK".
Stai comunicando in modalità di comando
Alcuni comandi che funzionano sul mio
A
AT+RESET
AT+VERSIONE?
AT+NOME?
AT+ADDR? ADDR:98D3:31:F5CB41
AT+NAME=BT1 Questo cambia il nome in BT1
AT+RUOLO? 0 = Slave 1=Master
Passaggio 3: HC06 rivisitato
Una delle principali differenze tra l'HC05 e l'HC06 è che l'HC05 può essere master o slave mentre l'HC06 è solo slave. Ciò significa che puoi parlare tra un HC05 e un HC06. Tuttavia ci sono molte altre differenze.
Anche se avrei potuto usare un Arduino per configurare il mio HC06, ho scelto di utilizzare un CP2102 3.3v. Guarda l'immagine
Connessioni
CP2102 HC06
Gnd Gnd
Vcc Vcc
TXD RXD
RXD TXD
Questo è fondamentalmente lo stesso dell'HC05, tranne che il mio HC06 ha solo quattro pin.
Il mio CP2102 è stato modificato per fornire 3.3V
Il mio HC06 è stato modificato per accettare 3.3V
L'USB CP2102 è collegato al mio PC. Sul mio PC sto usando l'IDE Arduino.
Seleziona la "Porta" corretta e apri il monitor seriale.
Sul mio HC06, il LED rosso lampeggia velocemente, il che indica che è pronto per l'accoppiamento ma può anche ricevere comandi.
Alcune di queste informazioni provengono da Martyn Currey:
www.martyncurrey.com/arduino-and-hc-06-zs-0…
Quindi ogni tipo di HC06 può essere diverso, il mio restituisce la VERSIONE linvorV1.5
Per il mio HC06 (e probabilmente tutti), non esiste una procedura speciale per farlo entrare in modalità comando. Apparentemente se non è abbinato, puoi sempre inviare comandi tramite la porta seriale.
SUGGERIMENTO: non puoi inviare comandi a nessun modulo Bluetooth (che io conosca) tramite Bluetooth.
Apri il monitor seriale
Fare clic sulla prima casella in fondo a Serial Monitor e impostare su "nessuna fine di riga"
Inizialmente, la mia velocità di trasmissione era di 9600 baud
Sul tuo PC imposta Blocco maiuscole su
Nel bauletto tipo AT
Digita Invio o tocca il pulsante "Invia"
Lo schermo dovrebbe visualizzare OK
SUGGERIMENTO: Se non ottieni un OK, potrebbe essere perché la velocità di trasmissione è stata modificata o è diversa. Puoi provarne vari, finché, si spera, non trovi quello corretto.
NOTA: inviando più comandi, i dati di risposta non si spostano alla riga successiva. Verso il basso, puoi fare clic su Cancella output.
Comandi che funzionano per me:
Comando Risposta
AT+VERSIONE OKlinvorV1.5
AT+NAMEFred restituisceOKsetname
(Non ti dice il nome ma se connesso tramite Bluetooth, apparirà.)
NOTA: se cambi il nome, il vecchio nome verrà visualizzato sul tuo smartphone fino a quando non disassoci e riassoci.
AT+PINxxx Non l'ho provato. Il valore predefinito è 1234
AT+BAUD8 Modifica la velocità di trasmissione in 115200
La risposta è la velocità di trasmissione, ad es. 115200
(Dopo aver modificato la velocità di trasmissione, è necessario modificare la velocità di trasmissione del monitor seriale su 115200 per inviare ulteriori comandi.
Opzioni di velocità in baud
1 1200
2 2400
3 4800
4 9600 (predefinito)
5 19200
6 38400
7 57600
8 115200
9 230400
A 460800
B921600
C 1382400
NOTA: non ho provato più di 8 115200. Ho sentito di persone che provano tariffe più alte con risultati scadenti.
Gli altri comandi che dovrebbero funzionare ma non testati:
AT+PN nessun controllo di parità (predefinito)
Controllo parità dispari AT+PO
Controllo di parità pari AT+PE
IMPORTANTE: A questo punto, ti suggerirei di decidere un nome univoco e di inserirlo. Ti suggerirei anche di decidere il baud rate con cui vuoi comunicare, inserirlo e contrassegnarlo con il tuo HC06.
Passaggio 4: configurazione da HC05 a HC06
Ok, questo Instructable mi è stato molto utile:
www.instructables.com/id/How-to-Configure-…
La mia configurazione:
SLAVE trova indirizzo
HC06 con CP2102 (automaticamente in modalità comando)
Collegare il cavo USB CP2102 per alimentare l'HC06.
Il LED HC06 dovrebbe lampeggiare velocemente (modalità di associazione).
Sul tuo smartphone, apri le impostazioni
Vai a Bluetooth
Cerca nuovo dispositivo
Se vedi qualcosa come HC06 o il nome che gli hai dato, seleziona questo.
Molto probabilmente vedrai una stringa di numeri come 00:12:09:27:19:13, probabilmente è così.
Scrivi questo indirizzo. (Il numero è il suo indirizzo univoco)
Selezionalo
Quando ti viene chiesto un Pin, digita 1234.
Il nome dovrebbe essere visualizzato.
Se ancora non disponi dell'indirizzo, in “Dispositivi collegati in precedenza” seleziona il nome.
Fare clic su Informazioni, l'indirizzo dovrebbe essere visualizzato. Scrivilo.
Se non viene visualizzato, esci dalla configurazione e apri l'app Bluetooth Terminal HC-05.
In Dispositivi associati, trova il nome, l'indirizzo dovrebbe essere sotto di esso, annotalo.
Configurazione slave
Se il LED HC06 non lampeggia, spegnere e riaccendere per riportarlo in modalità di associazione.
Avvia Arduino
In "Strumenti" "Porta" selezionare la porta Com corretta
Apri monitor seriale
In fondo a questa finestra
Seleziona "Nessuna fine di riga" e "9600 baud"
MAESTRO
HC05 con CP2102 impostato in modalità comando (ponticello EN alto)
Collegare il cavo USB dal CP2102 al PC
Ho scoperto di poter aprire due Arduino
Sul secondo Arduino, seleziona la porta Com corretta per HC05
Apri monitor seriale
In fondo alla finestra
Seleziona “Entrambi NL&CR” e “38400 baud”
Quanto segue è dal precedente Instructable
Configurazione principale
I comandi AT richiesti per impostare la configurazione:
COMANDO RISPOSTA Cosa fa
AT+RUOLO=1 OK Imposta HC05 come master
AT+CMODE=1 OK Connetti a un indirizzo specifico
NOTA: l'indirizzo HC06 è probabilmente formattato in questo modo 00:12:09:27:19:13
Il comando BIND si aspetta questo 0012, 09, 27193 (togli i due punti, prendi i primi quattro numeri, poi la virgola, i due numeri successivi, poi la virgola, quindi gli ultimi sei numeri)
AT+BIND=0012, 09, 271913 OK Collega/si collega con HC06
(A proposito AT+BIND? risponde con +BIND:12:9:271913)
(Si desidera che la velocità di comunicazione dell'HC05 sia la stessa dell'HC06), ad esempio:
AT+UART=115200, 0, 0 OK Baud rate 115200 (1 bit di stop, nessuna parità)
Per testare le comunicazioni:
Rimuovere il ponticello HC05 EN, spegnere e riaccendere.
Quando i due sono collegati, il LED HC05 lampeggerà due volte ogni pochi secondi, il LED HC06 rimarrà acceso fisso.
Imposta entrambe le porte COM alla stessa velocità di trasmissione (qualunque cosa tu configuri)
Imposta entrambi su "Entrambi NL e CR"
Digita qualcosa su Serial Monitor1, Serial Monitor2 dovrebbe visualizzarlo.
Digitare qualcosa su Serial Monitor2, Serial Monitor1 dovrebbe visualizzarlo.
Congratulazioni, stai comunicando tramite Bluetooth
Ora il precedente Instructable ha alcuni schizzi su come utilizzare i moduli con Arduino. Per questo Instructable, non approfondirò questo aspetto.
Consigliato:
Come realizzare un'antenna doppia biQuade 4G LTE Semplici passaggi: 3 passaggi
Come realizzare un'antenna doppia biQuade 4G LTE Semplici passaggi: La maggior parte delle volte che ho affrontato, non ho una buona potenza del segnale per i miei lavori quotidiani. Così. Cerco e provo diversi tipi di antenna ma non funziona. Dopo aver perso tempo ho trovato un'antenna che spero di realizzare e testare, perché è principio costruttivo non
Rilevamento del volto su Raspberry Pi 4B in 3 passaggi: 3 passaggi
Rilevamento del volto su Raspberry Pi 4B in 3 passaggi: In questo Instructable eseguiremo il rilevamento del volto su Raspberry Pi 4 con Shunya O/S utilizzando la libreria Shunyaface. Shunyaface è una libreria di riconoscimento/rilevamento facciale. Il progetto mira a raggiungere la massima velocità di rilevamento e riconoscimento con
Specchio per il trucco fai-da-te in semplici passaggi (usando le strisce luminose a LED): 4 passaggi
Specchio per il trucco fai-da-te in semplici passaggi (usando le strisce luminose a LED): in questo post, ho realizzato uno specchio per il trucco fai-da-te con l'aiuto delle strisce LED. Sono davvero fantastici e devi provarli anche tu
Gioca a Doom sul tuo iPod in 5 semplici passaggi!: 5 passaggi
Gioca a Doom sul tuo iPod in 5 semplici passaggi!: una guida passo passo su come eseguire il dual-boot di Rockbox sul tuo iPod per giocare a Doom e a dozzine di altri giochi. È qualcosa di veramente facile da fare, ma molte persone rimangono stupite quando mi vedono giocare a doom sul mio iPod e si confondono con le istruzioni
OldMan e Bluetooth: 5 passaggi
OldMan e Bluetooth: aggiornamento di aprile 2020, grazie a un commento di un lettore, Krasla, ora sono in grado di entrare in modalità di comando con JDY-31. Proverò a partecipare al concorso Sensor. Quindi questo Lazy Old Geek (LOG) è appena completato un progetto GPS: https://www.instructables.com/id/Old-Ma