ADC Problem

Gast #559103
Lesenswert?

Hallo zusammen,

ich versuche nun schon ne ganze Weile den ADC eines atiny15 zum laufen 
zu bekommen. Dazu habe ich mir dieses minni Programm hier geschrieben:
1
.include "tn15def.inc"
2

3
.def temp = r16
4

5
;Port als Ausgang definieren
6
ldi temp, 0xFF
7
out DDRB, temp
8

9
;ADC einrichten
10
ldi temp, (1 << REFS0 | 1 << REFS1 | 1 << ADLAR | 1 << MUX0)
11
out ADMUX, temp
12
ldi temp, (1 << ADEN | 1 << ADPS2)
13
out ADCSR, temp
14

15

16
;PWM Timer starten
17
ldi temp, (1 << PWM1 | 1 << COM1A1 | 1 << CS12 | 1 << CS10)
18
out TCCR1, temp
19

20
;ADC wert auslesen und in Compareregister schreiben
21
auslesen:
22

23
sbi ADCSR, ADSC
24
  
25
  wait_adc: 
26
    sbic ADCSR, ADSC
27
    rjmp wait_adc
28
  
29
  in temp, ADCH
30
  out OCR1A, temp
31
rjmp auslesen
32

33
loop:
34
rjmp loop

Ähnlich hatte ich dies schon auf einem atmega8 am laufen, da hats ohne 
Probleme funktioniert. Nur jetzt stelle ich folgendes fest:

Ich habe einen Poti an PB2 angeschlossen. Sobald der Poti mit PB2 
verbunden ist, fällt die spannung am Schleifer auf 0.11V ab, egal welche 
Stellung der Poti hat. Ist er nicht angeschlossen werkelt er korrekt.

Was mach ich hier falsch?

Toni
Gast #559112
Lesenswert?

ehm k :)
habe da schon rumprobiert.

ldi temp, 0x00
out DDRB, temp
out PORTB, temp

aber auch so hats nicht den gewünschten effekt.
So messe ich an PB2 dann eien spannung von 4V ... Sie ändert sich zwar, 
wenn ich den Poti veränder, aber nicht im erwarteten bereich. Pendelt 
irgendwo zwischen 1.2V - 4.5V.

Toni
Gast #559136
Lesenswert?

Danke jetzt funktionierts :)
habe das vorhin auch probiert, einzelne Werte auf eingang bzw ausgang zu 
setzten, nur hab ich nicht ebdacht, dass nur 6 Pins von Portb nach außen 
geführt sind.

Wie gesagt es funktioniert nun, nur eine verständissfrage hätte ich 
noch.
Wenn der Poti nicht angeschlossen sit kann ich eine spannung von 0-2.5V 
einstellen und auch nachmessen. Sobald er aber mit PB2 verbunden ist 
kann ich spannungen von 0-4.x V messen?

Woher kommt das? Ist das Normal?

Toni

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren