Moin
Nach langer Zeit kann ich mich endlich wieder diesem Problem zu wenden hatte mit einem Schulprojekt den ganzen Monat zu tun.
Also hab das behoben bekommen mit dem aufhängen hab einfach waitms 2 gleich in den anfang gesetzt.
Code:
$regfile = "m32def.dat" 'Konfiguration auf ATmega 32
$crystal = 16000000 'Quarztakt 16MHz
'-----------------------------Configuration-------------------------------------
Config Portb = Output
Config Portd = Output
Dim Anz1u2 As Byte
Dim Anz3u4 As Byte
Dim Var1 As Byte
Dim Var2 As Byte
Dim Adcvar As Long
Dim X As Word
Dim V24 As Long
Admux = &B11101001
Adcsr = &B11100111
'-----------------------------Dimensionierung-----------------------------------
'----------------------------Hauptprogramm--------------------------------------
Do
Waitms 2
Var1 = 0
Var2 = 0
Adcvar = Adch
V24 = Adcvar
Rotate V24 , Left , 2
Adcvar = Adcl
Rotate Adcvar , Right , 6
V24 = V24 + Adcvar
'V24 = V24 * 1000
'V24 = V24 / 4391
Adcvar = V24
'Waitms 100
For X = 1 To Adcvar Step 1
Var1 = Var1 + 1
If Var1 = 100 Then
Var2 = Var2 + 1
Var1 = 0
End If
Next
Anz1u2 = Makebcd(var1)
Anz3u4 = Makebcd(var2)
Portb = Anz1u2
Portd = Anz3u4
Loop
End
Allerdings messe ich nur bis 511 das wäre aber 9bittig gemessen....
Was mach ich falsch beim Bits drehen? Ich komme einfach nicht auf 1023.....
Zum testen hab ich den adc auch über einen Spannungsteiler an die Versorgungsspannung gelegt um einfach einmal dieses 24V Problem beseitigen.
Danke für die Beschaltung des Shunt werde das so einmal Probieren.
Gruß Jonas
Lesezeichen