Hi, hm auf einmal gehts hab nur den R/W Pin mal auf einen Portpin gelegt und nochmals das Programm von Fluery getestet und es klappt....
Es klappt aber nicht mit dem Code aus dme mikrocontroller.net Tutorial.
Code:
void lcd_data(unsigned char temp1);
void lcd_string(char *data);
void lcd_command(unsigned char temp1);
void lcd_enable(void);
void lcd_init(void);
void lcd_home(void);
void lcd_clear(void);
void set_cursor(uint8_t x, uint8_t y);
// Hier die verwendete Taktfrequenz in Hz eintragen, wichtig!
#define F_CPU 8000000
// LCD Befehle
#define CLEAR_DISPLAY 0x01
#define CURSOR_HOME 0x02
// Pinbelegung für das LCD, an verwendete Pins anpassen
#define LCD_PORT PORTA
#define LCD_DDR DDRA
#define LCD_RS PA4
#define LCD_EN PA5
Hab nur was in der lcd-routines.h geändert alles andere hab ich so übernommen wie im Tut.
Code:
#include <avr/io.h>
#include "lcd-routines.h"
#include "lcd-routines.c"
int main(void)
{
lcd_init();
lcd_data('T');
lcd_data('e');
lcd_data('s');
lcd_data('t');
set_cursor(0,2);
lcd_string("Hello World!");
while(1)
{
}
return 0;
}
Da zeigt er mir nix an, am LCD liegt es ja nicht habs ja mir der FLuery Code getestet muss am Code liegen.
Kann das sein das, wiel ich jetzt ja R/W am Portpin hab, noch abfragen muss wenn ich was auf dem Display schreibe? Habs ja jetzt nicht auf Masse wie im Tut steht.
Mfg
Lesezeichen