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



Teraz jest 12 sty 2026, o 10:48


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 8 ] 
Autor Wiadomość
PostNapisane: 8 lip 2017, o 12:11 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 31 sty 2015
Posty: 182
Pomógł: 0

Witam
Chciałem dopytać jak dokładnie działa kod programu o nazwie "RFM7x_simple_TEST" z ostatniego rozdziału GB ( wydanie II poprawione). Do tej pory zrobiłem sobie proste płyteczki będące przejściówkami z 1.27 mm na 2.54 mm. Moduły RFM73-D podpiąłem do dwóch różnych zestawów uruchomieniowych, na których znajduje się w ATmega16. Na obydwu zestawach wgrałem wsad, o którym piszę powyżej. Sytuacja wygląda tak, że na starcie za pomocą funkcji is_rfm7x_connected sprawdzana jest poprawność podłączenia RFM73-D. Zarówno w jednym jak i w drugim zestawie diody sygnalizujące poprawne podłączenie migają bardzo szybko 20 razy co świadczy o poprawnym podłączeniu modułów. Następnie w w krótkich odstępach czasowych miga już tylko druga dioda zdefiniowana jako TIMEOUT_LED. Dioda mająca sygnalizować przesłanie stringa pozostaje zgaszona. W jednym i drugim zestawie uruchomieniowym wgrany jest wsad, w którym nasłuch dla RFM73-D wykonywany jest na kanale 41 (tutaj nic nie zmieniałem). Na razie jeszcze nie próbowałem podpinać się pod terminal i nasłuchiwać na UARCie bo chciałbym właśnie wiedzieć czy to właśnie tak ma wyglądać, że do dwóch mikrokontrolerów wgrywam dokładnie taki sam wsad i już powinna być poprawna komunikacja (wysyłanie oraz odbieranie)? Jeden i drugi zestaw zasilany jest napięciem 3.3V.
Zaplątałem się już w zasadzie działania tego wsadu i będę bardzo wdzięczny za nakierowanie na właściwe tory.

Pozdrawiam
Maciek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 lip 2017, o 12:17 
Offline
Moderator
Avatar użytkownika

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

to podepnij uart, patrz co się dzieje i sprawdzaj - to jest PODSTAWA działania

_________________
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: 8 lip 2017, o 13:22 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 31 sty 2015
Posty: 182
Pomógł: 0

Zrobiłem takie szybkie testy z UART. Ja widać na załączonym obrazku w pętli while string jest wysyłany jeżeli zmienna can_send ma wartość jeden, a jeżeli ma wartość 0 to to w terminalu wyświetla się napis :""test". Próbę wysyłki po UART umieściłem też w funkcji my_recaive_packet ale nic się nie pokazuje. Na obu zestawach pokazują się dokładnie te same wyniki na terminalu. Jak zwykle pewnie nie dostrzegam czegoś co mam przed oczami dlatego piszę na forum :)
Omyłkowo out_buf umieściłem w cudzysłowach ale bez nich normalnie pokazuje się napis "mirekk36".

Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 lip 2017, o 21:22 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 31 sty 2015
Posty: 182
Pomógł: 0

Zrobiłem jeszcze kilka testów - tym razem uart_puts umieściłem bezpośrednio w pliku rfm7x.c w funkcjach Send_Packet oraz Receive_Packet. Skutek jest taki, że dla wysyłki na terminalu zawsze pokazuje się dwa razy napis "mirekk36" czyli nasz out_buf z pliku main.c a następnie napis "test". Wygląda na to, że wysyłka działa poprawnie. Natomiast dla funkcji odbiorczej na terminalu nie wyświetla się nic czyli podobnie jak już w samym pliku main.c dla funkcji my_recaive_packet co widać też było w screenie, który zamieściłem wcześniej. Przypomnę, że rfm73-D inicjalizują się prawidłowo o czym świadczy szybkie dwudziestokrotne miganie diody. A czy problem może też wynikać z tego, ze zamiast ATmegi32 używam ATmegi16? Wielokrotnie stosowałem je zamiennie do różnych projektów i wszystko działało prawidłowo no ale kto wie :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 8 lip 2017, o 21:43 
Offline
Moderator
Avatar użytkownika

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

Maciek_L napisał(a):
A czy problem może też wynikać z tego, ze zamiast ATmegi32 używam ATmegi16?

To dziwne przypuszczenie - bo poza tym, że procki te różnią się ilością pamięci - to niczym więcej

_________________
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: 8 lip 2017, o 21:54 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 31 sty 2015
Posty: 182
Pomógł: 0

mirekk36 napisał(a):
bo poza tym, że procki te różnią się ilością pamięci - to niczym więcej


Wolałem się upewnić, żeby powoli eliminować przyczyny takiego zachowania. Powiedz mi jeszcze Mirku czy twoja funkcja sprawdzająca poprawność połączeń ( is_rfm7x_connected) pozwala mi całkowicie wykluczyć problemy sprzętowe z RFM73-D i mogę zacząć szukać nieprawidłowości gdzie indziej?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 9 lip 2017, o 10:02 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 31 sty 2015
Posty: 182
Pomógł: 0

Wszystko zadziałało :) Przeanalizowałem to chyba jeszcze 20 razy i okazało się, że wystarczyło zwiększyć wartość zmiennej answer_timeout, która była ustawiona na wartość równą 2. Dla testów ustawiłem ją na wartość 10 (będę teraz sprawdzał jaką w moim przypadku może ona wynieść najmniejszą wartość) i teraz na terminalu pokazuje się ładnie napis, który odbierany jest w funkcji my_recaive_packet. Dziękuję za pomoc :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 9 lip 2017, o 11:13 
Offline
Moderator
Avatar użytkownika

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

no to cieszę się, że poszło bo ja niestety już kilka ładnych lat nic nie robiłem z tymi modułami i tym bardziej nie pamiętam szczegółów GB.

_________________
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  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 8 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 3 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:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO