PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Spannungsmessung an PortA Fehlerhaft



WDragon91
29.12.2010, 12:23
Hallo zusammen,

mittlerweile habe ich mein RN-Control dank toller Hilfe aus dem Forum wieder zum laufen gekriegt und bin mich gerade wieder fleißig am einarbeiten.

Leider bekomme die Spannungsmessung nicht so zum laufen wie ich das möchte.
Habe 3 1.5 Volt Batterien an GND und an Porta0 angeschlossen, sobald die Batterien angeschlossen sind bekomme ich die richtige Spannung ausgegeben.
Aber sobald ich die Batterien abklemme, zeigt er mir wirre Spannungswerte von 0-5 Volt an eigentlich sollte am Port dann ja nichts mehr gemessen werden. Nur finde ich den Fehler nicht. Hoffe mir kann jemand helfen.





$regfile = "m32def.dat"
$framesize = 32
$swstack = 32
$hwstack = 32
$crystal = 16000000 'Quarzfrequenz
$baud = 9600

Config Adc = Single , Prescaler = Auto 'Für Spannungsmessung

Config Porta.0 = Input 'Für Spannungsmessung Porta.0 = 1 'Pullup Widerstand ein

Const Ref = 5 / 1023 'Für Batteriespannungsberechnung
Dim Volt As Single
Dim W As Word
Start Adc
Do
W = Getadc(0)
Volt = W * Ref
Print "Die aktuelle Spannung beträgt: " ; Volt ; " Volt"
If Volt > 1 Then
Print "Ausgelöst"
End If

Waitms 100
Loop

End

Besserwessi
29.12.2010, 12:50
Der offene Eingang ist sehr hochohmig (rund 10 - 1000 MOhm) und hat einfach keine definierte Spannung. Da werden schnell mal 50 Hz Störungen eingekoppelt.

WDragon91
29.12.2010, 13:01
Ah ok das klingt plausibel, gibt es denn einen Trick wie ich mit sicherheit sagen kann das jetzt die von mir angelegte Spannung anliegt?
Ich wollte an das RN-Control an Port A ein Handylautsprecher anschließen, sobald das Handy angerufen wird und Spannung anliegt, soll der PWM Ausgang aktiviert werden.

Jaecko
29.12.2010, 13:28
Wenn der Akku dir niemals 0V liefert (ausser er ist defekt), dann kannst du einen Pull-Down-Widerstand nach Masse schalten. Irgendwo Hausnummer 100k-1M, der hält dir den Pin dann ohne Akku auf GND.

WDragon91
29.12.2010, 23:15
der Akku wird später ja durch den Handylautsprecher ersetzt. Das board soll dann zwischen 0 Lautsprecher aus und 1 Lautsprechner ein unterscheiden können. Also kann dann auch mal keine Spannung anliegen.

Meinst du das so wie im Attachment?
Dann werde ich das so umsetzten:) Wenn das denn richtig ist so wie ich es gezeichnet habe.

Besserwessi
29.12.2010, 23:52
Am Lautsprecher wird vermutlich nur eine eher kleine Wechselspannung anliegen. So direkt sollte man die besser nicht an den AD-Eingang anlegen, wegen der möglichen negativen Spannungen.
Mit einem Widerstand von z.B. 10 kOhm in Reihe, vor dem AD Eingang sollte es gehen. Der sollte als Schutz vor zu viel Strom ausreichen. Die negative Hälfte des Signals kann man so aber nicht mehr messen. Zum detektiren ob da was kommt sollte es aber reichen. Wenn der Leutpsrecher aus ist, sollte dann auch 0 V anliegen - der Lautsprecher ist schon eine relativ niederohmiger Widerstand.

Jaecko
30.12.2010, 10:29
Genau so wie gezeichnet wäre mein Plan gewesen.
Wenn dir eine Unterscheidung zwischen "Kein Ton = 0" und "Lautsprecher fehlt = 0" eh unwichtig ist, dann klappt das schon; unter beachtung der o.g. negativen Spannungen.

WDragon91
05.01.2011, 19:10
Ah das freut mich ;) dann werde ich das mal ausprobieren und anschließend berichten:)