Hallo, ich möchte ein Spannungseingang an PB2 messen und verarbeiten. (ATTiny13A) Wenn ich das in Proteus simuliere erhallte ich immer den Initialen Wert, der beim Start anliegt. Wenn ich das zur Laufzeit mit einem Variablen Wiederstand änder, bekomme ich immer das selbe Ergebnis. Wenn ich den Wiederstand änder und dann die Simulation Starte, bekomme ich auch den entsprechenden Wert, der aber unverändert bleibt. Hier mein Code: rjmp RESET ; Reset Handler RETI ; IRQ0 Handler RETI ; PCINT0 Handler RETI ; Timer0 Overflow Handler RETI ; EEPROM Ready Handler RETI ; Analog Comparator Handler RETI ; Timer0 CompareA Handler RETI ; Timer0 CompareB Handler RETI ; Watchdog Interrupt Handler rjmp ADW ; ADC Conversion Handler RESET: LDI r16, low (RAMEND) OUT SPL, r16 ; Setzt sen StackPointer auf Anfang LDI r16, 0b00000001 OUT ADMUX, r16 ; VCC als Referenz; PB2 als input LDI r16, 0b11011000 out ADCSRA, r16 ; ADC einschalten; Interupts zulassen SEI Loop: rjmp Loop ADW: IN XH, ADCH ; High ablegen IN XL, ADCL ; Low Ablegen SBI ADCSRA, 0x06 ; Convert zulassen RETI Mein Variabler Wiederstand liefert Max 4,45V und Min 0,45V.
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.