Problem mit AD-Eingang

Gast #279431
Lesenswert?
• ▲
▼
Hallo. Bin was Microcontroller anbelangt noch ein Anfänger, und stehe
vor einem Problem.

Habe am AD-Eingang einen Spannungsteiler, der eine Spannung zwischen 2V
und 4V gegen GND annimmt. Diese möchte ich ausgeben. Habe dazu folgendes
Programm in C++ geschrieben:

DEFINE Sensor1 AD[1]

DO

FUNCTION ErmittleTemp (t as BYTE)

   PRINT "Fühler: " & t
   PAUSE 50
END FUNCTION
ErmittleTemp (Sensor1)

LOOP
END

Leider gibt er mir immer den Wert 255 aus. Was habe ich falsch gemacht?
Habe die Spannungen nachgemessen: Uref gegen GND = 5V; AD1 gegen GND =
2,9V

Benutzte die UNIT 2.0 von Conrad. Könnte es auch sein, das der
Microcontroller schon einen Schaden hat?

Für Hilfe wäre ich dankbar.
Gast #279432
Lesenswert?
• ▲
▼
... das ist nie im Leben C++...
Ich kenne mich nicht mit der C-Control aus, aber ich gehe davon aus,
dass es auch da nicht zulässig ist, eine Funktion in einer Schleife zu
deklarieren. Zumindest wäre das nicht besonders sinnvoll.
Gast #279438
Lesenswert?
• ▲
▼
wenn dann so:
aber wo ist deine function ermittletemp? ist das der ganze code?

DEFINE Sensor1 AD[1]
FUNCTION ErmittleTemp (t as BYTE)

DO
   PRINT "Fühler: " & t
   PAUSE 50
END FUNCTION
ErmittleTemp (Sensor1)
LOOP
END
Gast #279439
Lesenswert?
• ▲
▼
des glaube ich net!

Eher so:
DEFINE Sensor1 AD[1]
FUNCTION ErmittleTemp (t as BYTE)

   PRINT "Fühler: " & t
   PAUSE 50
END FUNCTION

DO
   ErmittleTemp (Sensor1)
LOOP
END

erst die Funktion deklarieren, und dann benutzen...
Und vorher noch das Handbuch/Befehlsreferenz benutzen...
Gast #279443
Lesenswert?
• ▲
▼
@Hannes: es ist C-Control, also keine ASM-kompatible Maschine, ohne den
Bootloader zu töten...
@Markus: Wenn du nicht endlich ins Handbuch guckst (da gibt es bestimmt
eine Anleitung zum Auslesen des ADC), komm ich vorbei und nehme dir die
C-Control weg...

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