Szanowni koledzy, napotkałem problem którego nie potrafię rozgryźć, może któryś z bardziej doświadczonych programistów podpowie jak można rozwiązać problem ? Będę bardzo wdzięczny za wszelkie sugestie. Dziś bez prezentacji kodu, bo chciałbym zapytać o samą ideę interpretacji danych odbiorczych i jak to "przetworzyć".
W wyświetlaczu Nextion mam zapamiętywane kilka adresów MAC modułów ESP12 które mają być odpytywane i sterowane poprzez nodeMCU (bezprzewodowo, protokół espNOW) za pośrednictwem prostego GUI tego podłączonego wyświetlacza. Wygodnie i szybko z Nextionem.
Wyświetlacz umożliwia łatwe wprowadzanie i zapamiętywanie adresów MAC poszczególnych modułów, więc jest to wygodne aby różne MAC-adresy współpracujących modułów tam właśnie wpisywać i zapamiętywać. Każdorazowa operacja sterowania lub odpytania modułu ESP12 powoduje że Nextion wypluwa poprzez UART ten wprowadzony i zapamiętany wcześniej przez użytkownika adres MAC, i rozkaz (czyli "co robimy z modułem podrzędnym, o danym adresie MAC"). No niby pięknie.
Nextion działa jak należy, ale wypluwa z siebie dane "znak po znaku" , czyli mając MAC-Adres np. 52.04.34.AB.BC.46 - Nextion śle przez UART te dane poprawnie...ale znak po znaku ("5" , "2" , "." , "0" , "4" , "." , "3" , "4" , "." , "A" , "B" itd). Traci się zatem wartość liczbowa tak przesyłanych znaków. Nie znajduję polecenia w spisie rozkazów w samym Nextion aby inaczej coś przesłać z pamięci EEPROM (w której przechowuję te MAC-Adresy) jak tylko jako dane RAW od adresu początkowego, cięgiem jedna wartość po drugiej. Niestety. A w NodeMCU muszę z powrotem z tego poskładać poprawny adres MAC modułu. Funkcja atoi odpada , bo nie przetworzy ze stringa nic co nie jest z zakresu liczbowego. Gdy próbuję wrzucić odbierane dane w tablicę to także źle, bo program także jako takie osobne znaki char te dane wrzuca w kolejne adresy w tablicy , i też nie umiem tego poskładać potem w poprawny MAC-Adres. Możliwości pisania kodu w samym edytorze Nextion są dość mocno okrojone, więc wolałbym tego kolegę już w spokoju zostawić, chyba że jest jakiś łatwy sposób na zmianę tego co on wysyła jako ten adres MAC.
Czy zna ktoś z szanownych kolegów jakieś sposoby aby poskładać z takich danych poprawny MAC-Adres, czyli zarówno liczby jak i litery ?
W wyświetlaczu Nextion mam zapamiętywane kilka adresów MAC modułów ESP12 które mają być odpytywane i sterowane poprzez nodeMCU (bezprzewodowo, protokół espNOW) za pośrednictwem prostego GUI tego podłączonego wyświetlacza. Wygodnie i szybko z Nextionem.
Wyświetlacz umożliwia łatwe wprowadzanie i zapamiętywanie adresów MAC poszczególnych modułów, więc jest to wygodne aby różne MAC-adresy współpracujących modułów tam właśnie wpisywać i zapamiętywać. Każdorazowa operacja sterowania lub odpytania modułu ESP12 powoduje że Nextion wypluwa poprzez UART ten wprowadzony i zapamiętany wcześniej przez użytkownika adres MAC, i rozkaz (czyli "co robimy z modułem podrzędnym, o danym adresie MAC"). No niby pięknie.
Nextion działa jak należy, ale wypluwa z siebie dane "znak po znaku" , czyli mając MAC-Adres np. 52.04.34.AB.BC.46 - Nextion śle przez UART te dane poprawnie...ale znak po znaku ("5" , "2" , "." , "0" , "4" , "." , "3" , "4" , "." , "A" , "B" itd). Traci się zatem wartość liczbowa tak przesyłanych znaków. Nie znajduję polecenia w spisie rozkazów w samym Nextion aby inaczej coś przesłać z pamięci EEPROM (w której przechowuję te MAC-Adresy) jak tylko jako dane RAW od adresu początkowego, cięgiem jedna wartość po drugiej. Niestety. A w NodeMCU muszę z powrotem z tego poskładać poprawny adres MAC modułu. Funkcja atoi odpada , bo nie przetworzy ze stringa nic co nie jest z zakresu liczbowego. Gdy próbuję wrzucić odbierane dane w tablicę to także źle, bo program także jako takie osobne znaki char te dane wrzuca w kolejne adresy w tablicy , i też nie umiem tego poskładać potem w poprawny MAC-Adres. Możliwości pisania kodu w samym edytorze Nextion są dość mocno okrojone, więc wolałbym tego kolegę już w spokoju zostawić, chyba że jest jakiś łatwy sposób na zmianę tego co on wysyła jako ten adres MAC.
Czy zna ktoś z szanownych kolegów jakieś sposoby aby poskładać z takich danych poprawny MAC-Adres, czyli zarówno liczby jak i litery ?