Markus_F
28.12.2005, 15:45
Hey kann mir irgendwer helfen?
Ich habe ein Problem mit meinem Butterfly:
Habe folgendes Programm geschrieben (müsste eigentlich auch funktoinieren)
int main (void)
{
LCD_Init();
sei();
DDRB=0x00; // set Port B for input
while(1)
{
LCD_puts("test",0);
if(bit_is_set(PINB,PINB1)) {
LCD_puts("abc",0);
pause();
}
}
}
ich habe folgende Datein zusätzlich includiert :#include "lcd_driver.c", #include "lcd_functions.c" (Damit LCD funktioniert)
Wenn ich High auf PinB1 anlege sollte das Programm am Display solange abc anzeigen bis ich PinB1 wieder auf Low lege! Mein Problem ist dass das Progr. trotzdem zwischen "abc" und "test" wechselt, auch wenn ich Low anliegen habe! Mit einem Multimeter kann ich messen dass an PortB überall High anliegt obwochl ich ihn mit DDRB=0x00; auf Input gesetzt habe! Hat das vielleicht irgendwas mit dem LCD zu tun dass das nicht geht?
mfg max
Ich habe ein Problem mit meinem Butterfly:
Habe folgendes Programm geschrieben (müsste eigentlich auch funktoinieren)
int main (void)
{
LCD_Init();
sei();
DDRB=0x00; // set Port B for input
while(1)
{
LCD_puts("test",0);
if(bit_is_set(PINB,PINB1)) {
LCD_puts("abc",0);
pause();
}
}
}
ich habe folgende Datein zusätzlich includiert :#include "lcd_driver.c", #include "lcd_functions.c" (Damit LCD funktioniert)
Wenn ich High auf PinB1 anlege sollte das Programm am Display solange abc anzeigen bis ich PinB1 wieder auf Low lege! Mein Problem ist dass das Progr. trotzdem zwischen "abc" und "test" wechselt, auch wenn ich Low anliegen habe! Mit einem Multimeter kann ich messen dass an PortB überall High anliegt obwochl ich ihn mit DDRB=0x00; auf Input gesetzt habe! Hat das vielleicht irgendwas mit dem LCD zu tun dass das nicht geht?
mfg max