Spisu treści:
- Krok 1: Ocena/modyfikacja
- Krok 2: Programowanie HC05
- Krok 3: HC06 ponownie
- Krok 4: Konfiguracja HC05 do HC06
Wideo: OldMan i Bluetooth2: 4 kroki
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:27
Więc ten Lazy Old Geek (L. O. G.) w końcu otrzymał moduł Bluetooth HC05 od AliExpress.com. Zamówiłem jeden po napisaniu tej instrukcji:
www.instructables.com/id/OldMan-and-Blueto…
Cóż, spędziłem kilka godzin próbując uruchomić to w trybie poleceń bez powodzenia. Zniszczyłem nawet moduł HC05 (prawdopodobnie stosując złe napięcia), więc musiałem kupić inny.
WSKAZÓWKA: Tryb poleceń komunikuje się z samym modułem HC05 lub HC06. Tryb komunikacji komunikuje się z innym urządzeniem Bluetooth.
To, co znalazłem, to wiele różnic między HC05 a HC06. HC05 może być urządzeniem nadrzędnym lub podrzędnym, HC06 tylko podrzędnym. Zasadniczo pan może rozmawiać z niewolnikiem, dwóch niewolników nie może rozmawiać ze sobą. HC05 i HC06 mają różne polecenia. HC05 musi być skonfigurowany sprzętowo, aby przejść w tryb poleceń, może mieć różne szybkości transmisji dla komunikacji i trybu poleceń.
HC06 jest zawsze w trybie komunikacji i poleceń. Ustawienie szybkości transmisji dla jednego zmieni drugie.
WSKAZÓWKA: Śledź to, ponieważ nie miałem i miałem pewne problemy.
WSKAZÓWKA: Różne HC05 i HC06 mogą różnić się od tych, które otrzymałem.
HCO6 wykonuje polecenia, ale nie zawsze pokazuje zmienione wyniki, np. zmiana imienia.
Krok 1: Ocena/modyfikacja
W załączeniu schemat HC05 podobny do mojego. Dwie różnice, które znam, polegają na tym, że pomiędzy PIO11 (34) a pinem EN znajduje się rezystor 2,2 K, a regulator 3,3 V to pakiet 3 pinów i nie ma pinu CE. Załączony obrazek jest zaznaczonym schematem tego, co myślę, że mam.
Dla celów programowania ważne jest to, że pin 34 Key jest połączony z pinem EN poprzez rezystor 2,2K. (Jest również podłączony do przycisku, druga strona jest podłączona do 3,3V)
Standardowy HC05 wymaga zasilania 5 V, chociaż działa z sygnałami 3,3 V, więc zmodyfikowałem mój HCO5, aby zamiast tego używał 3,3 V. Usunąłem regulator 3,3V i podłączyłem zworkę z pinu VCC bezpośrednio do 3,3V. Jest to pokazane na zmodyfikowanym schemacie i moim zmodyfikowanym obrazku HC05.
Nawiasem mówiąc, załączony zestaw poleceń HC05 Command Set.pdf zawiera cenne informacje na temat korzystania z HC05, niestety nie jest zbyt przyjazny dla użytkownika.
Krok 2: Programowanie HC05
Zdecydowałem, że najłatwiejszym sposobem użycia HC05 jest podłączenie go do jednego z moich adapterów szeregowych CP2102 3.3V, tak jak to zrobiłem w Old Man And Bluetooth Instructable z HC06. Zobacz zdjęcie i schemat.
WAŻNA WSKAZÓWKA: Aby zasilić HC05 w trybie poleceń, pin PIO11 (34) musi być w stanie wysokim przed podaniem 3,3 V. Pin EN w moim HC05 jest podłączony do PIO11 przez rezystor 2,2K, więc wystarczy go powiązać z 3,3V. Schemat pokazuje to jako piny programu, ale po prostu umieść zworkę z 3,3 V na pin EN. Upewnij się, że robisz to, zanim zastosujesz moc. Na moim możesz stwierdzić, czy jesteś w trybie poleceń, ponieważ dioda LED HC05 będzie powoli migać. Jeśli miga szybko, jesteś w trybie parowania i musisz spróbować ponownie.
WSKAZÓWKA: HC05 w trybie poleceń zawsze rozmawia z prędkością 38400 bodów. Wszystkie polecenia są pisane wielkimi literami i muszą być poprzedzone CR i LF. (Inaczej niż w HC06)
WSKAZÓWKA: Format poleceń jest bardzo ścisły. Zawsze używaj czapek. Wszystkie zaczynają się od „AT” Podążaj za nimi dokładnie, nie możesz dodawać spacji, w których nie są pokazane.
Uruchom Arduino. Przejdź do „Narzędzia” „Port” i wybierz port Com, do którego podłączony jest CP2102.
Otwórz monitor szeregowy. W dolnej części tego okna wybierz „Zarówno NL, jak i CR” i „38400 bodów”. (NL oznacza nową linię, która jest taka sama jak LF, która jest wysuwem linii).
Na górze znajduje się pole obok przycisku Wyślij, kliknij w nim.
Na komputerze włącz Caps Lock
Wpisz AT
W dużym oknie powinno pojawić się „OK”.
Komunikujesz się w trybie poleceń
Niektóre polecenia, które działają na moje
W
AT+RESET
W WERSJI+?
AT+NAZWA?
AT+ADDR? ADDR:98D3:31:F5CB41
AT+NAME=BT1 Zmienia nazwę na BT1
AT+ROLA? 0 = Slave 1 = Master
Krok 3: HC06 ponownie
Jedną z głównych różnic pomiędzy HC05 i HC06 jest to, że HC05 może być nadrzędnym lub podrzędnym, podczas gdy HC06 jest tylko podrzędnym. Oznacza to, że możesz rozmawiać między HC05 i HC06. Istnieje jednak wiele innych różnic.
Chociaż mogłem użyć Arduino do skonfigurowania mojego HC06, zdecydowałem się użyć 3.3v CP2102. Widzieć zdjęcie
Znajomości
CP2102 HC06
Gnd Gnd
Vcc Vcc
TXD RXD
RXD TXD
Jest to w zasadzie to samo co HC05, z wyjątkiem tego, że mój HC06 ma tylko cztery piny.
Mój CP2102 został zmodyfikowany tak, aby dostarczał 3,3 V
Mój HC06 został zmodyfikowany, aby zaakceptować 3,3 V
CP2102 USB jest podłączony do mojego komputera. Na moim komputerze używam Arduino IDE.
Wybierz właściwy „Port” i otwórz Monitor szeregowy.
W moim HC06 czerwona dioda LED szybko miga, co wskazuje, że jest gotowa do sparowania, ale może również odbierać polecenia.
Niektóre z tych informacji pochodzą od Martyna Curreya:
www.martyncurrey.com/arduino-and-hc-06-zs-0…
Więc każdy typ HC06 może być inny, mój zwraca WERSJĘ linvorV1.5
W przypadku mojego HC06 (i prawdopodobnie wszystkich) nie ma specjalnej procedury, aby wprowadzić go w tryb poleceń. Najwyraźniej jeśli nie jest sparowany, zawsze możesz wysyłać polecenia przez port szeregowy.
WSKAZÓWKA: nie możesz wysyłać poleceń do żadnego modułu Bluetooth (o którym wiem) przez Bluetooth.
Otwórz monitor szeregowy
Kliknij pierwsze pole na dole monitora szeregowego i ustaw na „bez końca linii”
Początkowo moja szybkość transmisji wynosiła 9600 bodów
Na komputerze włącz Caps Lock
W górnym pudełku wpisz AT
Wpisz Enter lub naciśnij przycisk „Wyślij”
Na ekranie powinien pojawić się komunikat OK
WSKAZÓWKA: Jeśli nie otrzymasz OK, może to być spowodowane zmianą szybkości transmisji lub inną. Możesz wypróbować różne, aż miejmy nadzieję, że znajdziesz właściwy.
UWAGA: Wysyłając wiele poleceń, dane odpowiedzi nie przesuwają się do następnej linii. Na dole możesz kliknąć Wyczyść wyjście.
Polecenia, które działają dla mnie:
Polecenie Odpowiedź
AT+WERSJA OKlinvorV1.5
AT+NAMEFred zwraca OKsetname
(Nie podaje nazwy, ale jeśli jest połączony przez Bluetooth, pojawi się.)
UWAGA: jeśli zmienisz nazwę, stara nazwa będzie widoczna na smartfonie do czasu rozparowania i ponownego sparowania.
AT+PINxxx Nie próbowałem. Wartość domyślna to 1234
AT+BAUD8 Zmienia szybkość transmisji do 115200
Odpowiedzią jest szybkość transmisji, m.in. 115200
(Po zmianie szybkości transmisji należy zmienić szybkość transmisji Serial Monitor na 115200, aby wysyłać dalsze polecenia.
Opcje szybkości transmisji
1 1200
2 2400
3 4800
4 9600 (domyślnie)
5 19200
6 38400
7 57600
8 115200
9 230400
460800
921600
C 1382400
UWAGA: nie próbowałem wyższych niż 8 115200. Słyszałem o ludziach próbujących wyższych stawek ze złymi wynikami.
Inne polecenia, które mają działać, ale nie zostały przetestowane:
AT+PN bez kontroli parzystości (domyślnie)
Kontrola nieparzystości AT+PO
AT+PE nawet kontrola parzystości
WAŻNE: W tym momencie sugerowałbym, abyś zdecydował się na unikalną nazwę i nadał ją. Sugerowałbym również, abyś zdecydował się na szybkość transmisji, z jaką chcesz się komunikować, włóż ją i oznacz nią swój HC06.
Krok 4: Konfiguracja HC05 do HC06
Ok, ten Instruktaż był dla mnie najbardziej pomocny:
www.instructables.com/id/How-to-Configure-…
Moja konfiguracja:
SLAVE znajduje adres
HC06 z CP2102 (automatycznie w trybie poleceń)
Podłącz kabel USB CP2102 do zasilania HC06.
Dioda HC06 powinna szybko migać (tryb parowania).
Na smartfonie otwórz ustawienia
Przejdź do Bluetooth
Wyszukaj nowe urządzenie
Jeśli widzisz coś takiego jak HC06 lub nazwę, którą mu nadałeś, wybierz to.
Najprawdopodobniej zobaczysz ciąg liczb, taki jak 00:12:09:27:19:13, to prawdopodobnie to.
Zapisz ten adres. (Numer jest jego unikalnym adresem)
Wybierz to
Gdy zostaniesz poproszony o pinezkę, wpisz 1234.
Nazwa powinna zostać wyświetlona.
Jeśli nadal nie masz adresu, w sekcji „Wcześniej połączone urządzenia” wybierz nazwę.
Kliknij Informacje, powinien zostać wyświetlony adres. Zapisz to.
Jeśli się nie pojawi, wyjdź z konfiguracji i otwórz aplikację Bluetooth Terminal HC-05.
W sekcji Paired Devices znajdź nazwę, adres powinien znajdować się pod nią, zapisz ją.
Konfiguracja urządzenia podrzędnego
Jeśli dioda LED HC06 nie miga, wyłącz i włącz zasilanie, aby powrócić do trybu parowania.
Uruchom Arduino
W “Narzędzia” “Port” Wybierz właściwy port Com
Otwórz monitor szeregowy
Na dole tego okna
Wybierz „Bez końca linii” i „9600 bodów”
GOSPODARZ
HC05 z CP2102 ustawionym w trybie poleceń (zworka EN wysoka)
Podłącz kabel USB z CP2102 do komputera
Dowiedziałem się, że mogę otworzyć dwa Arduino
Na drugim Arduino wybierz odpowiedni port Com dla HC05
Otwórz monitor szeregowy
Na dole okna
Wybierz „Zarówno NL i CR” oraz „38400 bodów”
Następujące pochodzi z powyższej instrukcji!
Konfiguracja główna
Wymagane komendy AT do ustawienia konfiguracji:
ODPOWIEDŹ NA POLECENIE Co robi
AT+ROLE=1 OK Ustaw HC05 jako nadrzędny
AT+CMODE=1 OK Połącz z określonym adresem
UWAGA: Adres HC06 jest prawdopodobnie sformatowany w ten sposób 00:12:09:27:19:13
Polecenie BIND oczekuje tego 0012, 09, 27193 (wyjmujesz dwukropki, bierzesz pierwsze cztery liczby, potem przecinek, następne dwie liczby, potem przecinek, potem ostatnie sześć liczb)
AT+BIND=0012, 09, 271913 OK Łączy/wiąże z HC06
(Przy okazji AT+BIND? odpowiada +BIND:12:9:271913)
(Chcesz, aby prędkość komunikacji HC05 była taka sama jak HC06) na przykład:
AT+UART=115200, 0, 0 OK Szybkość transmisji 115200 (1 bit stopu, bez parzystości)
Aby przetestować komunikację:
Usuń zworkę HC05 EN, wyłącz i włącz.
Gdy oba są połączone, dioda HC05 będzie migać dwa razy co kilka sekund, dioda HC06 będzie świecić w sposób ciągły.
Ustaw oba porty com na tę samą szybkość transmisji (cokolwiek ustawisz)
Ustaw oba na „Oboje NL i CR”
Wpisz coś na Serial Monitor1, Serial Monitor2 powinien to wyświetlić.
Wpisz coś na Serial Monitor2, Serial Monitor1 powinien to wyświetlić.
Gratulacje, komunikujesz się przez Bluetooth
Teraz powyższy Instructable zawiera kilka szkiców dotyczących korzystania z modułów z Arduino. W przypadku tego Instructable nie będę się w to zagłębiać.
Zalecana:
Pierwsze kroki z IDE STM32f767zi Cube i prześlij własny szkic: 3 kroki
Rozpoczęcie pracy z IDE STM32f767zi i przesłanie własnego szkicu: KUP (kliknij test, aby kupić/odwiedzić stronę internetową) OPROGRAMOWANIE STM32F767Z WSPIERANE· IDE STM32CUBE· KEIL MDK ARM µVISION· EWARM IAR EMBEDDED WORKBENCH· Dostępne różne oprogramowanie ARDUINO służy do programowania mikrokontrolerów STM
Jak zrobić podwójną antenę 4G LTE BiQuade Proste kroki: 3 kroki
Jak zrobić podwójną antenę 4G LTE BiQuade Proste kroki: W większości przypadków nie mam dobrej siły sygnału w mojej codziennej pracy. Więc. Szukam i próbuję różnych typów anten, ale nie działa. Po zmarnowanym czasie znalazłem antenę, którą mam nadzieję zrobić i przetestować, bo to zasada budowy nie
OldMan i Bluetooth: 5 kroków
OldMan i Bluetooth: aktualizacja z kwietnia 2020 r. Dzięki komentarzowi czytelnika, Krasli, mogę teraz przejść do trybu poleceń za pomocą JDY-31s.Zamierzam wziąć udział w konkursie Sensor.Tak więc ten Lazy Old Geek (LOG) właśnie ukończył projekt GPS: https://www.instructables.com/id/Old-Ma
Strumieniowanie wideo na żywo 4G/5G HD z drona DJI z małym opóźnieniem [3 kroki]: 3 kroki
Strumieniowanie wideo na żywo 4G/5G HD z drona DJI z małym opóźnieniem [3 kroki]: Poniższy przewodnik pomoże Ci uzyskać strumienie wideo na żywo w jakości HD z prawie każdego drona DJI. Za pomocą aplikacji mobilnej FlytOS i aplikacji internetowej FlytNow możesz rozpocząć przesyłanie strumieniowe wideo z drona
Pierwsze kroki z automatyką domową: Instalacja Home Assistant: 3 kroki
Rozpoczęcie pracy z automatyką domową: instalacja asystenta domowego: teraz rozpoczniemy serię automatyki domowej, w której stworzymy inteligentny dom, który pozwoli nam kontrolować takie rzeczy, jak światła, głośniki, czujniki itp., Za pomocą centralnego koncentratora wraz z asystent głosowy. W tym poście dowiemy się, jak ins