Obsługa graficznego wyświetlacza z telefonu Nokia 3310 za pomocą mikrokontrolerów STM32

Pamięć obrazu

Zawartość pamięci SRAM wbudowanej w sterownik PCD8544 można modyfikować poprzez wpis danych do sterownika gdy linia D/nC jest w stanie wysokim. Matryca LCD może wyświetlić 48 linii, każda z nich ma 84 piksele. Pamięć SRAM jest zorganizowana w 6 banków po 84 bajty. Taka organizacja wymusza logiczny podział pola wyświetlacza na 6 wierszy po 84 kolumny (rys. 4). Wiersze są numerowane od 0 do 5, a kolumny od 0 do 83.

Rys. 4. Organizacja pamięci SRAM (obrazu) w sterowniku PCD8544

Rys. 4. Organizacja pamięci SRAM (obrazu) w sterowniku PCD8544

W czasie wpisywania danych do pamięci obrazu określamy najpierw numer banku pamięci (zmienna Y określająca wiersz na rys. 4), następnie numer bajtu w wierszu (zmienna X określająca kolumnę na rys. 4). Zapisanie całego banku odpowiada wyświetleniu jednego wiersza wyświetlacza (linijki). Każdy bajt pamięci RAM jest wyświetlany jako pionowy pasek 8 pikseli. Najwyżej położony piksel w pasku odpowiada najmniej znaczącemu bitowi, a najniżej położony piksel odpowiada najbardziej znaczącemu bitowi bajtu pamięci. W standardowym trybie wyświetlania ustawienie bitu w bajcie pamięci odpowiada wyświetleniu czarnego piksela, a wyzerowanie odpowiada jego wyłączeniu.

Adresowanie pamięci

Podczas wpisywania bajtów do pamięci SRAM sterownik PCD8544 automatycznie inkrementuje liczniki wierszy i kolumn. Dostępne są – ustawiane komendą Function Set – dwa tryby automatycznego modyfikowania liczników: pionowy i poziomy. Tryb pionowy pokazano na rys. 5.

Rys. 5. Adresowanie pionowe pamięci obrazu w sterowniku PCD8544

Rys. 5. Adresowanie pionowe pamięci obrazu w sterowniku PCD8544

Po każdym wpisaniu bajtu do pamięci zwiększa się o jeden stan licznika wierszy. Po osiągnięciu maksymalnego numeru wiersza licznik wierszy jest zerowany, a licznik kolumn jest zwiększany o 1. Wysłanie 6 bajtów 0xFF, począwszy od wiersza numer zero, spowoduje wyświetlenie w pierwszej z lewej kolumny wyświetlacza pionowego paska przez całą wysokość wyświetlacza. Tryb adresowania pionowego (rys. 6) można stosować przy wpisywaniu do pamięci obrazu pełnoekranowej bitmapy.

Rys. 6. Adresowanie poziome pamięci obrazu w sterowniku PCD8544

Rys. 6. Adresowanie poziome pamięci obrazu w sterowniku PCD8544

Po zapisaniu każdego bajtu zwiększany jest stan licznika kolumn. Po osiągnięciu maksymalnego numeru kolumny licznik kolumn jest zerowany, a licznik wierszy jest zwiększany o 1. Tryb adresowania poziomego jest bardzo wygodny przy pracy w trybie tekstowym. Tryby adresowania można dowolnie przełączać w trakcie normalnej pracy wyświetlacza i nie ma to wpływu na wyświetlaną informację.

O autorze