-
-
Erfahrener Benutzer
Roboter Experte
Fangen wir mal von hinten an: channel ist eine Variable des Typs uint8_t, die der Funktion (ja das ist eine Funktion) beim Aufrufen als Parameter übergeben wird. Statt uint8_t könnte man auch char als Typ nehmen (hat beides 8 Bit). Im letzten Absatz in der Hauptfunktion (main()), die ja beim Starten des Programms ausgeführt wird, wird eine Variable des Typs uint16_t (16 Bit) erzeugt, die result heißt. In ihr wird der Wert, den die Funktion readADC (die oben definiert ist) zurück gibt, gespeichert. Das zurückgeben geschieht mit "return result" (result ist der digitalisierte Analogwert). Das return 0 in main() tut nichts weiter, als das Programm zu beenden, also eine 0 aus main() zurück zu geben.
Hier: http://www.mikrocontroller.net/artic...-Tutorial:_ADC steht die Beschaltung von AREF
channel ist an dieser Stelle der Parameter der Funktion readADC. Hier musst du nichts verändern. Beim Funktionsaufruf musste du nur eine Zahl, angeben, also nichts mit PORTB oder so. Duch diesen Befehl werden die entsprechenden MUXx Bits im ADMUX Register gesetzt (näheres siehe Link).
Ich hoffe das bringt dich weiter.
mfg
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen