ATmega88: CRAFT

Widzieliście, co można wyczarować ATmegą88 podłączoną do monitora (VGA)?

formatting link
Chylę czoła.

Reply to
Adam Dybkowski
Loading thread data ...

Adam Dybkowski pisze:

Niesamowite, jeszcze zbieram szczękę z podłogi.

Dariusz Żołna

Reply to
Dariusz Zolna

Tu jest troche lepsze :P

formatting link

Reply to
Sebastian Bialy

Użytkownik Adam Dybkowski napisał:

Obraz TV lub VGA można było wygenerować programowo już na starym poczciwym AT90S2313. Problemem była mała ilość pamięci RAM. W przypadku ATmega88 mamy jej sporo więcej i zegar dwa razy szybszy, ale metoda generowania sygnału pozostała bez zmian. Swego czasu poczyniłem "yntelygentny" kontroler video o rozdzielczości 320x256x16 kolorów na pixel z ATmega32 kostką DRAM, jednym TTL-em i kilkoma elementami RC. Wadą takich rozwiązań jest bardzo duże obciążenie procesora zadaniami generowania obrazu. Choć z drugiej strony czas, w którym jest "wyśwetana" ramka wokół czynnego pola obrazu jest na tyle długi, że zostawia procesorowi więcej mocy obliczeniowej od niejednego Atari czy Commodore :-) Ostatnio przesiadłem się na ARM Atmela i jakoś tak mnie naszło czy aby te procki nie będą się lepiej nadawały. Okazało się, że taki AT91SAM7S256 jest do tego wręcz idealny. Kompletny sygnał TV o rozdzielczości 320x256x1 robię praktycznie całkowicie sprzętowo. Obciążenie procka jest minimalne (poniżej 1%). Oprócz procka do szczęścia potrzebne są tylko trzy rezystory do "posklejania" sygnałów video i synchro.

Pozdrawiam Grzegorz

Reply to
Grzegorz Kurczyk

Użytkownik J.F. napisał:

Jest DMA i śliczny 32-bitowy rejestr szeregowy :-) Timerem w trybie PWM generuję impulsy synchro, a rejestrem szeregowym popędzanym z DMA generuję sygnał video. W obsłudze przerwania co 64us muszę tylko załadować nowy adres dla DMA, dosłownie kilka rozkazów. Generowanie obrazu czarno-białego jak znalazł :) Ostatnio udało mi się posterować stary monitor od karty Hercules w normalnej rozdzielczości graficznej Herculesa 720x348. Więcej zabawy byłoby z kolorem, bo trzeba by dorzucić jakiś rejestr z zatrzaskiem coby z szeregówki zrobić choć po jednym bicie na kolor. Oczywiście problemem jest ilość dostępnego RAM-u. Przy monochromatycznym Herculesie znika 720x348/8 czyli prawie 32KB.

Pozdrawiam Grzegorz

Reply to
Grzegorz Kurczyk

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.