Hall-Schalter zu träge?

OP #2626216
Lesenswert?

Ich habe diesen Hall-Schalter verbaut:

http://www.diodes.com/datasheets/AH1802.pdf

Er wird bei 3.3 V betrieben.
Output geht an Inputpin von AVR (interner Pull-up).


Das Ding schaltet aber nicht richtig. Wenn ich einen Magneten von Hand 
schnell drüberbewege (auch ganz nahe mit starkem Neodym), reagiert er 
nur etwa jedes fünfte mal. Bei langsamer Bewegung funkionierts immer.

Mein Programm hat nichts als eine leere Hauptschleife und eine 
Interrupt-Routine:
1
// hall-switch
2
ISR (PCINT0_vect)
3
{
4
  // test
5
  if ((PINB & (1 << HALLSWITCH)) != 0)
6
    PORTB |= (1 << BLANK); // turn off lights
7
  else
8
    PORTB &= ~(1 << BLANK); // un-blank
9
}


Ich dachte Hall-Schalter können problemlos im KHz-Bereich schalten. Wie 
habe ich die Timing-Infos auf Seite 3 des Datasheets zu verstehen?

Wäre nett wenn mir jemand auf die Sprünge helfen könnte.
#2626230
Lesenswert?

Dass du einen Pullup brauchst, hast du gesehen?
Seite 3 im Datenblatt: Der Sensor misst nur 75us lang alle 75ms. Das ist 
typisch für Hall-Schalter.
Wenn du schnelle Änderungen detektieren willst, hat Austria Microsystems 
passende Sensoren. Oder du nimmst ein reines Hall-Element und baust 
Stromquelle und Differenzverstärker selber.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren