Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Generowanie obrazu na TV lub Monitorze komputerowym

jacynka84 31 Dec 2006 22:54 3893 11
  • #1
    jacynka84
    Level 26  
    J.W.
    Muszę to zmęczyć...
    Dręczy mnie to już od dawna , przeczytałem parę tematów.
    Ale nadal właściwie nie wiem jak to zrobić na AVR , w Bascom żeby
    było śmieszniej.
    Ma ktoś jakieś ciekawe linki na ten temat?
    mam karte S3trio od starego kompa ,myślałem aby tak na nią podać
    coś z avr'a ,ale nie moge nigdzie znaleźć dokumentacji do jej
    uKontrolera , ani samej karty... wie ktoś coś o tym jak działa i
    jakie dane jejtrzeba podać żeby np wygenerować znaki ?
    ASM'a nie znam w ogóle , ale trochę C znam .
  • #2
    lelekx
    Level 30  
    Z użyciem karty graficznej to będzie duży problem. Lepiej sobie odpuść, zanim zaczniesz analizować, jakie będą wymagania odnośnie takiego systemu, który będzie mógł najprostszą kartę graficzną obsłużyć. W ostatniej Elektronice Praktycznej był jakiś układzik do testowania monitorów komputerowych - niezbyt skomplikowane, ale też nie spodziewaj się po tym zbyt wiele.
  • #3
    bobeer
    Level 28  
    Po pierwsze zapoznaj sie ze specyfikacja magistrali ISA
    (o karcie na PCI czy AGP lepiej nawet nie myslec)
    Jesli nadal bedziesz mial ochote oprogramowac karte grafiki
    z poziomu bascoma, to zapewne informacje na ten temat znajdziesz w sieci. Karta bedzie miala w uproszczeniu przyznana przestrzen adresowa, w ktorej bedzie sie miescic wyswietlana tresc (oczywiscie gdzies indziej w pamieci bedzie rejestr z trybem grafiki itp itd).
  • #4
    wojtkow
    Level 14  
    Nie wiem czy najlepiej nie jest rozpocząć od tytułowego TV.

    W grudniowej "Elektronice dla Wszystkich" jest schemat gry telewizyjnej Snake opartej o ATmega8. Generuje ona sygnał composite video przy pomocy prostego układu - źródła programu w C + ASM można pobrać ze strony EDW.
  • #5
    jacynka84
    Level 26  
    Lepiej na TV, pod AV . kto wie jak wygląda - nawet nie bardzo wiem jak to powiedzieć - "ramka" danych na jedną klatkę ?
  • #6
    William Bonawentura
    Level 33  
    Na AVR można całkiem wygodnie generować linie VGA / TV przy pomocy SPI. Niestety z takim ograniczeniem, że będą to 8 pikselowe znaki z 2 pikselami odstępu pomiędzy nimi. Poszukaj na necie takiego fajnego projektu terminal RS232 na monitorze VGA i AVR.

    Proponowałbym też rozejrzenie się za układami telegazety z TV. W jednej kostce za 10 PLN masz generator znaków, pamięć, ukłądy synchronizacji itd. który wprost podłączysz przez scart. Dane do jego wewnętrznego RAMu ładujesz przez I2C.
  • #7
    mirekk36
    Level 42  
    kolego autorze napisałeś odnośnie tego tematu:

    Quote:
    "Muszę to zmęczyć... "


    natomiast też we własnym wcześniejszym temacie:

    Zegarek na LCD i atmega8 ,brak precyzji...i Timer'ów.

    napisałeś m.inn:

    Quote:
    "Tylko jako że nie umiem jeszcze Timer'ów obsługiwać ,nie wiem jak odmierzyć "


    ... wprawdzie podejrzewam, że cały czas się szybko uczysz i przesz do przodu - jednak polecałbym ci na razie przy tym poziomie wiedzy o AVRach i władając tylko językiem Bascom - odpuścić sobie tak "kosmiczne jak dla początkującego jak ty" tematy jak sterowanie kartą graficzną PCI lub nawet tworzeniem zespolonego sygnału wizyjnego TV ...

    ... ktoś wyżej podał ci namiar na fajny artykuł w EdW o grze snake zrobionej na ATmega8. Jednak autor tego artykułu to doświadczony i zaawansowany elektronik ;) a i tak opisuje wiele aspektów i problemów z jakimi się borykał przy pisaniu softu do tego. Przy tak krótkich czasach jakie występują w ramce TV o której na razie nic nie wiesz, trzeba się nieźle nagłówkować aby zrobić odpowiednio dobrane czasowo procedury i je zoptymalizować (co w przypadku na razie twojego bascoma, będzie prawie niemożliwe). Autor tego artykułu pisał program w C i też jak sam pisał, nie przedstawia go bo jest pisany niezgodnie wszędzie z przyjętymi standardami ;) ... ale ważne że działa

    ... w necie można znaleźć podobne projekty oparte na PICach i AVRach ale aby osiągnąć dobre efekty ludzie piszą programy do tego celu w asemblerze bo to dopiero pozwala w pełni zoptymalizować kod ;) .... więc proponuję ... zaczynaj małymi kroczkami chcąc się czegoś nauczyć a nie rzucaj się z przysłowiową motyką na słońce - bo to może cię tylko zniechęcić do tego wszystkiego ....

    ... z drugiej strony, jak się obierze jako cel nawet b.trudny projekt i naprawdę uparcie dąży się do jego wykonania, oprogramowania to jest w takim przypadku nawet łatwiej się uczyć - na konkretach niż na nieraz mało mówiących przykładach - jednak jak sam pisałeś nie znasz jeszcze dobrze nawet C.

    reasumując - poświęć najpierw czas na dogłębne poznanie asemblera, który pozwoli ci poznać w 100% tajniki procków lub języka C właśnie

    takie jest moje zdanie ... ale nie oznacza to, że jedynie słuszne ;)

    podzielam jednak twój pogląd, iż jest to bardzo ciekawy temat do wykonania samemu ;) i bardzo pasjonujący

    pozdrawiam
  • #8
    jacynka84
    Level 26  
    asm Mnie przeraża , C zacznę męczyć jak mi sie na niego zbierze.
  • #9
    JacekCz
    Level 39  
    Pare lat temu wszystkie uklady (tekstowe) mialy ten sam chip (jak sobie przypomne uzupelnie).
    Realizowal on sprzętowo odchylania V i H, pobierał literki (był znakowy) z pamięci RAM (ok. 2kB) i kształt liter z ROM (2-3KB). Był stosunkowo ambitny bo miał nawet interfejs Pióra świetlnego.
    Znajdzie to w nastarszych 'Herculesach'.
    Komputerek Cobra miał tę samą ideę na kilku ukladach TTL. Co by nie mówić o stopniu skomplikowania tego pomysłu, jest to prostsze niż podłaczanie magistrali PCI. Tryb graficzny wymaga większej pamięci RAM. Pytanie o ilość kolorów, bo na razie tu myśle przez mono (czarny/jasny)

    Kolejne serie komputerów 8bit miały inne chipy, wszytkjo już chyba nie do kupienia.
    RAM oczywiście mówimy poza chipem uP, w oddzielnej kostce.

    Co so hipotezy softwarowej, prosta kalkulacja częstotliwości podawanych 'kropek' (pixeli) zależnie od założonej rozdzielczości V,H i częstotliwości ramek niemal obala ten pomysł.
    640x480*50=15 360 000 plus zwyzka 20%-40% na powroty to ok 20MHz

    Najmiejsze wyście z rytmnu (wariant programowy, port szeregowy i np. przerwania) to drgania obrazu co jest "bardzo miłe" dla oka (rzyganko po pól godzinie obserwacji obrazu, sprawdzaliśmy na Cobrze)

    Brakuje mi w pomysłach niby inżynierskich najprostszych obliczeń.
  • #10
    jacynka84
    Level 26  
    W sumie to tak 320x240 na początek , a nawet 128x64 abym się najpierw połapał mogło by być.
    PS jak to , dosłownie haftować można było ? za co ?
  • #11
    JacekCz
    Level 39  
    jacynka84 wrote:
    W sumie to tak 320x240 na początek , a nawet 128x64 abym się najpierw połapał mogło by być.
    PS jak to , dosłownie haftować można było ? za co ?


    Drgania obrazu atakują błędnik. Nie ruszasz pupy z miejsca a masz chorobę lokomocyjną albo morską.
    A są takie drgania, których nie dostzrega się świadomie i one najbarziej działają.

    Kumpel lutował taki generator obrazu, cos sie spieprzylo i cały dzien były mikro drgania. Wszystkim nam było niedobrze po 30min pracy na urządzeniu. Dzień później znalazl problem i potwierdził.
  • #12
    jacynka84
    Level 26  
    Czaje , dzieci w japoni bodajże dostawały ataków padaczki czy czegoś
    takiego po zasmarkanych pokemonach w kinie.


    Stwierdzam że raczej jest to za trudne dla mnie, kończę to.
    Attachments: