Hi liebe mikrocontroller.net community Ich versuche eine ADC in mein Programm einzubauen. Leider bekomme ich als Ergebnis nur den Wert 255. Dieser Wert wird von mir aus dem Register ADCH ausgelesen. Ich verwende eine externe 5 V Referenzspannung! Als zu wandelnde Spannung, wird für den Testbetrieb, 1V verwendet. Diese wird von einem Netzgerät zur Verfügung gestellt. Eine weitere Frage von mir wäre was es mit dem Register ADCW auf sich hat. Dieses wird im Tutorial von mikrcontroller.net verwendet. Allerdings habe ich es im Datenblatt nicht gefunden. Bei dem Versuch ADCW auszulesen, habe ich den Wert 192 bekommen. Dieser ändert sich auch bei mehrmaligen auslesen nicht! Zusatzinformation: Ich habe das Programm der ADC hochgeladen. Vl. sieht jemand einen Fehler! Es wird das RN-Control Board verwendet (Falls das Auswirkungen hat) Danke für die Hilfe Christoph
ADCW ist bei manchen AVRs mit aufeinanderfolgenden ADCH und ADCL Adressen ein 16-Bit Register aus den beiden 8-Bit Registern ADCH und ADCL. Ein Beispiel für einen solchen AVR ist der Atmega16. Die Definition von ADCW befindet sich, wenn vorhanden, in einem Includefile für diesen µC (über #include <avr/io.h> bekannt gemacht). Mit ADC.c (1.3 KB) kann ich nix anfangen. Das ist IMHO kein gültiges C-Programm.
Es ist natürlich das gesamte Programm! Das gesamte Programm ist wesentlich länger und ich denke kaum das jemand Interesse hat sich da durch zu ackern. Daher hab ich den Bereich mit der ADC und Init herauskopiert. Im restlichen Programmverlauf kommt keine weitere ADC vor....
2 Dinge * Kannst du aus deinen Fragmenten ein komplettes, möglichst einfaches Testprogramm zusammenstellen? * Warum benutzt du nicht die Tutorialsfunktionen als erste Grundlage für deine Routinen? Zuerst einfach unverändert übernehmen, zum laufen bringen und erst dann abändern.
Christoph schrieb: > Ich verwende eine externe 5 V Referenzspannung! Ganz sicher? Im Programm ist sie ausgewählt, schon richtig. Aber ist die auch an ARef angeschlossen? Mit dem Voltmeter kontrolliert? Was ist, wenn du fürs erste auf interne AVcc umschaltest?
@Peter Wie meinst du Zahlen (mehrzahl?) Befindet sich im ADCH nicht nur eine Zahl? Ansonsten ist es mir egal ob binär oder Dezimal.
Christoph schrieb: > @Peter > Wie meinst du Zahlen (mehrzahl?) ja, ok ich meine Zahl > Befindet sich im ADCH nicht nur eine Zahl? > Ansonsten ist es mir egal ob binär oder Dezimal. richgig, im ADCH ist eine Zahl und send_chr erwartet ein zeichen(eine ziffer der Zahl). Wenn im ADCH ein 7 steht dann bekommt du von deinem Terminalprogramm ein BEEP aber keine 7.
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.