Wyświetlacz OLED 1306 + LM35 - Wersja do druku +- Arduino Polska Forum (https://forum.arduinopolska.pl) +-- Dział: Korzystanie z Arduino (https://forum.arduinopolska.pl/dzial-korzystanie-z-arduino) +--- Dział: Programowanie w Arduino (https://forum.arduinopolska.pl/dzial-programowanie-w-arduino) +--- Wątek: Wyświetlacz OLED 1306 + LM35 (/watek-wy%C5%9Bwietlacz-oled-1306-lm35) |
Wyświetlacz OLED 1306 + LM35 - Seba_Tyb - 20-10-2017 [attachment=399]Witam, mm problem z wyświetleniem temp. na tym wyświetlaczu OLED SSD1306, nazwę sobie wyświetliłem lecz odczyt to mam kreska kropka....., załączyłem monitor portu szeregowego i temp. działa. Z arduino dopiero zaczynam.... Pod spodem daję kod./// Proszę o pomoc Kod: #include <Adafruit_GFX.h> RE: Wyświetlacz OLED 1306 + LM35 - kaczakat - 23-10-2017 Witam W pętli głównej powinieneś czyścić wyświetlacz i wysyłać wynik temperatury, bo mogą się nakładać wyniki poprzednie jeśli nowe są krótsze. Czyli powtórz część kodu z setup. Można też czyścić tylko wybrane wiersze/zakresy ekranu by działało szybciej i tylko tę część odświeżać, ale tego się nauczysz później. Jeśli działa wyświetlanie "napisu" to zamień najpierw wynik temperatury na "napis" i zobacz czy pomoże. Zwykle funkcje obsługują wysyłanie napisów, akurat "Serial.print()" jest bardzo rozbudowana i sama sobie zamienia int, float na napisy i wysyła, ta z oleda niekoniecznie taka musi być. Kod: String napis=String(temperatura); Kod: display.println(napis); Dodatkowo podejrzewam, że nie ma sensu używać float do tej temperatury, ten czujnik ma pewnie dokładność +/-2oC, można więc użyć typu int. Kod: a = analogRead(A0); //Odczytanie napięcia z czujnika temperatury Możesz zobaczyć czy z int'ami sobie rodzi ta funkcja display.println();. Zysk to również większa szybkość i mniej kodu wynikowego. Na AVR lepiej unikać float. Można też podzielić tę liczbę po mnożeniu na część całkowitą dzieląc przez 1000 i potem resztę wyświetlić jako sklejony napis, ale i tak zadziała szybciej i da pewnie mniej kb kodu niż użycie float: Kod: a = analogRead(A0); //Odczytanie napięcia z czujnika temperatury RE: Wyświetlacz OLED 1306 + LM35 - Seba_Tyb - 24-10-2017 (23-10-2017, 19:53)kaczakat napisał(a): Witam RE: Wyświetlacz OLED 1306 + LM35 - Seba_Tyb - 24-10-2017 Dzięki sprawdzę dzisiaj, no troszkę inaczej się robi w Bascomie :-) |