Um 100% ausschließen zu können das der Rest von meinem code bzw. Programm damit etwas zu tun hat, habe ich nun nochmal ein ganz neues erstellt, nur mit nem Taster, nem Timer und einem Display.
Es passiert wieder das gleiche wie vorher. Aber so kann ich jetzt den ganzen code posten, das ist dann vielleicht etwas leichter.
So kann jetzt auch nochmal beschreiben was passiert. AVR wird angeschlossen, auf dem Display wird die 0 gezeigt. Ich drücke den Taster die 0 springt sofort zu einer 1 um, danach erhöht sich die Zahl im Sekundentakt.Code:$regfile = "m16def.dat" $crystal = 16000000 $hwstack = 32 $swstack = 20 $framesize = 40 $baud = 9600 Config Portb.3 = Input Config Lcdpin = Pin , Db4 = Porta.3 , Db5 = Porta.2 , Db6 = Porta.1 , Db7 = Porta.0 , E = Porta.4 , Rs = Porta.5 Config Lcd = 24 * 2 Initlcd Cursor Off Dim Minuten As Byte Dim Sekunden As Byte Dim Zeit1 As Byte Dim Zeit2 As Byte Config Timer1 = Timer , Prescale = 256 Const Timervorgabe = 3036 On Timer1 Timer_irq Enable Interrupts Minuten = 0 Sekunden = 0 Zeit1 = 0 Zeit2 = 0 Do Locate 1 , 1 Lcd Sekunden If Pinb.3 = 1 Then Enable Timer1 End If Loop Timer_irq: Timer1 = Timervorgabe Incr Sekunden If Sekunden = 60 Then Incr Minuten Sekunden = 0 End If Return
mfg Blamaster







Zitieren

Lesezeichen