Jest to mój pierwszy post na tym forum, więc witam wszystkich serdecznie!
Niestety ale przychodzę z problemem.
Od paru dni zacząłem zabawę z mikrokontrolerami. Pierwszy projekt to termometr Dallas Ds18b20 na 1-Wire (temat pewnie tu dobrze znany
). Temperaturka pobrana, przekonwertowana, ale nie moge jej sprawnie wyświetlić...
Jestem trochę zielony i w mikrokontrolerach i w C więc prosze o wyrozumiałość - oto mój problem:
Wywołanie funkcji wyświetlania wygląda tak (buffer to zmienna string przekonwertowana funkcją dtostrf)
Początkowo ładnie wskakuje na wyznaczone miejsce, ale po przejściu pętli leci dalej, tak jakby przesuwa się w prawo i nadpisuje inne znaki na LCD, po chwili przeskakuje do pierwszego wiersza i tam też sieje spustoszenie. W efekcie cały LCD jest zawalony wynikiem temperatury.
Próbowałem dużo kombinacji umieszania za pętlą itp itd, ale ciągle podobnie. W całym projekcie chciałbym dodać jeszcze takie coś:
- kliknięcie switch0 = wyświetlenie temperatury w *C
- kliknięcie switch1 = wyświetlenie temperatury w *F ( czyli *C + 273 )
Może ma ktoś jakiś pomysł jak to ładnie zrobić?
Prosze pomóżcie, co zrobić żeby to wyświetlało się stale, ale w jednym miejscu??
Dorzucam kod biblioteki LCD i główny kod programu, może tam w funkcjach coś jest nie tak
Niestety ale przychodzę z problemem.
Od paru dni zacząłem zabawę z mikrokontrolerami. Pierwszy projekt to termometr Dallas Ds18b20 na 1-Wire (temat pewnie tu dobrze znany
Jestem trochę zielony i w mikrokontrolerach i w C więc prosze o wyrozumiałość - oto mój problem:
Wywołanie funkcji wyświetlania wygląda tak (buffer to zmienna string przekonwertowana funkcją dtostrf)
Kod: C / C++
Początkowo ładnie wskakuje na wyznaczone miejsce, ale po przejściu pętli leci dalej, tak jakby przesuwa się w prawo i nadpisuje inne znaki na LCD, po chwili przeskakuje do pierwszego wiersza i tam też sieje spustoszenie. W efekcie cały LCD jest zawalony wynikiem temperatury.
Próbowałem dużo kombinacji umieszania za pętlą itp itd, ale ciągle podobnie. W całym projekcie chciałbym dodać jeszcze takie coś:
- kliknięcie switch0 = wyświetlenie temperatury w *C
- kliknięcie switch1 = wyświetlenie temperatury w *F ( czyli *C + 273 )
Może ma ktoś jakiś pomysł jak to ładnie zrobić?
Prosze pomóżcie, co zrobić żeby to wyświetlało się stale, ale w jednym miejscu??
Dorzucam kod biblioteki LCD i główny kod programu, może tam w funkcjach coś jest nie tak
Kod: C / C++
Kod: C / C++
