Arduino UNO mam podłaczone przez SPI do MCP2515.
Połączenia CANH CANL i GND wykonałem z użyciem złączek wago.
Mam zrobione 5 poziomowe menu, domyślnie przy starcie zmienna MENU=0.
język actionscript
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Funkcja "Wyslij_na_segment_0" wyświetla wartość na pierwszych trzech segmentach wyświetlacza wartość odczytaną z rejestru RXB0D0 (decymalnie 102).
Po naciśnieciu klawisza 2, wysyłam ramkę z jedną daną (aktualną wartościa enkodera) o identyfikatorze 5.
Odbieram poprawnie tą daną na USBTinViewer - jeżeli chodzi o wysylanie danych , wszystko działa bez problemu.
Przy próbie wysłania danej z USBTinViewer do ukladu Arduino, odbieram błędne lecz powtarzające się wartości - może to bałagan przy filtrach i maskach?
Inicjalizacja MCP2515 wyglada u mnie tak:
język actionscript
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Informacja error jest to informacja z modułu Wi-FI -przy wysyłaniu wartości z USARTA, trafiają one na wejscie modułu, a ten zwraca wartość ERROR. Generalnie wyświetlam dane na wyswietlaczu 7-segmentowym.
Jest powtarzalność w tym co odbiera moduł - wysylam 0x0F --> Odbiera 14, wysyłam 0x07 --> Odbieram 6.
Jak wyśle 8 bajtow danych, np 0F 0F 0F 0F 0F 0F 0F 0F , w kolejnych rejestrach RXB0D0-D7 bede mial wartości 14.
------------------------ [ Dodano po: 50 minutach ]Włączyłem moduł po dłuższej przerwie, wysłałem 1 daną 0x0F i odebrałem 15.
Następnie wysłałem 0x0E i pokazało 13, kolejne próby wysłania 0x0F zakończyły się odebraną daną równą 14 i do tej pory nic się nie zmienia.
Oto funkcja do odebrania danych:
język actionscript
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
A oto funkcja inicjalizacji SPI:
język actionscript
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.