#include void wait(); void lcd_init(); void lcd_clock(); void lcd_write(); /* Pin-Belegung P1.0 -> RS P1.1 -> R/W P1.2 -> E P1.3 -> --- P1.4 -> D4 P1.5 -> D5 P1.6 -> D6 P1.7 -> D7 */ int main( void ) { P1DIR = 0xFF; P1OUT = 0x00; wait(); lcd_init(); // lcd_write(); while(1) { asm("nop"); } } void wait() { unsigned int i; for(i=0;i<0xffff;i++) { asm("nop"); } } void lcd_clock() { P1OUT ^= BIT2; wait(); P1OUT ^= BIT2; } void lcd_init() { P1OUT = 0x30; // Interner Reset 8-bit mode lcd_clock(); P1OUT = 0x30;// Interner Reset 8-bit mode lcd_clock(); P1OUT = 0x30;// Interner Reset 8-bit mode lcd_clock(); P1OUT = 0x20; // 4 - bit mode lcd_clock(); P1OUT = 0x20; lcd_clock(); P1OUT = 0x80; lcd_clock(); } void lcd_write() { P1OUT = 0x20; P1OUT ^= BIT0; lcd_clock(); P1OUT = 0x10; P1OUT ^= BIT0; lcd_clock(); }