
Witam. Miałem przedstawić wersję na chińskim scalaku ale w związku z niedawną dyskusją "po co arm w SO8" zdecydowałem się na tą.
Jest to projekt terminala VT100, wersja bez klawiatury. W sam raz żeby wyświetlić większą ilość danych na dużym ekranie zamiast małego LCD 16x2.
Wyświetlana rozdzielczość 640x480 80x40 znaków. Dane wysyłamy po UARCIE, prędkość transmisji 115200. Kolorek wybieramy za pomocą rezystorów R3,R4,R5.
W załączniku soft do dwóch wersji, z wewnętrznym generatorem RC i zewnętrznym generatorem kwarcowym. UWAGA, wersja z wewnętrznym blokuje dalsze programowanie.
Generowanie obrazu:
Timery 17 i 16 generują synchronizację H na pinie IR_OUT.
Timer 1 wyzwalany timerem 17 z opóźnieniem wyzwala za pomocą DMA start linii obrazu wysyłanej przez SPI z pomocą DMA.
Dodatkowo Timer 1 wyzwala z opóźnieniem timer 3 który generuje synchronizację V i liczy linie obrazu.
W przerwaniu od timera 17 generowana jest zawartość bufora linii obrazu.
Żeby przerwania nie były uruchamiane w pustych liniach przerwanie timera 3 uruchamia przerwania od timera 17.
Prawda że proste? :D

Link
Cool! Ranking DIY