Bascom, Adc am Attiny85

OP #1888954
Lesenswert?

Hallo zusammen,

hab folgendes vor, am PB 3 eine Spannung einlesen (0-5V) am PB 4 eine 
LED einschalten wenn PB 3  > 2.5 V, und das alles in Bascom (hab gerade 
erst Anfangen also bin noch in der Grundlagenforschung).
Programm sieht bis jetzt so aus, funktioniert allerdings nicht, hat 
jemand eine Idee was ich falsch mache? :( Led leuchtet einfach 
immmer......

$regfile = Attiny85.dat
Config Pinb.4 = Output

Dim W As Word
Config Adc = Single , Prescaler = Auto
Start Adc

Do
W = Getadc(3)
If W > 500 Then
Portb.4 = 1
Else
Portb.4 = 0
End If

Loop
End

Danke für die Hilfe und Grüße
Gast #1889024
Lesenswert?

*$regfile = Attiny85.dat* ohne Anführungszeichen ist falsch. In dieser 
Form wird es ignoriert und der per Options eingestellte Chip verwendet. 
Wenn das nun ein anderer ist, wird für den tatsächlichen Chip 
unpassender Code produziert.
OP #1889402
Lesenswert?

Danke schonmal für die Antworten, aber die Fehler kann ich ausschlißen:

-unter Optionen ist auch der Attiny85 eingestellt
-die Konfi von Pinb.4 muss auch richtig sein, da in einem anderen 
Programm er einwandfrei angesteuert wird
-die Hardware ist auch fehlerfrei, bzw hat so funktioniert in jedem 
zuvor geschriebenen Programm, lediglich ein 0-5V Signal ist 
hinzugekommen, und das sind auch wirklich 0-5V ich hab ein Messgerät 
dran...


weiß vielleicht jemand wo der Fehler ist?
oder würdet ihr das Programm anders schreiben?



Liebe Grüße
Gast #1889610
Lesenswert?

Zunächst hat MWS Recht: Die Anführungsstriche müssen da sein:
$regfile = "Attiny85.dat"
sonst läßt es sich gar nicht kompilieren.

In der Simulation läuft das Programm aber. (Ich habe keinen Attiny85
zu Testen in Natura hier)

MfG Paul
Gast #1889659
Lesenswert?

Geht doch ohne Uref.

So geht es:

$regfile = "Attiny85.dat"
Config Pinb.4 = Output

Dim W As Word

Config Adc = Single , Prescaler = Auto
Start Adc

Do
W = Getadc(3)
If W > 500 Then
Portb.4 = 1
Else
Portb.4 = 0
End If

Loop
End

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