Liebe Leute,
ich möchte Helligkeit mit einem Teensy 3.1 durch das Entladen eines
100nF-Kondensators über einen LPT80A messen und treffe dabei auf ein mir
unerklärliches Verhalten des Eingangspins. Das Verhalten lässt sich auch
mit einem 100kΩ anstelle eines LPT80A reproduzieren, und zwar wie folgt:
1 | D2 -+- 100kΩ -+- 1kΩ --- GND
|
2 | | |
|
3 | +- 100nF -+
|
1 | void loop() {
|
2 | pinMode(LPT80A_PIN,OUTPUT);
|
3 | digitalWrite(LPT80A_PIN,HIGH);
|
4 | digitalWrite(LED_BUILTIN,HIGH);
|
5 | delay(1); // 100nF 1kOhm -> 100us, *5 to charge to 99.3%, here *10
|
6 | digitalWrite(LED_BUILTIN,LOW);
|
7 | pinMode(LPT80A_PIN,INPUT);
|
8 | digitalWrite(LPT80A_PIN,LOW);
|
9 | uint32_t t0 = micros(), dt;
|
10 | while (1) {
|
11 | dt = micros()-t0;
|
12 | if (dt>1000000) break;
|
13 | if (!digitalRead(LPT80A_PIN)) break;
|
14 | }
|
15 | Serial.println(dt);
|
16 | delay(1000);
|
17 | }
|
Es ergibt sich die angehängte Teensy-100n-100k.png Lade- und
Entladekurve. Es ist mir unerklärlich wieso der Kondensator sich nur bis
auf ca. 1.4V entlädt und dann nicht weiter, so dass D2 nie LOW wird.
Ersetze ich den Entladewiderstand durch 66kΩ, so fällt die Spannung auf
0V ab, verharrt allerdings zwischenzeitlich zunächst auf einem
1.4V-Plateau bevor sie dann entgültig abfällt, siehe
Teensy-100n-66k.png.
Wo kommen die 14μA Strom aus dem Eingangspin her? Habe ich ohne es zu
wissen einen Pullup aktiviert?
LG, Sebastian