Elektroda.pl
Elektroda.pl
X
IGE-XAOIGE-XAO
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

uVGA - micro Video Gadget Adapter (uniwersalny moduł)

mirekk36 05 Wrz 2008 22:24 11096 21
  • uVGA - micro Video Gadget Adapter (uniwersalny moduł)

    Witam,

    Chciałbym przedstawić wprawdzie jeszcze prototyp ale już praktycznie prawie w pełni działający, pewnego układu. Jak widać jest to zwarty moduł, 40pinów - 20 po każdej stronie w odstępach jak dwukrotna szerokość układu w obudowie DIL40.
    Nazwałem go "uVGA skrót od micro Video Gadget Adapter". Do czego on może służyć i jakie
    posiada funkcjonalności?

    uVGA - micro Video Gadget Adapter (uniwersalny moduł)
    (widok od spodu)

    1. Często potrzeba wyświetlić jakieś dane na zwykłym wyświetlaczu 7mio segmentowym LED, ale...
    ... ale też często stajemy przed problemem, projektowania, przeprojektowania, modyfikacji już
    posiadanego wzoru-schematu, dostosowania oprogramowania w procesorze. Co więcej często spotykamy
    się z problemem, że mamy akurat pod ręką nie te bardziej popularne i łatwiejsze do podłączania
    wyświetlacze ze wspólną anodą tylko ze wspólną katodą. Często trzeba się męczyć nad przerabianiem
    procedur odświeżania wyświetlania itp itp itd

    ..... czy nie byłoby przyjemnie wziąć jakiś układ np taki jak np b.wygodny MAX7219 ? no tak - ale on steruje
    tylko wyświetlaczami ze wspólną katodą i to jeszcze małymi wyświetlaczami. A co jeśli zechcemy podłączyć
    taki ze wspólną katodą jednak bardzo duży ??? no to klops , MAX go nie wysteruje odpowiednio.

    Dlatego m.inn powstał układ "uVGA" - można do niego podłączyć:

    - do 8 wyświetlaczy LED i to zupełnie dowolnych !!! dużych małych, ze wspólną katodą albo anodą
    albo 1 wyświetlacz matrycowy 8x8 LED !!!


    - co więcej - możemy sterować i to płynnie jasnością każdego z osobna i wszystkich razem
    podłączonych wyświetlaczy LED !!! w zakresie od 0 - 100% - dzięki czemu można uzyskać niesamowite
    efekty w bardzo prosty sposób o czym później

    - można dowolnie zapisywać pamięć układu przeznaczoną dla każdej z cyfr LED i dowolnie ją odczytywać !

    - w przypadku wyświetlacza matrycowego także można sterować jego jasnością oraz zapisywać i odczytywać pamięć

    - jeśli używamy dużych wyświetlaczy LED, które posiadają po kilka diod LED w jednym segmencie konieczne jest
    nieco wyższe napięcie zasilania niż +5V. Dzięki temu, że do układu uVGA można na jedną z końcówek podać takie
    napięcie 5-12V i za pomocą jumperka ustawić to zasilanie dla wyświetlaczy to można już spokojnie wyświetlać

    - układ nie posiada wewnętrznych rezystorów - trzeba je zawsze samemu dobrać dla danego typu wyświetlacza
    i to są w tym przypadku jedyne elementy zewnętrzne - tylko 8 rezystorów

    (na filmiku widać na samym końcu - jak uVGA steruje małymi wyświetlaczami LED - 6szt - niebieskie, a na dole ekranu duże zielone wyświetlacze - tylko już nie podłączałem ich do filmu, ale działają. Dodam że te niebieskie są ze wspólną anodą a duże zielone ze wspólną katodą. Aby duże działały doprowadziłem do specjalnego wejście uVGA wyższe napięcie - +12V i do niego oczywiście dobrałem rezystory)

    -----------------------------------------------------------------------------------------------------------

    2. Poza tym, często też zdarza się, że jednocześnie z wyświetlaczem LED lub osobno ale chcemy użyć wyświetlacz LCD.
    .... tutaj, też wspiera nas sprzętowo układ uVGA. Do układu można podłączyć "prawie" dowolny wyświetlacz LCD czyli np:

    1x8, 2x16, 4x16, 2x20, 2x24, 2x40 ale także 4x40, który często musimy sterować za pomocą dodatkowego sygnału E2. To słówko
    powyżej "prawie" oznacza tylko to, że na chwilę pisania tego tekstu jeszcze są w oproacowaniu procedury BIOS'u układu uVGA,
    dzięki którym będzie można sterować właśnie tymi wyświetlaczami 4x40

    tak więc, znowu podobnie jak w przypadku wyświetlacza LED pełna dowolność oraz jednakowy zawsze ten sam rodzaj sterowania
    (o którym za chwilę)

    poza tym, że możemy w bardzo prosty sposób definiować własne znaki w wyświetlaczu to mamy też sprzętową konwersję polskich znaków
    w standardzie WIN1250
    . !!! ale także polskich liter na zwykłe bez ogonków itp

    dla użytkowników Bascoma przygotowane już są podstawowe biblioteki, dzięki którym użytkowanie układu uVGA będzie bajecznie proste

    uVGA - micro Video Gadget Adapter (uniwersalny moduł)

    dla użytkowników innych środowisk programowania przygotowywana jest jeszcze pełna dokumentacja odnośnie sposobu sterowania

    ------------------------------------------------------------------------------------------------------------------

    3. Nierzadko przy okazji tworzenia "na szybko" czegoś co może nam prezentować dane na wyświetlaczach LED lub LCD przydaje
    się jakiś prosty, szybki i skuteczny sposób sterowania urządzeniem za pomocą pilota IR. Układ uVGA - wspiera także i w tej
    dziedzinie, ponieważ posiada wbudowany odbiornik IR i obsługuje dowolne piloty nadające w standardzie RC5 - ale w dosyć
    nietypowy powiedziałbym niespotykany sposób a dodatkowo bardzo ciekawy i użyteczny (o czym później)

    ------------------------------------------------------------------------------------------------------------------

    4. STEROWANIE UKŁADU uVGA ---> każdy domyśla się chyba, że nie może tu zabraknąć sterowania poprzez RS232/RS485 bo takie jest.
    Jednak to często nie wystarcza i przydałaby się jeszcze inna możliwość - np I2C . Otóż uVGA spokojnie może pracować w trybie
    **** I2C SLAVE **** Co ważne sterowanie znakomitą większością funkcji jest identyczne w I2C jak i w RS232 !!! co dodatkowo
    ułatwia programiście życie.

    Dzięki tym sposobom sterowania układ staje się się dostępny i zawsze na takich samych zasadach dla dowolnego procesora i/lub
    komputera. Dlaczego użyłem określenia "i/lub" przed chwilą? - ponieważ układ uVGA może stanowić w pewnym zakresie bufor w
    przesyłaniu danych (konwerter) pomiędzy szyną I2C a RS232. Dzięki czemu z jednej strony do układu może mieć jednoczesny dostęp
    mikroprocesor, który nim steruje ale także np komputer PC podłączony przez RS232, który może - przywłaszczyć sobie na dowolny
    czas wyświetlacze LED lub LCD - może je prościej mówiąc przejąć. Ale może także komputer kontaktować się poprzez uVGA z procesorem,
    który steruje układem uVGA za pomocą szyny I2C.

    Bardzo ciekawym rozwiązaniem jest to, że układ uVGA może generować przerwanie na zewnątrz w pewnych przypadkach, np gdy otrzyma
    kod z pilota IR (RC5). Układ działa przecież jako Slave więc nie może sam zacząć nadawać na szynie I2C. I właśnie wtedy z pomocą
    przychodzi nam przerwanie - układ je generuje do procesora, który nim steruje a procesor może natychmiast odczytać najpierw pola
    statusów aby ocenić z jakiego powodu było przerwanie a następnie odczytać interesujące go dane. Wszystko działa od tej strony
    przepięknie i szybko.

    Zapewne zastanowienie może budzić to - jakie jeszcze inne mogą być przyczyny wygenerowania przerwania przez uVGA, jeśli miałyby być
    praktyczne a nie tylko jakieś tam zgłaszanie swoich statusów poza kodami IR. Otóż co bardzo istotne i to jest kolejną funkcjonalnością:

    ----------------
    5. Układ uVGA - może wykorzystywać niektóre swoje piny w trybie I/O !!! a co za tym idzie może je wykorzystywać albo jako KLAWISZE
    albo jeszcze w inny sposób dowolnie zdefiniowany przez użytkownika. Przy czym obsługa każdego zdefiniowanego w układzie uVGA klawisza
    powoduje że każdy z osobna i/lub wszystkie razem - potrafią wygenerować przerwanie a procesor sterujący układem uVGA może najspokojniej w
    świecie (przy okazji bez zajmowania się problemem drgania styków) dowiedzieć się, który klawisz jest nie tylko wciśnięty ale i
    puszczony (zwolniony). Co w połączeniu z mechanizmem przerwań daje nam możliwość pięknej obsługi mini klawiaturki o ile mamy wolne piny.
    Dlaczego piny przeznaczone na klawisze mogą być wolne lub zajęte? ano dlatego, że jeśli np nie wykorzystujemy 8 wyświetlaczy LED
    tylko np 6 albo 4 to już będziemy mieli wolne i jakby nie wykorzystane piny układu uVGA. Można je wtedy zagospodarować jako klawisze
    ale także jako wyjścia, Każde z wyjść możemy pięknie osobno sterować. Tych możliwości jest napradę dużo i będą one opisane wraz
    z praktycznymi przykładami ich wykorzystania w docelowej dokumentacji do produktu.



    .... układ uVGA pozwala na jednoczesne sterowanie różnymi wyświetlaczami w tym samym czasie bez żadnych konfliktów. A szczególną zaletą
    jest to, że można przesyłać dane do wyświetlacza LCD nawet całe "ekrany" z częstotliwością odświeżania 25Hz. Dzięki temu układ
    sprzętowo wspiera proste animacje.

    .... Dzięki możliwości płynnego sterowania jasnością wyświetlaczy LED rodzi się niejako dodatkowa możliwość, otóż mamy (o ile zrezygnujemy
    z wyświetlacza LED) możliwość sterowania 8kanałami PWM w rozdzielczości 8bitów i na chwilę obecną w 75krokach. Dzięki czemu można
    przepięknie sterować kolorowymi diodami LED typu RGB !



    -----------------------------

    aby w pełni przekonać się o możliwościach układu uVGA można go podłączyć do komputera PC i za pomocą specjalnie dedykowanego programu, przetestować
    wszystkie jego funkcje. Można też za pomocą tego programu - onLine sterować zawartością wyświetlacza i to w sposób dynamiczny.

    można będzie np projektując znak do pamięci CGRAM LCD w PC jednocześnie mieć na żywo podgląd na wyświetlaczu.

    Program na PC wykorzystując w pełni funkcję buforowania sprzętowego uVGA - może wyczyniać różne cuda nie tylko z wyświetlaczmi LCD - choć
    tu jest najwięcej efektów specjalnych ale także wyświetlaczem LED, sterowaniem portami I/O, PWM , diodami RGB, wyświetlaczem matrycowym itp

    .... narazie niewielkie próbki możliwości zamieszczam poniżej na filmikach i fotkach czy screenshot'ach. Zaznaczam jednak, że taki filmik na YouTubie nie jest w stanie przekazać wszystkiego.


    (nie omawiam na tym etapie jednak ogromnych możliwości uVGA jakie daje jeśli chodzi o wykorzystanie sterowania z pilota - ponieważ, czeka mnie
    jeszcze z tym trochę pracy aby podokańczać - a wtedy gdy ukończę prototyp - i będę mógł przedstawić urządzenie w pełni)

    dodam tylko, że sercem uVGA jest ATmega32, a oprogramowanie jej zostało napisane w Bascomie ze sporą domieszką assemblera oraz dopisaniem
    własnej biblioteki do obsługi wyświetlaczy LCD w trybie z wykorzystaniem sygnału R/W, dzięki czemu można uzyskiwać tak zaskakująco
    dobre efekty i wydajność jeśli chodzi o wyświetlanie danych. Łącze RS232 pracuje z prędkością 115200 natomiast szyna I2C - bez ograniczeń.


    .... na zakończenie chciałbym dodać, że projekt zaczął powstawać jako komercyjny więc przynajmniej narazie nie będę w stanie udostępnić
    szczegółów technicznych.

    ... dla użytkowników Eagle - będzie dostępna gotowa biblioteka z modułem uVGA - aby łatwo było ją implementować do własnych układów

    uVGA - micro Video Gadget Adapter (uniwersalny moduł)

    uVGA - micro Video Gadget Adapter (uniwersalny moduł)


    uVGA - micro Video Gadget Adapter (uniwersalny moduł)

    uVGA - micro Video Gadget Adapter (uniwersalny moduł)

    [youtube][/youtube]

    aaaa ... zwróćie uwagę, że przy wyświetlaniu danych z PC - mamy do czynienia z jakby obiektami, które można na żywo skalować - takie jakby okienka (windowsy) :)

    ... wiem oczywiście, że niektórzy powiedzą iż wolą sami robić wyświetlanie bo to nie problem - i jest w tym sporo racji. Jednak zrobiłem to - ponieważ - często ostatnio przychodzi mi robić takie nieduże projekty - i nie chce mi się za każdym razem walczyć z procedurami do obsługi LED, LCD ale także z elektroniką gdy trzeba podłączyć różnego rodzaju wyświetlacze. Teraz biorę jeden moduł i po zawodach. Oczywiście - można go wykorzystać do swoich własnych celów - niekoniecznie wgrywać wsad który napisałem :) .... może służyć także jako wspaniała płytka testowa do nauki, która przy okazji jest modułem łatwym w instalacji i szybkim w montażu. Więc gdy już coś napiszemy na takie płytce to - myk i wykorzystana pożytecznie

    pozdrawiam


    PS zapomniałbym, poniżej jeszcze pokażę taki wprawdzie nie uporządkowany do końca ale spis poleceń jakie można przesyłać po magistrali I2C lub RS232 do modułu. A jak wspominałem powyżej, dla użytkowników Bascom'a gotowa jest bibliotego dzięki której jeśli się chce np wyświetlić coś na LCD np:

    Code:
    locate 3,2
    
    LCD "Test"


    to dzięki bibliotece właśnie napiszemy:

    Code:
    Call Mk_lcd_locate(3,2)
    
    Call Mk_lcd_str("Test")


    i moduł uVGA ładnie to wykona.

    natomiast gdy chcemy, że tak powiem "ręcznie" wysłać polecenie np Locate 3,2

    to zaglądamy do sekcji LCD i tam widać coś takiego w nawiasach
    ( C03[y][x] )

    co oznacza, że należy wysłać :

    1. Kod ASCII literki C
    2. bajt o wartości 3
    3. bajt z pozycją Y
    4. bajt z pozycją X

    .... i identycznie przez RS232 - nawet z terminala, wklepiemy(tylko z przecinkami - sorki)

    C,3,3,2 - co będzie nadal oznaczać dla modułu Locate 3,2

    Gdy z terminala wpiszemy polskie literki do wyświetlenia: ążńłóę - to moduł ładnie dokona konwersji i zobaczymy je także na LCD

    Fajne! Ranking DIY
    Potrafisz napisać podobny artykuł? Wyślij do mnie a otrzymasz kartę SD 64GB.
    O autorze
    mirekk36
    Poziom 42  
    Offline 
    Ciekawy kurs VIDEO - EAGLE - zajrzyj na mój blog
    mirekk36.blogspot.com - VOLATILE ? to łatwe

    Specjalizuje się w: programowanie: avr c, delphi pc, android
    mirekk36 napisał 9195 postów o ocenie 2227, pomógł 964 razy. Mieszka w mieście Szczecin. Jest z nami od 2006 roku.
  • IGE-XAOIGE-XAO
  • #2
    Gibol
    Poziom 17  
    Jestem pełen podziwu! Świetny projekt... fajnie opracowany moduł, bardzo pomysłowe i oprogramowanie do tego... gratulacje :)
  • IGE-XAOIGE-XAO
  • #4
    Brosper
    Poziom 14  
    Z****e gościu takiego sprzętu dawno nie widziałem, jestem ten program w jakim języku go napisałeś. I na jakiej licencji udostępniasz urządzenie.

    Moderowany przez crazy_phisic:

    Kolejnego upomnienia nie będzie, następna wpadka słowna zakończy się ostrzeżeniem.

  • #5
    mały naukowiec
    Poziom 20  
    Woow no projekt jest super, gratulacje za pomysł i za wykonanie
    Pisałeś, że projekt powstał jako komercyjny, czyli prawdopodobnie będziesz go sprzedawał, a jeśli tak, to za ile??
  • #6
    redart
    Poziom 23  
    Jak zwykle - projekt kolegi mirka powala na kolana. Klękajcie narody. Najbardziej podoba mi się wszechstronność tego gadżetu i systemowe podejście do projektowania. Wszystko przemyślane, a na to często brakuje czasu lub cierpliwości.
    Widzę, że fascynacja bascomem u kolegi nie wygasa...

    mirekk36 napisał:

    .... na zakończenie chciałbym dodać, że projekt zaczął powstawać jako komercyjny więc przynajmniej narazie nie będę w stanie udostępnić
    szczegółów technicznych.


    Czy to znaczy, że ta konstrukcja powstawała w godzinach pracy?

    Pzdr.
  • #7
    maly_elektronik
    Poziom 23  
    To jest wyświetlacz graficzny :?: Czy jakieś nowartorskie wysterowanie alfanumerycznego :?:
    PS. Jak scrolujesz tekst :?:
  • #8
    mirekk36
    Poziom 42  
    Witam,

    Na wstępie dziękuję za pozytywne komentarze.

    Widzę, że przewija się jak narazie głównie jedno pytanie odnośnie sposobu udostępnienia tegoż modułu. W odpowiedzi mogę narazie napisać tylko, że już wkrótce bo mam nadzieję maksymalnie do końca tego miesiąca - wszystko się wyjaśni. Narazie trwają intensywne prace nad ukończeniem finalnej wersji Biosu do modułu. Między innymi czekam jeszcze (już zamówiłem) na wyświetlacza LCD 4x40, bo chciałbym w praktyce sprawdzić sterowanie przy użyciu dodatkowej końcówki E2 a nie tylko teoretycznie, żeby później gdy ktoś będzie korzystał - nie było niespodzianek. Dlatego samo testowanie tych wszystkich możliwości tak naprawdę trwa i trwa

    redart -> Bascom nie Bascom co to za różnica, jak wspomniałem wyżej program bascomowy nafaszerowany jest wstawkami assemblera jak dobra kasza skwarkami :) - a powoli oddaję się też porywać językowi C, jendak tu nauka idzie zdecydowanie wolniej nie tylko ze względu na czas ale i na to, że całkowicie od początku go "dotykam" - ale to bardzo przyjemny język.... .... taaak - a konstrukcja powstawała dokładnie w godzinach pracy :)

    mały_elektronik -> nie, to nie jest wyświetlacz graficzny ani sterownik wyświetlacza graficznego. Jest to sterownik wyświetlaczy alfanumerycznych LCD oraz wyświetlaczy LED wszelkiej maści. I nie jest nowatorski tylko dlatego, że może sterować najróżniejszymi wyświetlaczami w sposób bajecznie prosty dla użytkownika ale też dlatego, że można go sterować przez I2C w trybie Slave a także (nwet równocześnie!) przez łącze RS232/485.
    .... pytasz jak scroluję tekst - w tym przypadku, który widzisz na filmiku to akurat hmm dosyć zaawansowany sposób kontroli całego obrazu wyświetlacza LCD przez komputer PC. Sterownik uVGA w tym przypadku odgrywa tylko rolę bufora, który sprzętowo wspomaga cały proces i pozwala na odświeżanie obrazu z częstotliwością ok 25Hz. Jednak podobne efekty można uzyskać sterując modułem uVGA za pomocą dowolnego procka. Tego typu procedury (już gotowe) będą opisane dokładnie i podane później, gdy projekt zostanie ukończony.

    pozdrawiam
  • #9
    redart
    Poziom 23  
    mirekk36 napisał:

    5. Układ uVGA - może wykorzystywać niektóre swoje piny w trybie I/O !!! a co za tym idzie może je wykorzystywać albo jako KLAWISZE
    albo jeszcze w inny sposób dowolnie zdefiniowany przez użytkownika. (...)


    Może warto byłoby wrzucić procedurkę do odczytu kierunku i przyrostów z impulsatora (nawet z sztywno zadeklarowanymi pinami I/O), z możliwością wypchnięcia takiej informacji po RS'ie - skoro gadżet odbiera RC5, to 'małe pokrętełko' byłoby dobrym dodatkiem peryferyjnym (obok np. klawiszy).
    Moja koncepcja wynika z zastosowania jakie znajduję dla tej konstrukcji :wink: , szczególnie w powiązaniu z moim aktualnym przedsięwzięciem.

    Pzdr.
  • #10
    KeinXor
    Poziom 24  
    Gratulacje, projekt wykonany profesjonalnie !
    Chciałbym zapytać w jakim oprogramowaniu projektowałeś PCB ?
  • #11
    Hydralisk
    Poziom 14  
    Możesz przybliżyć nam informacje o tym ile czasu zajęło Tobie zaprojektowanie tego urządzenia, stworzenie oprogramowania na PC i procka oraz uruchamianie i testowanie? Pytam z ciekawości jakie mogą być ramy czasowe takiego projektu.
  • #12
    mirekk36
    Poziom 42  
    redart -> niestety po pierwsze - totalny brak pinów, priorytetem jest zagospodarowanie 8 wyświetlaczy LED lub 1 MAtrycowego a do tego LCD. Oczywiście można byłoby dorobić obsłgę impulsatora ale to kolejne warunki, że np gdy odłączony LCD to na tych a na tych pinach można podłączyć impulsator, plus kod do sterowania - eeh no i powoli miejsca już braknie na kod. Chyba, że się zaprę kiedyś i wszystko w C napiszę ale to na spokojnie. Narazie to i tak już się zaczynam gubić w tym gąszczu warunków i uzależnień. Poza tym mam wykorzystane już wszytskie Timery a nawet jeśli to nie mogę jescze czegoś ot tak dorzucać coby się odświeżanie dla LED nie zepsuło albo żeby nie trza było go zmniejszać (a odświeżanie czyli obsługa multipleksowania LED wraz ze wszystkimi z tym związanymi warunkami zrobiona jest już i tak w 100% w assemblerze - jako obsługa przerwania jednego z Timerów , a i tak muszę co jakiś czas optymalizować na maxa)

    KeinXor - PCB - oczywiście w Eagle

    Hydralisk -> gdyby nie czas oczekiwania na płytki z wytwórni Merkar :) to gdyby tak zebrać wszystko tzn czas do kupy - to myślę, że to co do tej pory jest opracowane zajęło mi jak dotąd chyba już prawie miesiąc czasu - jest tego troszkę :)
  • #13
    Mad Bekon
    Poziom 23  
    Ja odpowiem za kolegę, Eagle.
    Odnośnie projektu, bardzo fajna sprawa. Myślałem o czymś podobnym, ale dedykowanym pod wyświetlacze w oparciu o HD44780, dające możliwość podłączenia przez różne interfejsy, i będące rozmiarów wyświetlacza.

    Pozdrawiam, bardzo ładnie kolego
  • #14
    mirekk36
    Poziom 42  
    Mad Bekon -> co do sterowania wyświetlaczami HD44780 to się zgadza - to też nimi właśnie steruje a jeśli chodzi o wielkość płytki modułu .... hmm może tego na fotkach nie widać bo nie dałem nic do porównania obok aby mieć punkt odniesienia - jadnak płytka modułu ma wymiary 55mm x 38mm - więc jest zdecydowanie mniejsza niż płytki wyświetlaczy LCD - też mi zależało na mocnym upakowaniu elementów
  • #15
    daroslav15
    Poziom 15  
    No nic.. pozazdroscic tylko autorowi projektu samozaparcia, cierpliwosci no i sporej wiedzy ;).
    Tak z ciekawosci zapytam, mirekk36 czym się na co dzien zajmujesz, tzn gdzie pracujesz i jakie studia skonczyles? ;)
  • #16
    mirekk36
    Poziom 42  
    daroslav15 -> na co dzień pracuję jako programista a ostatnio trochę jako elektronik - to moja praca, a gdy wracam do domu po pracy i chcę się odprężyć, to zaczynam zajmować się moim hobby - a moje hobby to programowanie i elektronika :) .... i koło się zamyka
  • #17
    daroslav15
    Poziom 15  
    No to widze, ze tobie jak malo komu udaje sie polaczyc przyjemne z pozytecznym ;D.
    O projekcie juz pisalem, solidny kawal roboty, napisz w przyszlosci dalsze losy tego projektu, jak z komercjalizacja, i czy moze znajde kiedys takie cacko w swoim kalkulatorze :P . Pozdrawiam
  • #18
    redart
    Poziom 23  
    mirekk36:
    No tak, skoro ramki czasowe obsługi timerów zapchane są do granic możliwości to człowiek zaczyna się zastanawiać jak skonstruować jakiś czasowstrzymywacz :D
    Ciekawi mnie jeszcze okno tego "specjalnie dedykowanego programu", które widać na filmiku, ale wykażę odrobinę cierpliwości licząc, że i na to przyjdzie czas.

    Pzdr.
  • #19
    markosik20
    Poziom 33  
    Gratulacje. Jak zwykle projekt dopracowany na ostatni guzik. Piszesz że można się z modułem komunikować przez RS232(RS485). Jak wygląda sprawa adresowania modułu w sieci RS485? Planujesz zaimplementować np: obsługę protokołów przemysłowych? Wtedy taki moduł mógłby być wykorzystywany nie tylko w "domowym zaciszu" :wink:.
  • #20
    mirekk36
    Poziom 42  
    markosik20 -> no nie jest jeszcze tak dopracowany jak twój zasilacz cyfrowy, na który jak się patrzy to normalnie szok ;) ... a odnośnie tego mojego modułu i RS485 - to oczywiście sprawę zostawiłem na koniec a tu jak zwykle zaczyna brakować miejsca w pamieci procka. Jednak koniecznie to dorobię kosztem innych gadżetów bo będzie to bardzo przydatne. Adresowanie - narazie dopracowana jest sprawa domyślnego adresu dla I2C slave oraz możliwości jego zmiany właśnie z poziomu RS232 ale też i samego I2C. Zapamiętywany jest w EEPROM. ...... Podobnie chcę zrobić z adresowaniem dla RS485. Narazie odnośnie RS485 jest tylko miejsce na scalaczek typu MAX485 i linia do jego sterowania. W przypadku gdy się przełączy go na tryb RS485 nie będzie on mógł już generować przerwań ale one nie będą też wtedy aż tak istotne. Myślę też mocno adresowaniu w przypadku pracy jako slave obojętnie czy I2C czy RS485 bo będzie można obsługiwać jakby hmmm szeregowo - łącząc kilka na linii i podłączając do nich wyświetlacze matrycowe 8x8 robić tablice świetlne itp.... tak więc prace nad RS485 jeszcze trwają

    .... fajną uwagę zwróciłeś jeśli chodzi o obsługę protokołów przemysłowych .... tylko jak na razie nigdy nie miałem z nimi do czynienia i zawsze wydawały mi się jakimiś tematami-kobyłami. Jednak chyba się przemogę i w końcu rozpracuję ..... zapewne miałeś na myśli protokół CAN (zdaje się) czy jeszcze jakieś inne? ... jak sądzisz, który najlepiej na początek wybrać?
  • #21
    markosik20
    Poziom 33  
    mirekk36 napisał:
    zapewne miałeś na myśli protokół CAN (zdaje się) czy jeszcze jakieś inne? ... jak sądzisz, który najlepiej na początek wybrać?


    Ja się powoli przymierzam do MODBUS'a ale po głowie chodzi mi PROFIBUS. Lecz po pierwszych przymiarkach trochę się przeraziłem :(.
    Wyobrażam sobie taki uVGA gdzieś na końcu sieci który wyświetla operatorowi np: liczbę wyprodukowanych stalowych kręgów :wink:.
  • #22
    mirekk36
    Poziom 42  
    markosik20 -> nieee no teraz znowu zaczytałem sobie o CAN, o modbus - ale implementacja takiego - czegokolwiek w moim ATmega32 wraz z tym wszystkim - to prawie nie możliwe jednak , tzn tak mi się na razie wydaje :( .... ale proste zapisywanie czegoś do SLave i odczytywanie po RS485 nie będzie trudne ;) ... więc coś zrobię. Z drugiej strony widzę, że na rynku jest już sporo różnych wręcz hardwarowych przejściówek typu RS232/CAN itp ... więc jak już ktoś coś by chciał to zawsze sobie da radę - ważne aby urządzonko o którym myślę nadal zachowało swoją uniwersalność przy maksymalnej prostocie jego obsługi