Obsługa graficznego wyświetlacza z telefonu Nokia 3310 za pomocą mikrokontrolerów STM32
Na list. 2 przedstawiono procedury manipulacji liniami portów i procedura programowej realizacji interfejsu SPI.
List. 2. Procedura programowej realizacji interfejsu SPI i manipulacji liniami portów
//programowa realizacja
SPI
void WriteSPI(unsigned char data){
char i;
ClrBit(CLK);
Delay(10);
for(i=0;i<8;i++){
if((data&0x80)==0x80)
SetBit(DATA);
else
ClrBit(DATA);
Delay(10);
SetBit(CLK);
Delay(10);
ClrBit(CLK);
data<<=1;
}
}
//ustawienie linii portu
void SetBit(int bits){
GPIO_SetBits(PORT_DISP_NOKIA, bits);
}
//wyzerowanie linii portu
void ClrBit(int bits){
GPIO_ResetBits(PORT_DISP_NOKIA, bits);
}
Do sterowania wyświetlaczem będą niezbędne procedury zapisania danych do wyświetlacza (list. 3) i zapisania komendy do wyświetlacza (list. 4).
List. 3. Procedura zapisu danych do pamięci obrazu sterownika PCD8544
//zapisanie danej do sterownika
void WriteData(unsigned char data){
ClrBit(SCE);
SetBit(DC);//rejestr danych
WriteSPI(data);
SetBit(SCE);
}
List. 4. Zapisanie komendy do sterownika PCD8544
//zapisanie komendy do sterownika
void WriteCmd(unsigned char cmd){
ClrBit(SCE);
ClrBit(DC);//rejestr komend
WriteSPI(cmd);
SetBit(SCE);
}
Po włączeniu zasilania pamięć sterownika PCD8544 nie jest automatycznie zerowana, wymaga więc zerowania polegającego na wypełnieniu jej całej wartościami 0x00. Pamięć sterownika PCD8544 ma pojemność 504 B – trzeba więc wpisać do niej kolejno 504 bajty 0x00, żeby ekran wyświetlacza po inicjalizacji był „czysty” (list. 5).

Koniec ery defiladowej. Cykl życia technologii na froncie skrócił się do kilku tygodni
Czym jest czytnik e-booków i jak działa?
O suwerenności Europy mówią gen. Sławomir Żakowski, gen. Paweł Bielawny, dr. Jacek Pawlak, Adam Cudny i dr Daniel Więzik 




