Czesc!!!!
Kupilem uklad wykonawczy btc.pl (zl1mcs51) tutaj jest schemat układu
http://www.btc.pl/pdf/zl1mcs51.pdf wsadziłem do niego proca AT89S8252
tak jak w schemacie powyżej i wyswietlacz z serii
WM-C2002M a konkretnie WM-C2002M-1YNNb (2x20).
Wykorzystuje prace LCD z 4-bitową szyną danych.Wyświetlacz podłaczam do portu P2 (tak jak na schemacie) tylko nie wiem gdzie mam sygnały RS - (wybór rejestu), R/W - read/write i E - sygnał zezwalający.
Sciągnąłem przekładowy program (poniżej)
Tylko ze moje RS i E znajduja się gdzie indziej i nie wiem gdzie???
Czy moglibyście przejrzeć schemat i zobaczyć gdzie mam te wyjscia i
co powinienem zmienić w programie by LCD zaczął działać ??
Zobacz czy wejscia D4,D5,D6,D7 mogą być tak u mnie zdefiniowane??
Pamiętaj ze to wyswietlacz (2x20)?
#include <ATMEL/REG8252.H>
#define PORT P2
sbit RS = PORT^2;
sbit E = PORT^3;
sbit D4 = PORT^4;
sbit D5 = PORT^5;
sbit D6 = PORT^6;
sbit D7 = PORT^7;
void Delay(char k)
{
char x,y;
while(k)
{
k--;
for (x = 248; x > 0 ; x--);
for (y = 248; y > 0 ; y--);
}
}
void WriteToLcd(char X)
{
E = 1;
PORT |= 0xF0;
PORT &= (X | 0x0F);
E = 0;
E = 1;
X <<= 4;
PORT |= 0xF0;
PORT &= (X | 0x0F);
E = 0;
Delay(1);
}
void WriteCommand(char X)
{
RS = 0;
WriteToLcd(X);
}
void WriteChar(char X)
{
RS = 1;
WriteToLcd(X);
}
void WriteText(char *S)
{
while(*S)
{
WriteChar(*S);
S++;
}
}
void DefineCharacters(char *znaki)
{
WriteCommand(0x40);
WriteText(znaki);
WriteCommand(0x80);
}
void LcdInit(void)
{
char i;
Delay(15);
PORT = 0x0F;
for (i = 0; i<3; i++)
{
E = 1;
PORT &= 0x3F;
E = 0;
Delay(5);
}
E = 1;
PORT &= 0x2F;
E = 0;
Delay(1);
WriteCommand(0x28);
WriteCommand(0x08);
WriteCommand(0x01);
WriteCommand(0x06);
WriteCommand(0x0C);
}
void main(void)
{
LcdInit();
WriteText("ABCDEFGHIJKLMNO");
while(1);
}
Za okazana pomoc dziękuje i pozdrawiam wszystkich.
Mam nadzieje ze program wreszcie mi zadziala !!!!http://www.btc.pl/pdf/zl1mcs51.pdf
Aktyw Forum
Zarejestruj się na forum.ep.com.pl i zgłoś swój akces do Aktywu Forum. Jeśli jesteś już zarejestrowany wystarczy, że się zalogujesz.
Sprawdź punkty Zarejestruj sięUklad wykonawczy zl1mcs51 z AT89S8252 a LCD, POMOCY!!!!
Moderatorzy:Jacek Bogusz, procesorowiec, robertw, tomasz_jablonski, r-mik, Moderatorzy
-
- -
- Posty:9
- Rejestracja:30 sie 2005, o 17:29
- Lokalizacja:Ostróda - koszalin
-
- -
- Posty:651
- Rejestracja:13 sty 2005, o 18:38
- Lokalizacja:Krasnystaw
- Kontaktowanie:
Kto jest online
Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 3 gości