-
@Klingon77 soviel Platz ist da mit dem Akku drin auch nimmer. Es hat alles sein Plätzchen aber ich darf auch nix verschwenden. Sonst komm ich nicht mehr ran an die Teile.
Bisher hab ich kein Problem bei den Kegelrädern, ich muss die jetzt dann nochmal fein einstellen und ein bischen fetten damit sie ruhiger laufen. Die Ketten-Halterungen sind fest genug. Es treten einfach keine Kräfte die hoch genug sind um das Material so stark zu belasten, dass es Probleme gibt.
-
Hi Leute, seid gestern funktioniert mein ADC Wandler, d.h. ich kann wunderbar eine Spannung zwiscen 0V und 2,5V messen. Ich würde jetzt aber gerne den Messbereich auf 5V ausdehnen (ohne einen Spannungsteiler zu verwenden). Geht das und wenn ja wie?
Ich müsste wohl die Vref irgendwie auf 5V bekommen.
-
Jup Vref auf 5 volt legen und dann auf als referrenzspannung den vref auswählen
-
Nein, AVCC als Referenz auswählen...
-
stimmt da hatte ich garnet dran gedacht ^^
-
Hier, so sieht der Code aus, wo änder ich die Referenzspannung und in was?
Code:
uint16_t ReadChannel(uint8_t mux)
{
uint8_t i;
uint16_t result;
ADMUX = mux; // Kanal waehlen
ADMUX |= (1<<REFS1) | (1<<REFS0); // interne Referenzspannung nutzen
ADCSRA = (1<<ADEN) | (1<<ADPS1) | (1<<ADPS0); // Frequenzvorteiler
// setzen auf 8 (1) und ADC aktivieren (1)
/* nach Aktivieren des ADC wird ein "Dummy-Readout" empfohlen, man liest
also einen Wert und verwirft diesen, um den ADC "warmlaufen zu lassen" */
ADCSRA |= (1<<ADSC); // eine ADC-Wandlung
while ( ADCSRA & (1<<ADSC) ) {
; // auf Abschluss der Konvertierung warten
}
result = ADCW; // ADCW muss einmal gelesen werden,
// sonst wird Ergebnis der nächsten Wandlung
// nicht übernommen.
/* Eigentliche Messung - Mittelwert aus 4 aufeinanderfolgenden Wandlungen */
result = 0;
for( i=0; i<4; i++ )
{
ADCSRA |= (1<<ADSC); // eine Wandlung "single conversion"
while ( ADCSRA & (1<<ADSC) ) {
; // auf Abschluss der Konvertierung warten
}
result += ADCW; // Wandlungsergebnisse aufaddieren
}
ADCSRA &= ~(1<<ADEN); // ADC deaktivieren (2)
result /= 4; // Summe durch vier teilen = arithm. Mittelwert
return result;
}
-
ADMUX |= (1<<REFS1) | (1<<REFS0); // interne Referenzspannung nutzen
zu
ADMUX |= (1<<REFS0); // AVCC als Referenzspannung nutzen
An AREF darf keine externe Spannung anliegen! Ratsam ist ein 100nF von AREF nach GND.
-
Die Frage ist, wie genau ist AVCC ?
-
Die Versorgungsspannung des ADC und eines Teils von Port C
mfG
Markus
-
AVCC ist so genau wie der Spannungsregler für die 5V-Versorgung...