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



Teraz jest 25 kwi 2024, o 10:02


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 9 ] 
Autor Wiadomość
PostNapisane: 6 wrz 2022, o 15:52 
Offline
Użytkownik

Dołączył(a): 25 wrz 2014
Posty: 137
Lokalizacja: Konin/Poznań
Pomógł: 0

Witam,

piszę z pytankiem czy biblioteka p.Mirka dla NRF24L01 zezwala na wysyłanie z odbiornika tzw. ACK Payload'u ? Napisałem sobie dodatkową funkcję:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Ma ona zapisywać do pamięci odbiornika string z payloadem ACK. Teraz pytanie: czy funkcja będzie prawidłowo to robić i odbiornik za każdym razem będzie wysyłał tę wiadomość ? I czy EVENT z przerwaniem od odebrania wiadomości wykryje nadesłanie tego ACK Payloadu, czy trzeba go jakoś dodatkowo zmodyfikować ? Przyznam szczerze, że datasheet za bardzo nie wspomina nic o tym trybie komunikacji (a przynajmniej nie w jasnym dla mnie stopniu), a w sieci brakuje konkretnych przykładów oprócz kodu Arduino z jedną fukcją gdzie nie można zajrzeć co jest w środku :(

Proszę o pomoc i wyrozumiałość :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 wrz 2022, o 16:42 
Offline
Moderator
Avatar użytkownika

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

ja kompletnie nie pamiętam szczegółów ale przytaczasz funkcję która wręcz w nazwie ma ack - a ty pytasz czy można ?

_________________
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: 6 wrz 2022, o 16:51 
Offline
Użytkownik

Dołączył(a): 25 wrz 2014
Posty: 137
Lokalizacja: Konin/Poznań
Pomógł: 0

W bibliotece nie ma tej funkcji :D sam ją napisałem w konwencji "bibliotecznej" co by nie psuć sobie oglądu nazw wszystkich funkcji. Problem w tym, że nie bardzo wiem jak zrealizować wysyłanie ACK Payloadu do transmitera :( Może ktoś z tego korzystał i sprawdzi czy moja funkcja jest prawidłowa i podpowie jak to zrealizować



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 wrz 2022, o 17:12 
Offline
Moderator
Avatar użytkownika

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

No to ja nie wiem za bardzo o co koledze chodzi ? Przecież sam moduł sprzętowo robi nie tylko ack ale i retransmituje pakiety jeśli nie dotrą na drugą stronę, i można konfigurować sobie nawet ilość tych retransmisji - więc czego w ogóle dotyczy pytanie ? to ja nie wiem

------------------------ [ Dodano po: 2 minutach ]

zaglądałeś w ogóle do konfiguracji biblioteki ?

Obrazek

czy ty chcesz przypadkiem robić ręcznie w jakiś dziwny sposób i na piechotę to co już masz zapewnione sprzętowo ?

_________________
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: 6 wrz 2022, o 17:24 
Offline
Użytkownik

Dołączył(a): 25 wrz 2014
Posty: 137
Lokalizacja: Konin/Poznań
Pomógł: 0

Chodzi mi o wysyłanie informacji z odbiornika do nadajnika zawartej w payloadzie ACK. W rejestrze FEATURE jest bit EN_ACK_PAY, którego ustawienie umożliwia takie coś :)
Obrazek

Dokładniej o to chodzi ale nie wiem jak to zrealizować w kodzie:
Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 6 wrz 2022, o 19:11 
Offline
Moderator
Avatar użytkownika

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

tak jak mówiłem nie mam pojęcia po tylu latach od stworzenia biblioteki o szczegółach - jeśli chcesz aż tak głęboko się bawić to życzę miłej zabawy z PDF.

A z drugiej strony do czego ci akurat aż taki mechanizm ?

_________________
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: 6 wrz 2022, o 19:22 
Offline
Użytkownik

Dołączył(a): 25 wrz 2014
Posty: 137
Lokalizacja: Konin/Poznań
Pomógł: 0

Jasne - może ktoś się już tym bawił i podpowie :)

A mechanizm potrzebny w tym celu żeby nie zamieniać ciagle ról nadajnik-odbiornik, a przesyłać krótkie komendy z odbiornika do nadajnika. Nadajnik jest układem pomiarowym, który sypie danymi z dość duża częstotliwością ok. 300 Hz z ramka 20 bajtów. Skoro można zawrzeć jakaś krotka informację w paylodzie ACK np. o zatrzymaniu pomiaru lub zdalnym resecie mikrokontrolera to po co zmieniać role jak można tak zrobić. Chyba ze czegoś nie wiem o bibliotece i można to zrobić w inny sposób, bez straty czasu na swapowanie rolami nadajnik odbiornik.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 wrz 2022, o 12:29 
Offline
Użytkownik

Dołączył(a): 13 lut 2012
Posty: 166
Pomógł: 10

Tak dla pewności to używany jest NRF24L01 czy NRF24L01+ ?


https://blog.csdn.net/JACK__Q/article/details/109294451



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 wrz 2022, o 14:50 
Offline
Użytkownik

Dołączył(a): 25 wrz 2014
Posty: 137
Lokalizacja: Konin/Poznań
Pomógł: 0

Udało się ogarnąć dlaczego ta opcja nie działała :) otóż głupi ja zamiast aktywne przerwanie odczytywać w stanie niskim, odczytywałem w stanie wysokim … lekka zmiana kodu i działa. Funkcja przedstawiona przeze mnie działa - kto chce może sobie ja dopisać do biblioteki (nie obsługuje tylko ustawienia pipe’u ale to proste do dopisania, gdyby ktoś potrzebował mogę podrzucić) :) po wysłaniu wiadomości przez nadajnik, w pakiecie ACK pochodzącym od odbiornika można zapisać dowolna wiadomość, która zostanie odczytana przez nadajnik bez swapowania rolami nadajnik-odbiornik.



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: 9 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 12 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