Posiadam LCD 2x16 (niestety nie jestem pewien co do rodzaju sterownika - na pewno HD44780 lub odpowiednik
,
zakupiony na allegro:
http://www.allegro.pl/show_item.php?item=46738573
Wydaje się być sprawnym ponieważ po podłączeniu do zasilania pojawia się linia czarnych kwadracikow (tylko jedna)
Nie udało mi się jak dotąd go zainicjalizować
Próbowałem juz prawie wszystkiego(różne pdfy i różne czasy opóźnień, lektura elektrody), poświęciłem chyba dwa tygodnie i nic
Efekt taki sam jak po podłączeniu do zasilania tzn czarne kwadraty w górnej lini
a tutaj kawalek kodu
Wiem że to częste pytanie ale już się zniecheciłem od ciągłego próbowania bez efektów, wiec jażeli ktoś wskaże błąd to jestem wdzięczny[/url]
zakupiony na allegro:
http://www.allegro.pl/show_item.php?item=46738573
Wydaje się być sprawnym ponieważ po podłączeniu do zasilania pojawia się linia czarnych kwadracikow (tylko jedna)
Nie udało mi się jak dotąd go zainicjalizować
Próbowałem juz prawie wszystkiego(różne pdfy i różne czasy opóźnień, lektura elektrody), poświęciłem chyba dwa tygodnie i nic
Efekt taki sam jak po podłączeniu do zasilania tzn czarne kwadraty w górnej lini
a tutaj kawalek kodu
void LCD_Init(){
//ustawienie portow jako wyjsciowe
DDRB = 0xFF;
DDRC = 0xFF;
//czyscimy porty
PORTB = 0x00;
PORTC = 0x00;
//czekamy az ustali sie napiecie
delayms(500);
D5_ON;
D4_ON;
EN_ON;
delayms(1);
EN_OFF;
asm("nop");
asm("nop");
asm("nop");
PORTB = 0x00;
PORTC = 0x00;
delayms(50);
D5_ON;
D4_ON;
EN_ON;
delayms(1);
EN_OFF;
asm("nop");
asm("nop");
asm("nop");
PORTB = 0x00;
PORTC = 0x00;
delayms(50);
D5_ON;
D4_ON;
EN_ON;
delayms(1);
EN_OFF;
asm("nop");
asm("nop");
asm("nop");
PORTB = 0x00;
PORTC = 0x00;
delayms(50);
D5_ON;
EN_ON;
delayms(1);
EN_OFF;
asm("nop");
asm("nop");
asm("nop");
PORTB = 0x00;
PORTC = 0x00;
delayms(1);
D5_ON;
EN_ON;
delayms(1);
EN_OFF;
asm("nop");
asm("nop");
asm("nop");
PORTB = 0x00;
PORTC = 0x00;
delay(1);
D7_ON; //dwie linie wyswietlacza
D6_OFF; //5X7
EN_ON;
delayms(1);
EN_OFF;
asm("nop");
asm("nop");
asm("nop");
PORTB = 0x00;
PORTC = 0x00;
delayms(1);
EN_ON;
delayms(1);
EN_OFF;
asm("nop");
asm("nop");
asm("nop");
PORTB = 0x00;
PORTC = 0x00;
delayms(1);
D7_ON;
EN_ON;
delayms(1);
EN_OFF;
asm("nop");
asm("nop");
asm("nop");
PORTB = 0x00;
PORTC = 0x00;
delayms(1);
EN_ON;
delayms(1);
EN_OFF;
asm("nop");
asm("nop");
asm("nop");
PORTB = 0x00;
PORTC = 0x00;
delayms(1);
D4_ON;
EN_ON;
delayms(1);
EN_OFF;
asm("nop");
asm("nop");
asm("nop");
PORTB = 0x00;
PORTC = 0x00;
delayms(1);
EN_ON;
delayms(1);
EN_OFF;
asm("nop");
asm("nop");
asm("nop");
PORTB = 0x00;
PORTC = 0x00;
delayms(1);
D6_ON;
D5_ON;
D4_ON;
EN_ON;
delayms(1);
EN_OFF;
asm("nop");
asm("nop");
asm("nop");
PORTB = 0x00;
PORTC = 0x00;
delayms(1); Wiem że to częste pytanie ale już się zniecheciłem od ciągłego próbowania bez efektów, wiec jażeli ktoś wskaże błąd to jestem wdzięczny[/url]