Zitat Zitat von goara
ok, dann noch eine Frage.. wenn ich will dass man den Taster z.b. 5 sekunden Drücken muss um eine Funktion auszulösen, wie kann ich das dann machen?
geht das so:

Code:
 $regfile = "m8def.dat"
 $crystal = 8000000
 '-----Timer-----
 Config Timer0 = Timer , Prescale = 256                 
 Enable Timer0                                            
 On Timer1 blablubb                            
 Enable Interrupts
 Timer0 = 0               
do 
....
if taster = 1 then
     timer0 = 0
end if
....
loop        

blablubb:
if taster = 1 then
...'funktion ausführen
end if
return
oder wie würdet ihr das lösen.

@ thewulf.. du hast nen Pinguin als avatar und kennst dich mit Bascom aus...
Hast du das unter wine laufen ??

Ich denke das mit dem Timer1 in Deinem Code ist ein Schreibfehler
Bei 8MHz würde ich einen Prescale von 1024 nehmen, hat den Vorteil das Du die Variable nur als Byte DIMen musst.

Ich habe es in meinem Programm so gelöst:

Code:
 Config Timer0 = Timer , Prescale = 1024
 Enable Timer0
 Enable Interrupts
 On Timer0 Zaehlen


...
...
...

Zaehlen:
   If Taster = 0 Then A = A + 1 Else A = 0
   If A = 92 Then Goto Eeprom

Return

Der Wert 92 sind so ca.3s, den musst Du nur noch anpassen.

Gruß
Jens