Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 7 kwi 2026, o 22:58


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 11 ] 
Autor Wiadomość
PostNapisane: 9 cze 2014, o 22:13 
Offline
Nowy

Dołączył(a): 09 cze 2014
Posty: 5
Pomógł: 0

Witam,

Mam problem z modułem Bluetooth HC-05 a mianowicie z komunikacją UART w C. Chciałbym z poziomu telefonu w napisanej samodzielnie prostej aplikacji świecić/gasić diody na płytce z moim uC. Moja przygoda z programowaniem uC niedawno się zaczęła, więc proszę o wyrozumiałość. Czy dysponuje ktoś przykładowym programem z napisaną komunikacją tegoż modułu z uC i mógłby się ze mną podzielić ?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 9 cze 2014, o 23:35 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 20 sie 2013
Posty: 795
Lokalizacja: Poznań
Pomógł: 59

HC-05 po uzyskaniu połączenia (i po skonfigurowaniu na początku, choć nie trzeba) staje się przeźroczysty i przesyła info jak RS232 (UART) do i z mikrokontrolera. Polecam więc bluebooka (nie wiem teraz dokładnie, ale o terminalu i uarcie i na 100% protokół UDP) oraz greenbook - ostatni dział i parsowanie stringów z uarta.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 9 cze 2014, o 23:39 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27450
Lokalizacja: Szczecin
Pomógł: 1045

Dokładnie - najpierw to trzeba zacząć od transmisji po kablu RS232 a jak to pójdzie to tak samo bez żadnych zmian pójdzie po takich blutaczach

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 cze 2014, o 09:02 
Offline
Nowy

Dołączył(a): 09 cze 2014
Posty: 5
Pomógł: 0

Dziękuję za odpowiedzi.

Wzorowałem się na programie z tej strony, z początku udało mi się przesłać znak na smartfona, jednak nie do końca gdyż zamiast znaku pojawił się "diamencik" z pytajnikiem w środku. Dopiero po zmianie częstotliwość F_OSC z 8Mhz na 1Mhz, na smartfonie zaczęły pojawiać się normalne znaki które wysyłałem z uC. Nie udało mi się jednak zaświecić diodami. Dlaczego komunikacja działa w jedną stronę ? Czy ma to związek ze zmianą częstotliwości ? A może trzeba ustawić fusy na 8Mhz lub jakąś inną częstotliwość ?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 cze 2014, o 13:27 
Offline
Użytkownik

Dołączył(a): 19 gru 2012
Posty: 712
Lokalizacja: Opole
Pomógł: 23

Zacznij od ustawienia mikrokontrolera na 8Mhz, po drugie pozbądź się w projekcie tej definicji F_OSC a częstotliwość ustawiaj w opcja projektu o ile korzystasz z Eclipse. A wtedy wklej tu cały swój kod i ew. fotki złożonego układu to coś poradzimy.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 cze 2014, o 17:15 
Offline
Nowy

Dołączył(a): 09 cze 2014
Posty: 5
Pomógł: 0

Korzystam z AVR studio, a układ z którego korzystam to płytka Propoxa EVB-AVR05

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Kody wklejamy przy pomocy syntax=c - Różowo-zielony J.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 10 cze 2014, o 18:11 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 10 mar 2013
Posty: 739
Lokalizacja: Poznań
Pomógł: 84

No ale w AS też się ustawia F_OSC w ustawieniach projektu nie
w pliku, więc ta definicja est zbędna.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 11 cze 2014, o 11:10 
Offline
Nowy

Dołączył(a): 09 cze 2014
Posty: 5
Pomógł: 0

Ustawiłem tę częstotliwość w makefile, usunąłem z pliku jednak nadal komunikacja działa tylko w jedną stronę. Proszę o sugestie co jeszcze może być nie tak



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 11 cze 2014, o 18:44 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 10 mar 2013
Posty: 739
Lokalizacja: Poznań
Pomógł: 84

Więc tak - opiszę jak ja bym zrobił (zresztą zgodnie z tym co Mirek radzi)
transmisja po kabelku ,
wstawił bym w przerwanie odbiorcze "debuder diodowy"
żeby widzieć czy w ogóle masz jakiś odbiór
jeśli byłby odbiór to odsyłam to co odebrałem na terminal lub LCD
żeby zobaczyć co odbieram.
Dopiero jak będzie wszystko OK tak jak się spodziewam dalsze
postępowanie i też po kawałku kodu.
To naprawdę ułatwia pracę.
Na końcu jak wszystko działa dopiero transmisja bezprzewodowa.

Ps.
(Zrobiłbym jeszcze porządek w inicjalizacji UART-a tak jak jest w DS
ale to tylko chyba czysto kosmetycznie i pewnie nie ma wpływu na komunikację )


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 cze 2014, o 13:26 
Offline
Nowy

Dołączył(a): 09 cze 2014
Posty: 5
Pomógł: 0

Dzięki, pomogłeś, udało mi się zrobić komunikację w obie strony. Leci pochwała ;)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 cze 2014, o 18:36 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 10 mar 2013
Posty: 739
Lokalizacja: Poznań
Pomógł: 84

Cieszę się że Ci się udało



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 11 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 6 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
cron
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO