Ich habe ein kleines Problem: Ein t85 soll mit V-USB ein resistives Touchpanel ausmessen und USB HID Maus spielen. Im Idealfall nutzt man 4 GPIO mit ADC und kann so gleich die Offsets der IO messen und kompensieren (mit AVR zumindest). Mindestens zwei ADC werden jedoch gebraucht. Der t85 hat 4 ADC Pins. Leider ist einer davon auf #Reset, und der ist als IO so schwach auf der Brust, dass der low geschaltete Pin über die 230 Ohm des Touchpanels an den gegenüberliegenden Pin (high bei 3.3 V) weit "hochgezogen" wird, so dass mein Cursor nur in der unteren Hälfte des Displays zappelt. Lässt sich da ein IO-Verstärker dranbasteln, der dem Hi-Z (ADC) Zustand nicht schadet? Oder lässt sich der Strom durch das Panel mit "symmetrischen" Serienwiderständen so weit reduzieren, dass alle AVR Pins mitspielen? Das reduziert zwar auch den Messbereich, aber es sollte doch etwas linearer sein!?
Reset abschalten und ab da mit HV programmieren?
Danke für deinen Beitrag, aber du hast offenbar das Problem nicht verstanden.
Kleine Nebenbedingung, die für die Frage nicht besonders wichtig ist: ich nutze zwei IO für besagtes V-USB.
gugl schrieb: > aber du hast offenbar das Problem nicht verstanden. Stympt, ich war davon ausgegangen, daß Du die Reset-Funktion behalten willst und Dir der Messbereich dann nicht reicht. An die andere Belastbarkeit von PB5 hatte ich nicht gedacht. Der Vorschlag nen Tiny84 zu nutzen wird genauso willkommen sein, allerdings befürchte ich, daß jede Anpassschaltung größer sein wird.
Macht doch nichts. Es dürfte auch schwierig werden, aus einem Pin den https://de.wikipedia.org/wiki/Tri-State abzuleiten, um ihn extern zu "verstärken". Vielleicht gibt es aber einen Weg, einem ADC-Pin einen Transistor parallelzuschalten, so dass dieser Pin als Ausgang eine Elektrode high/low schaltet, aber ansonsten den Pin als ADC nicht stört? In meinem Fall wird der Pin als low-Ausgang genutzt. Leider habe ich die Grundlagen nicht parat: wie verhält sich ein P-Fet mit High-Z Gate (ADC) und lässt er sich überhaupt schalten? Das ist auch Quatsch, das Gate (ADC/IO) darf die Elektrodenspannung nicht sehen, sonst mischt er sich ja ins Geschehen ein. Das Panel ist vor einem 640x480 TFT, damit könnte man den Vorschlag mit Serienwiderständen eigentlich umsetzen (geschätzt 1/3 der Auflösung nutzbar; Selbstkalibrierung nicht mehr möglich), aber:
1 | The reset pin can also be used as a (weak) I/O pin. |
2 | |
3 | The RESET pin must tolerate high voltages when entering and operating in programming modes and, as a consequence, |
4 | has a weak drive strength as compared to regular I/O pins. See Figure 22-23, Figure 22-24, Figure 22-25, and Figure 22-26 |
5 | (starting on page 184). |
Bei 3 mA hat er überschlagsweise bereits 0.5 V, bei den 230 Ohm ist man also off-the-chart. Real sind es Reset: 2 V low (!) zu PB0 3.2 V Bei 10mA lässt aber auch ein normaler Pin seine 0.5 V. Ich muss mir also doch einen anderen Pin suchen..
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.