openlog - Wersja do druku +- HomeMade (http://sp-hm.pl) +-- Dział: Oprogramowanie (/forum-84.html) +--- Dział: Technika programowania mikroprocesorów (/forum-85.html) +--- Wątek: openlog (/thread-4183.html) Strony: 1 2 |
openlog - SQ4AVS - 16-11-2021 17:32 Może ktoś z Kolegów spotkał się z problemem złego zapisywania przez openlog danych, oczywiste rzeczy wykluczam, zła prędkość, bity stopu, parzystość. Podsłuch transmisji pokazuje że wszystko jest ok. Wychodzi bezkształtna masa znaków, przykład w załączniku[attachment=17470] RE: openlog - SQ8MVY - 17-11-2021 19:15 Witam, Za mało informacji podałeś. Nie przedstawiłeś, co jest w strumieniu wejściowym do zapisania. Co to pliku, który wystawiłeś. Jest jak najbardziej poprawny. Plik config.txt jest zapisywany na karcie przez firmware openlog-a i zawiera aktualne ustawienia openlog-a zapisane w eeprom. Format tego pliku narzucony jest przez składnie w liniach 1119 do 1148 kodu źródłowego pełnego openlog-a ( funkcja RecordConfigFile(void)). Są trzy wersje kodu, różniące się ilością fjuczerów wbudowanych. Skoro ten plik powstaje na karcie, to świadczyć może o tym, że openlog jest przełączany w stan komend, a strumień, który do niego leci wywołuje zapis tego pliku na kartę. Polecam zapoznać się z dokumentacją oraz/lub/i pobieżnie z kodem źródłowym ( dla własnej ciekawości ) Strona projektu, jak zwykle na github: OpenLog firmware ---------------------------- Ach przpraszam Rafale, na telefonie nie zauważyłem drugiego pliku z zawartością w Twoim poście. Zawartość pliku z zapisanym logiem wygląda jak niezgodność w baudrate. Podepnij OpenLog-a do komputera przez adapter USB <-> UART i pod terminalem ( putty, minicom, gtkterm lub inny ) sprawdź, czy poprawnie się on zgłasza na tej ustawionej prędkości 9600 baud. -------------------- Złożyłem na szybko z ciekawości OpenLoga na arduino NANO z podpiętym adapterem kart microSD. Wsad w wersji v4.3 - najnowszy z zeszłego miesiąca. Wszystko działa od ręki: Prędkość defaultowa 9600 8n1, karta uSD - pojemność 32GB, logowanie danych: słowa wprowadzane z klawiatury w terminalu na komputerze, OpenLog podpięty przez USB <-> UART Wynik na zdjęciu w załączniku: [attachment=17474] ---------------- Jedyna istotna różnica w konfiguracji u Ciebie, to znak "escape", który przełącza OpenLog-a z trybu logowania do trybu komend. I tu chyba jest problem. Domyślnie jest to znak o wartości 26, czyli spoza zakresu znaków ASCII. Znaki spoza zakresu znaków drukowalnych nie są logowane. U ciebie jest to wartość 36, która to wartość należy do znaków ASCII ( jest to znak dolara $ ), które są logowane. Więc jeżeli w strumieniu pojawi się u Ciebie trzy razy ten znak, to OpenLog wychodzi z trybu logowania i dzieją się złe rzeczy, bo nadchodzący strumień pewnie zmienia konfigurację pracy OpenLoga ( być może i baudrate). w locie. Znak o wartości 26 to jest Ctrl + z znak specjalny o nazwie SUB, nie drukowalny. Zmień sobie wartość 36 na inną ( niech będzie domyślna: 26 ) i OpenLog zacznie działać poprawnie. RE: openlog - SQ4AVS - 18-11-2021 21:41 Pawle sprawdzę w weekend i dam znać. Dzięki RE: openlog - SQ8MVY - 18-11-2021 22:20 Rafale, Przy okazji sprawdź jak masz ustawione fusebity w AVR-ku. Szczególnie bity związane z wyborem źródła taktowania procka - ma być jako external crystal oraz wyłączony podział taktowania CPU przez 8. Jeśli będziesz miał inaczej, to również nie będzie poprawnie działać. RE: openlog - SQ4AVS - 19-11-2021 21:11 Pawle mówisz o procku open loga? RE: openlog - SQ8MVY - 20-11-2021 0:44 tak, dokładnie o procku OpenLog-a ( atmega328 ) RE: openlog - SQ4AVS - 21-11-2021 16:27 Chyba się wyjaśniło, siedzi kwarc 8MHz na płytce zamiast 16. Poszukam 16 i dam znać. Made in China..... RE: openlog - SP6LUN - 22-11-2021 9:43 Może tymczasowo wystarczy zmienić prędkość na 19200 w openlogu lub 4800 z drugiej strony... RE: openlog - SQ4AVS - 22-11-2021 17:56 Myślę, że można spróbować RE: openlog - SQ8MVY - 22-11-2021 18:29 A to zaskoczenie z tym kwarcem. Wydaje mi się, że by było o tej wpadce głośno w internecie.. Może nie szukałem zbyt głęboko, hi. Niemniej, warto zmienić kwarc z tego 8MHz na docelowy 16MHz, bo dla takiego taktowania skompilowany jest firmware. |