R2D3212
02.08.2006, 15:37
Hallo Leute!
Bräucht da wieder mal eure Hilfe.
Also, ich hab das LCD-Modul:
http://www.display-elektronik.de/DEM16217SYH-LY.PDF
welches den KS0070B als Controller verwendet.
Dieses würde ich gerne mit meinem Atmega8 ansteuern.
Hab mir dazu die lib von Peter Fleury geholt und alles streng nach vorschrift (lol) aufgebaut, ala :
https://www.roboternetz.de/wissen/index.php/LCD-Modul_am_AVR
4-Bit Ansteuerung
, und die lcd.h angepasst.
Code ist :
---
#include <stdlib.h>
#include <avr/io.h>
#include "lcd.h"
int main(void)
{
/* Initialisiere Display, Cursor aus */
lcd_init(LCD_DISP_ON);
/* loesche das LCD Display und Cursor auf 1 Zeile, 1 Spalte */
lcd_clrscr();
/* String auf Display anzeigen */
lcd_puts("Hello world.");
}
---
Compiliert hab ich das, indem ich den code in test_lcd.c eingefügt hab und make ausgeführt habe.
JO, nur tut sich leider nicht viel. Also, ich erhalte nur nen blinkenden Cursor....
Hab das selbe in Bascom probiert
Code:
---
$regfile = "m8def.dat"
$crystal = 1000000
Config Lcd = 20 * 4 'wir verwenden ein 4 x 20 Zeichen Display
' Im I/O Mode wird jeder Prozessor Pin einzeln angegeben
Config Lcdpin = Pin , Db4 = Portc.0 , Db5 = Portc.1 , Db6 = Portc.2 , Db7 = Portc.3 , E = Portc.5 , Rs = Portc.4
Cls 'loesche das LCD Display
Locate 1 , 1 'Cursor auf 1 Zeile, 1 Spalte
Lcd "Hello world." 'String auf Display anzeigen
End
---
Und da funktionierts - also was hardwaretechnisches scheint somit ausgeschlossen, IMHO.
Könnts womöglich daran liegen, daß dich die R/W Leitung auf Ground gelegt hab und die Lib von Fleury die irgendwie zu Auswertung benötigt?
Ich stelle wirklich keine Ansprüche an die Schnelligkeit des LCD's, deshalb würd ich mir den Pin lieber für wichtigere Sachen reservieren...
Wie macht ihr das mit dem Lib-file vom Fleury (nirgends n Howto oder sowas dazu gefunden...) ...? Ich würde es gern relativ "nahtlos" in AVR-Studio einbinden..
Ich hab das zip in winavr/avr/include entpackt, meine header datei angepasst und make ausgefürt.
Dann AVRStudio gestartet, eben per include die lcd.h eingebunden und als "Source file" die lcd.c eingebunden.... auf build geklickt...
Ergebnis:
---
make: *** No rule to make target `..//D/WindowsPlatzXtention/WinAVR/avr/include/lcd.c', needed by `lcd.o'. Stop.
---
Gibts vielleicht noch ne andere Lib? Oder hat jemand nen Beispielcode in C ohne LCD-lib (und ohne inline-assembler...der is mir irgendwie zu umständlich...:)), ala "Hello World"?
Tschüß,
R2D3212
Bräucht da wieder mal eure Hilfe.
Also, ich hab das LCD-Modul:
http://www.display-elektronik.de/DEM16217SYH-LY.PDF
welches den KS0070B als Controller verwendet.
Dieses würde ich gerne mit meinem Atmega8 ansteuern.
Hab mir dazu die lib von Peter Fleury geholt und alles streng nach vorschrift (lol) aufgebaut, ala :
https://www.roboternetz.de/wissen/index.php/LCD-Modul_am_AVR
4-Bit Ansteuerung
, und die lcd.h angepasst.
Code ist :
---
#include <stdlib.h>
#include <avr/io.h>
#include "lcd.h"
int main(void)
{
/* Initialisiere Display, Cursor aus */
lcd_init(LCD_DISP_ON);
/* loesche das LCD Display und Cursor auf 1 Zeile, 1 Spalte */
lcd_clrscr();
/* String auf Display anzeigen */
lcd_puts("Hello world.");
}
---
Compiliert hab ich das, indem ich den code in test_lcd.c eingefügt hab und make ausgeführt habe.
JO, nur tut sich leider nicht viel. Also, ich erhalte nur nen blinkenden Cursor....
Hab das selbe in Bascom probiert
Code:
---
$regfile = "m8def.dat"
$crystal = 1000000
Config Lcd = 20 * 4 'wir verwenden ein 4 x 20 Zeichen Display
' Im I/O Mode wird jeder Prozessor Pin einzeln angegeben
Config Lcdpin = Pin , Db4 = Portc.0 , Db5 = Portc.1 , Db6 = Portc.2 , Db7 = Portc.3 , E = Portc.5 , Rs = Portc.4
Cls 'loesche das LCD Display
Locate 1 , 1 'Cursor auf 1 Zeile, 1 Spalte
Lcd "Hello world." 'String auf Display anzeigen
End
---
Und da funktionierts - also was hardwaretechnisches scheint somit ausgeschlossen, IMHO.
Könnts womöglich daran liegen, daß dich die R/W Leitung auf Ground gelegt hab und die Lib von Fleury die irgendwie zu Auswertung benötigt?
Ich stelle wirklich keine Ansprüche an die Schnelligkeit des LCD's, deshalb würd ich mir den Pin lieber für wichtigere Sachen reservieren...
Wie macht ihr das mit dem Lib-file vom Fleury (nirgends n Howto oder sowas dazu gefunden...) ...? Ich würde es gern relativ "nahtlos" in AVR-Studio einbinden..
Ich hab das zip in winavr/avr/include entpackt, meine header datei angepasst und make ausgefürt.
Dann AVRStudio gestartet, eben per include die lcd.h eingebunden und als "Source file" die lcd.c eingebunden.... auf build geklickt...
Ergebnis:
---
make: *** No rule to make target `..//D/WindowsPlatzXtention/WinAVR/avr/include/lcd.c', needed by `lcd.o'. Stop.
---
Gibts vielleicht noch ne andere Lib? Oder hat jemand nen Beispielcode in C ohne LCD-lib (und ohne inline-assembler...der is mir irgendwie zu umständlich...:)), ala "Hello World"?
Tschüß,
R2D3212