Hallo, ich habe momentan ein Problem den Tiny25 zu programmieren. Ich hab ein Poti an PB2 hängen. Ue vom Spannungsteiler sind 5V. Ich verstehe das Datenblatt nicht, wie ich Aref einstellen muss, da alle Pins bereits belegt sind und wenn man Vcc als AREF nimmt darf PB0 nicht angeschlossen sein ("VCC used as Voltage Reference, disconnected from PB0 (AREF)"). Bleibt also nur noch die internen 1,1V als Referenz nu nehmen. Aber wie wird das gemacht wenn der Spannungsteiler 5V Ue bekommt? Ich möchte 0...255 messen über den gesamten Bereich von 0...5V Danke
Phil schrieb: > ("VCC used as Voltage Reference, disconnected from > PB0 (AREF)"). Bedeutet: Die interne AREF (=VCC) ist nicht mit PB0 verbunden, PB0 kann also normal verwendet werden.
Hi
>"VCC used as Voltage Reference, disconnected from PB0 (AREF)".
Na, das heisst doch, das VCC als Refenzspannung benutzt wird und PB0 zu
freien Verfügung steht. Also genau das, was (jedenfalls in meiner
Lesart) du willst.
MfG Spess
OK! Muß ich eigentlich die internen Pullups einschalten? Sonst würden doch die 5V direkt gegen Massen fliessen oder nicht?
Hi >Muß ich eigentlich die internen Pullups einschalten? Sonst würden doch >die 5V direkt gegen Massen fliessen oder nicht? Diesem Gedankengang kann ich jetzt nicht folgen. An dem Pin liegen keine 5V und der Pull-Up liegt zwischen VCC und Pin. MfG Spess
Ich bin neu. Ich habe keine Ahnung wie es am Eingang des AVR aussieht wenn er Spannung misst. Hab jetzt DDR auf Eingan und die Pullups aus. Mein Code funktioniert nach wie vor nicht. ADC bleibt 0:
1 | void init_adc(void){ |
2 | |
3 | ADMUX = 1; //PB2 |
4 | ADCSRA = (1<<ADEN)|(1<<ADPS2)|(1<<ADPS1); //125kHz |
5 | }
|
6 | |
7 | void get_adc(void){ |
8 | |
9 | ADCSRA |= (1<<ADSC); // ADC starten |
10 | while (bit_is_set(ADCSRA,ADSC)) ADC_Val = ADC; // Wandlung |
11 | }
|
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.