kleinstar
12.05.2007, 13:59
Hallo, ich habe folgendes Problem:
ich möcjte mit dem m32, rncontrol eine Frequenz messen,
dazu möchte ich erstmal überprüfen, ob die flanken richtich gezählt werden:
Enable Interrupts
Enable Int0
Config Int0 = Falling
Flankenzahl = 0
On Int0 Irq
Do
Lcd_clr
Stemp = "flanken:" + Str(flankenzahl)
Schreibe Stemp
Waitms 300
Loop
'Disable Int0
'Disable Interrupts
Irq:
Incr Flankenzahl
Return
aber wenn ich den int 0 nur anfass, zählt er gleich um ... hoch.
Wenn ich einen Pullup Widerstand (1,4k) anschließ, ist es schon wesentlich besser, verzählt sich aber immernoch (nichtmehr wennich von hand anfass)
wie groß soll denn der Pullup sein (wieviel mA verträgt der Eingang)? gibtes beim int0 einen internen pullup?
oder gibt es eine andere Möglichkeit die Zählfehler zu verhindern?
sollte ich lieber einen anderen nicht-interrupt eingang zur Frequenzmessung verwenden?
hab sehr viele Fragen;)
Danke schonmal im vorraus
der Roland
ich möcjte mit dem m32, rncontrol eine Frequenz messen,
dazu möchte ich erstmal überprüfen, ob die flanken richtich gezählt werden:
Enable Interrupts
Enable Int0
Config Int0 = Falling
Flankenzahl = 0
On Int0 Irq
Do
Lcd_clr
Stemp = "flanken:" + Str(flankenzahl)
Schreibe Stemp
Waitms 300
Loop
'Disable Int0
'Disable Interrupts
Irq:
Incr Flankenzahl
Return
aber wenn ich den int 0 nur anfass, zählt er gleich um ... hoch.
Wenn ich einen Pullup Widerstand (1,4k) anschließ, ist es schon wesentlich besser, verzählt sich aber immernoch (nichtmehr wennich von hand anfass)
wie groß soll denn der Pullup sein (wieviel mA verträgt der Eingang)? gibtes beim int0 einen internen pullup?
oder gibt es eine andere Möglichkeit die Zählfehler zu verhindern?
sollte ich lieber einen anderen nicht-interrupt eingang zur Frequenzmessung verwenden?
hab sehr viele Fragen;)
Danke schonmal im vorraus
der Roland