Witam! Po ostatniej dyskusji nad LCD z S65 przysiadlem, zeby zrobic modul do sterowania ogolnie wyswietlaczami LCD z wejsciem szeregowym. W zalozeniu do tego ma byc cala biblioteka graficzna (pisanie, rozne fonty, proste prymitywy) oraz GUI (obsluga okienek, menu itd). Gdyby komus sie chcialo rzucic okiem na schemat w gifie:
- uklad obsluguje 512kb SRAM i 512 Flash oprocz tego co na pokladzie ATMega128/64
- mapa pamieci: - do 10FFh wewnetrzny SRAM procka i rejestry - do 7FFFh zewnetrzny SRAM (niebankowany) - obszar mapowany w ostatnią 16kb strone SRAM - do BFFFh przelaczalne banki pamieci (po 16kb) SRAM, bank wybierany jest z rejestru PF0-PF4 - do FFFFh przelaczalne banki pamieci Flash (po 16kb), bank wybierany jest przez bity z rejestru PD0-PD4
- dekoder pamieci jest zrobiony w oparciu o 8 NANDow, 5 podlaczonych do PF0-PF4 ma dawac wysoki poziom logiczny jesli odwolanie nastepuje do przestrzeni adresowej ponizej 8000h (dzieki temu wybieraja ostatni bank pamieci SRAM niezaleznie od wartosci PF0-PF4). Przy adresowaniu powyzej
7FFFh wystawiaja na te linie adresowe zanegowana zawartosc pinow PF0-PF4 . Pozostale 3 nandy zajmuja sie generacja sygnalow CS dla RAM (jesli odwolanie nastepuje <BFFFh) i Flash (jesli odwolujemy sie do adresow C000h-FFFFh). Bramki pochodza z ukladu 74LS00, mysle, ze dla zegara 16MHz ich czasy przelaczania beda wystarczajace.- porty PB3-PB5, PE4-PE6,PF5-PF7, linie RESET, TxD, RxD, GND, Vcc wyprowadzone sa na zlacze dodatkowe. Zastanawiam sie czy nie wyprowadzic tez napiecia +3V z zasilania LCD.
Pozdrawiam i czekam na opinie.