Odkurzę stary temat
.
Ponieważ transmisja na układach RF42B/31B spełniła moje oczekiwania - w tym kierunku nadal będę szedł z projektem.
Na dzień dzisiejszy udało mi się ujarzmić nowy wyświetacz wraz z nakładką dotykową. Jednym słowem - wszystkie ustawienie robimy paluszkiem .
Ze względu na wybraną już obudowę do odbiornika - musiałem przystosować projekt do pionowego ustawienie ekranu LCD. W wyniku tego musiałem samodzielnie napisać procedury do wyświetlania liter cyfer, symboli, itd. Trochę to trwało - ale z efektu końcowego jestem zadowolony.
Z częścią odbiorczą - którą musiałem dla nowego wyświeltacza napisać od nowa - zbliżam się coraz bardziej do końca. Również pamięć jest już prawie pełna. W rezerwie został ewentualny zakup innego procka z tej serii.
Na ekranie mam wyświetlane następujące informacje:
1. Ilość satelit z GPS
3. FIX z satelity
2. Poziom sygnału ( RSSI )
3. Symbol włączonego lub wyłączonego buzzera
3. Graficzny symbol poziomu stanu napięcia pakietu odbiornika
4. Wartość liczbowa napięcia pakietu odbiornika
5. Graficzny symbol poziomu stanu napięcia pakietu nadajnika
6. Wartość liczbowa napięcia pakietu nadajnika
7. Wartość liczbowa prądu pakietu nadajnika
8. Zużyta pojemność pakietu nadawczego
9. Prędkość bieżąca
10. Prędkość maksymalna
11. Obroty silnika
12 Temperatura silnika
13. Temperatura pakietu
14. Temperatura regulatora
15. Sygnalizacja dowolnego alarmu z dodatkowego czujnika ( np. sygnalizacja wody, )
16. Klawisz do wejścia do menu serwisowego.
Na tym poziomie menu serwisowe pozwala:
1. Ustawić kontrast i jasność wyświetlacza.
2. Dokonać kalibracji nakładki dotykowej
3. Ustawić maksymalną temperaturę osobno dla Silnika, Pakietu i Regulatora, powyżej której załączy się alarm ( Buzzer + pulsujące napisy/ikony na wyświetlaczu ).
5. Ustawić skalę jednostkową - osobno dla Silnika, Pakietu i Regulatora ( Celcjusz, Farenheit, Kelvin ).
6. Ustawić jednostkę prędkości ( km/h, mph ).
7. Ustawić minimalne napięcie osobno dla pakietu nadawczego i odbiorczego, poniżej którego załaczy się alarm ( Buzzer + pulsujące napisy/ikony na wyświetlaczu ).
8. Ustawić liczbę biegunów ( magnesów ) dla obrotomierza.
9. Dokonać bindowania z nadajnikiem ( funcjonalność jest tworzona ).
10. Włączyc lub wyłączyć Buzzer ( jak komuś przeszkadza dźwięk alarmowy ).
11. Dokonać testu Buzzera
12. Sprawdzić wersję softu ( będzie możliwość wgrywania nowszych wersji po RS232 - a dokładnie USB - konwerter RS232 ).
Właśnie zakończyłem:
1. Opcję wyboru języka - dostępny jest język angielski i polski.
2. Opcję przywrócenia do ustawień fabrycznyc
3. Dopisałem możliwość wyboru predefiniowanej nazwy do danej temperatury ( silnik, bateria, regulator )
4. Dopisałem możliwość wyboru predefiniowanej nazwy do alarmu ( alarm, woda, paliwo )
5. Ponieważ przesyłane dane są w buforze w postaci stringu - dopsiałem procedurę kontroli poprawności odebranych danych - wykorzystałem procedurę wyliczania sumy kontrolnej NMEA po stronie nadawczej i jej weryfikację po stronie odbiorczej ( takich, jak dla GPS - ale z małą modyfikacją ).
6. Zaimplementowałem filtr cyfrowy do RSSI .
7. Dopisałem graficzną wizualizację bindowania części nadawczej z odbiorczą - po skończeniu pisania procedury bindowania
8. Transmji używa hoppingu, czyli skaczemy z nadawaniem i odbieraniem po 16 kanałach według zadanego algorytmu. Pozwala to zmniejszyć przerwy transmisji w wyniku zakłóceń.
P.S. Myślałem o mierzeniu poziomu paliwa lub przynajmniej sygnalizacji tzw. rezerwy. Jest jednak problem z czujnikami. Do metanolu można kupić gotowe z innej telemetri ( po 45 zł ) i spróbować oprogramować , jednakże do benzyny nie znalazłem żadnego.
To co powstało przez jesienno-zimowe wolne wieczory - kilka przykładowych zdjęć: