logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Bascom, LCD 4*20 i duże cyfry

Villen 09 Kwi 2010 20:55 5371 19
REKLAMA
  • #1 7940990
    Villen
    Poziom 21  
    Witam kolegów!

    Planuję wykorzystać w pewnym projekcie wyświetlacz LCD 4 linijki po 20 znaków i zależy mi na tym, by wyświetlać na nim duże cyfry z zakresu 0-9. Chodzi mi o efekt podobny do tego:

    Bascom, LCD 4*20 i duże cyfry

    Niejednokrotnie spotkałem się już z takim rozwiązaniem przeglądając różne projekty, tylko nigdzie nie znalazłem informacji czy można coś takiego zrealizować w miarę prosty sposób w bascomie.

    Czy ktoś z Was zrealizował takie wyświetlanie i zechciałby podzielić się wiedzą? ;)
  • REKLAMA
  • #2 7941097
    Kuniarz
    Moderator Projektowanie
    W skrócie:
    - definiujesz własne znaki : pełny prostokąt, pół prostokąta, marożniczek lewy, prawy, górny, dolny - rozumiesz mam nadzieję, o co mi chodzi ;-)
    - analizujesz odczytaną godzinę, na jej podstawie tworzysz np. cztery zmienne tekstowe odpowiadające kolejnym liniom.
    - zmienne tekstowe wypełniasz odpowiednimi prostokątami, narożnikami
    - wyświetlasz te cztery zmienne w poszczególnych liniach wyświetlacza.
    Pomogłem? Kup mi kawę.
  • #3 7941316
    Villen
    Poziom 21  
    Tak, własne znaki potrafię zdefiniować ;)

    Już rozumiem również mniej więcej jak miałaby wyglądać taka zmienna, tylko szedł bym raczej w stronę zdefiniowania gotowych zmiennych dla cyfr 0-9 i ich wyświetlania. Muszę poeksperymentować ;)
  • REKLAMA
  • #4 7941440
    Kuniarz
    Moderator Projektowanie
    Eksperymentuj ;) Mam zasadę, że daję wędkę, a nie rybę, więc jak pojawi się kolejny problem to pytaj śmiało.
    Pomogłem? Kup mi kawę.
  • #5 7941484
    Villen
    Poziom 21  
    A ile własnych znaków można zdefiniować dla typowego wyświetlacza zdognedo z HD.... ?
  • REKLAMA
  • Pomocny post
    #6 7942330
    Kuniarz
    Moderator Projektowanie
    Bodajże osiem, ale musiałbym sprawdzić.
    Pomogłem? Kup mi kawę.
  • #7 7943044
    Villen
    Poziom 21  
    A czy jest jakaś możliwość podzielenia wyświetlacza 4*20 na jakby 2*16 i 4*4? Bo oprócz dużych cyfer chciałbym wyświetlać też kilka innych informacji i taki zabieg bardzo ułatwiłby całość zadania.

    Na razie eksperymentuję na wyświetlaczu 2*16, bo większy dopiero zamówiłem.
  • #8 7943494
    landy13
    Poziom 31  
    Zajrzyj do tego tematu. Zwłaszcza wypowiedź mistrza ZbeeGin.
  • #9 7943811
    Villen
    Poziom 21  
    Też bardzo ale to bardzo pomocne! Dzięki landy13 :)

    Kuniarz, czy mógłbyś mi nieco przybliżyć jak według Ciebie ma wyglądać definiowanie zmiennych tekstowych zawierających zdefiniowane znaki?

    Nie chciałbym wyświetlać cyfr "wierszami", bo to wydaje mi się za dużo roboty...

    Komplet znaków już sobie opracowałem, zmieściłem się w limicie ;) I cyferki wyglądają nawet ładniej niż na zdjęciu które zamieściłem...
  • #10 7992361
    Villen
    Poziom 21  
    Dziękuję koledze Kuniarz za słowo porady :) Choć jego pomysłu nie wykorzystałem to zdecydowanie nakierował mnie na tok rozumowania, który doprowadził do powstania czegoś takiego:

    <embed src="http://www.youtube.com/v/xbq98W9UgaY&hl=pl_PL&fs=1&" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385">

    Co już prostą drogą doprowadziło do:

    <embed src="http://www.youtube.com/v/nBfkru6yL3U&hl=pl_PL&fs=1&" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385">

    Jeśli ktoś inny potrzebowałby pomocy przy realizacji czegoś podobnego to służę pomocą.
  • #11 8355422
    arktik1
    Poziom 27  
    Daj cały kod ,też przymierzam się do budowy takiego urządzenia.
  • #12 8361125
    Villen
    Poziom 21  
    Lepiej jest dać komuś łopatę i wskazać ścieżkę do ogródka niż od razu podać marchewkę :P

    Z czym masz problem? Pomogę!
  • #13 8361706
    arktik1
    Poziom 27  
    Jestem ciekawy w jaki sposób zdefiniowałeś znaki.
    Ja bym chciał marchewkę :D
  • #14 8362277
    PO.
    Poziom 20  
    Powiększ sobie stronę, zatrzymaj film, policz piksele i narysuj je na kartce w kratkę :) - najprostsza metoda hackowania i niewykrywalna do tego ;) .

    Reszta to już wrzucenie własnych znaków do cgram i wywoływanie odpowiednich pól cgramu w odpowiednich miejscach lcd.
    Jeśli to jest za trudne to musisz zmienić projekt ;) .
  • #15 8362330
    arktik1
    Poziom 27  
    Jednak najlepiej się uczę gdy dostaje i przerabiam kawałki kodów które działają.
    Ale jeśli nie chcecie dać kawałka "MARCHEWKI" , no to nie.
  • #16 8362659
    Kuniarz
    Moderator Projektowanie
    Marchewki niczego nie uczą, łopaty za to tak, prawda Kolego Villen ? ;-)

    Arktik, napisz na czym utknąłeś, pomożemy.
    Pomogłem? Kup mi kawę.
  • #17 8362732
    PO.
    Poziom 20  
    To nie jest kwestia łopaty nawet, dostałeś wszystko opisane. Zdefiniuj sobie dowolny jeden znak i rzuć go do cgramu a potem spróbuj wyświetlić.
    Potem możemy pomyśleć, co dalej. To nie są jakieś kosmiczne algorytmy...
  • REKLAMA
  • #18 8363160
    Villen
    Poziom 21  
    No dobra, zacznijmy od tego w jakim języku masz zamiar programować?

    Bo ja C dla AVR dopiero liznąłem, a mój projekt pisany jest jeszcze w bascomie.

    Zacznij sobie od obejrzenia tego obrazka: Link

    Przedstawiłem na nim wygląd moich wszystkich cyfr złożonych z odpowiednich klocków. Łatwo zauważyć że jest tych "klocków" 5 sztuk - to wystarczy do "poskładania" z nich wszystkich cyfr.

    Na początku definiujesz sobie zestaw znaków specjalnych dla wyświetlacza LCD którymi będą te nasze "klocki". Dla wyświetlaczy zgodnych z HD... można zdefiniować ich 8. Wiesz jak to się robi?

    Kiedy już masz komplet znaków-klocków piszesz sobie zestaw 10 krótkich podprogramów, które:
    1. ustawiają kursor w pierwszym wierszu i odpowiedniej kolumnie
    2. "rysują" cyfrę
    3. ustawiają kursor z powrotem w pierwszym wierszu

    Rozjaśniłem Ci coś? Jakby co to pytaj jeszcze!

    Przynajmniej ja rozwiązałem to w ten sposób, a jest ich oczywiście tyle, co programistów ;) Pomyśl a może wymyślisz bardziej optymalny sposób? ;)
  • #20 8367798
    arktik1
    Poziom 27  
    Oczywiście że BASCOM, tak jak w tytule.
    Wielkie dzięki "Krauser", teraz wiem o co biega.
    Jak coś będzie nie tak to podłącze się jeszcze do tematu. :D
REKLAMA