Сообщение от
wi3ik
Теперь хочу вывести сообщение *Хелло!!!*.................Подскажите где можно прочитать об выполнении этих действий...........или вы кратко об этом напишите...
Дак, спочатку треба написати процедуру виводу символу, наприклад:
Код:
// для 4-х битнгопротокола:
void putch (char DAT){
byte tmp;
CLRWDT();
tmp = DAT & 0xF0; // use high nibble
tmp = (tmp>>4) & 0x0F;
PDATA = tmp;
DATA0 = (tmp & 1);
DStrobe; // sent high nibble first
tmp = (DAT) & 0x0F;
PDATA = tmp; DATA0 = (tmp & 1);
DStrobe; // send low nibble
}
Пiсля которого вже можно написати процедуру виводу стрiчки:
Код:
void putstr (const char const * ptr){
char c, i=0;
while (c = ptr[i++]) putch(c);
}
або використовувати стандартнi процедури printf, sprintf
Сообщение от
wi3ik
void lcd_init(void);
в мэне ця процедура зроблена так (для 4- бiтного зв*язку):
Код:
void lcd_init(void){ // Initialise the LCD Display.
byte i;
Delay5ms();Delay5ms();Delay5ms();
// data length is 8 at this point
WriteWCMD(0x33); //set data length to 8
WriteWCMD(0x32); //
WriteWCMD(0x28); // 4 bit, 2 lines, 5x7 dots
//"Mode set, display shift, inc address"
WriteWCMD(0x06); //
//"Set display ON, cursor OFF, blink OFF"
WriteWCMD(0x0C); //0C-0E
//"Reset and blank display"
WriteWCMD(0x01);
// ---------------------------------- init UDG, if need
#ifdef UDG
WriteWCMD(0x40/*+8*/); // CharGen prog -> CG RAM
// prog custom digits
for(i=0;i<numUDG*8;i++) putch (ChG[i]);
WriteWCMD(0x80); //1st digit
#endif
}
Социальные закладки