Lcd.c description – Arizona Picdem 17 User Manual
Page 49

2001 Microchip Technology Inc.
DS39024B-page 43
LCD.C
Description
while(*buffer)
// Write data to LCD
up to null
{
while(BusyXLCD());
// Wait while LCD is
busy
WriteDataXLCD(*buffer);
// Write character
to LCD
buffer++;
// Increment buffer
}
return;
}
/
*******************************************************************
*
* Function Name:
putrsXLCD
* Return Value:
void
* Parameters:
buffer: pointer to string
* Description:
This routine writes a string of bytes to the
*
Hitachi HD44780 LCD controller. The user
*
must check to see if the LCD controller is
*
busy before calling this routine. The data
*
is written to the character generator RAM or
*
the display data RAM depending on what the
*
previous SetxxRamAddr routine was called.
*******************************************************************
*/
void putrsXLCD(static const rom char *buffer)
{
while(*buffer)
// Write data to LCD
up to null
{
while(BusyXLCD());
// Wait while LCD is
busy
WriteDataXLCD(*buffer);
// Write character
to LCD
buffer++;
// Increment buffer
}
return;
}
/
*******************************************************************
*
* Function Name:
OpenXLCD
* Return Value:
void
* Parameters:
lcdtype: sets the type of LCD (lines)
* Description:
his routine configures the LCD. Based on
*
the Hitachi HD44780 LCD controller. The
*
routine will configure the I/O pins of the
*
microcontroller, setup the LCD for 4- or
*
8-bit mode and clear the display. The user
*
must provide three delay routines:
*
DelayFor18TCY() provides a 18 Tcy delay
*
DelayPORXLCD() provides at least 15ms delay
*
DelayXLCD() provides at least 5ms delay
*******************************************************************
*/
void OpenXLCD(static unsigned char lcdtype)