PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Analogports bei ATmega103



degger
02.04.2004, 23:17
hallo, ich möchte mit meinem Atmega103 2 optische sensoren abfragen.
die sensoren sind direkt an den controller angeschlossen.



$crystal = 3686800
Config Adc = Single , Prescaler = Auto

Dim Sensr As Integer
Dim Sensl As Integer

Led1 Alias Portc.2
Led2 Alias Portc.4
Led3 Alias Portc.5
Led4 Alias Portc.3

Start Adc
Do
Sensr = Getadc(0)



If Sensl > 0 Then Led1 = 1
If Sensl > 0 Then Led2 = 1
Wait 5
Led1 = 0
Led2 = 0
Wait 1
Sensl = Getadc(1)
If Sensr > 0 Then Led3 = 1
If Sensr > 0 Then Led4 = 1
Wait 5
Led3 = 0
Led4 = 0
Loop


die sensoren liefern mir nachgemessene 2 volt. allerdings kommt bei den leds immer noch das raus, was bei null passieren soll. woran könnte das liegen?

vielen dank schonmal

degger


EDIT:
So, immerhin hab ichs jetzt so weit, dass ab ca. 2.8V mehr als 0 rauskommt, allerdings kommt jetzt ein neues Problem: die beiden Signale mischen sich. egal, welcher sensor ausreichend strom gibt, es passiert immer was auf beiden allen Leds was :-(

Gottfreak
04.04.2004, 13:55
LED1 und LED2 sind in deinem Programm definiert aber werden nie verwendet.
Bist du sicher, dass du zweimal jeweils Led3 und Led4 einstellen wolltest (du behandelst die Eingänge Sensr und Sensl völlig gleich (nur wird bei Sensr der Wert um "Wait 5" verzögert verwendet.).)?

degger
05.04.2004, 22:46
oops, hab ne falsche version gepostet, habs geupdatet

das problem ist das gleiche. alle LEDs leuchten(also immer 2 im paar, aber pro durchlauf leuchten alle), auch dann, wenn ein sensor abmontiert ist und der adc eigentlich kein signal bekommen sollte