Postat: 28 november 2005, 15:04:49

Här är koden jag tänkt att använda:
Kod: Markera allt
// PORTB Datapinnar
// PORTD MSB N/C,N/C,RST,CS2,CS1,CE/E,R/W,RS LSB
void spitOutSomething(void)
{
TRISD = 0x00; // PORTD output
TRISB = 0x00; // PORTB output
PORTD=0b11100000; // RST = 1
Delay10KTCYx(50); // Vänta en stund
PORTB = 0b00111111; Delay10TCYx(10); // DISPLAY ON
PORTD = 0b11010100; Delay10TCYx(10); // RS=0,RW0,EN=1,CS1=0,CS2=1,RESET=0
Delay10KTCYx(50);
PORTD=0;
PORTB = 0b10111000; Delay10TCYx(10); // SET PAGE
PORTD = 0b11010100; Delay10TCYx(10); // RS=0,RW=0,EN=1,CS1=0,CS2=1,RESET=0
Delay10KTCYx(50);
PORTD=0;
PORTB = 0b01000000; Delay10TCYx(10); // SET Y-ADR
PORTD = 0b11010100; Delay10TCYx(10); // RS=0,RW=0,EN=1,CS1=0,CS2=1,RESET=0
Delay10KTCYx(50);
PORTD=0;
PORTB = 0b01010101; Delay10TCYx(10); // WRITE data
PORTD = 0b11010101; Delay10TCYx(10); // RS=1,RW=0,EN=1,CS1=0,CS2=1,RESET=1
Delay10KTCYx(50);
PORTD=0;
return;
}
PIC:en jobbar, displayen fungerar och anslutningarna är okey.
Förlåt om jag drar tråden OT.
EDIT: Måttligt korkat att ta upp problem i en tråd som har "(löst)" i rubriken

EDIT2: Antingen så måste jag ha varit blind eller så stod det inte, men på min display var RESET inverterad och den tycks bara fungera när jag ansluter den direkt till 5V, småproblem med andra ord. Annars fungerar koden ovan utmärkt som start.