Bis vor 12 Wochen konnte ich kein Bascom und nun stehe ich vor einem kleinen Problem/Aufgabe?
Ich schrieb sonst für die C-Control Main Unit 2.0 in Basic ++ , aber durch Lieferprobleme der CC ,schwang ich auf Mega 32 um und habe auch Pingleiche Module entwickelt.
Erstmal Auszug des Codes:
Code:
$regfile = "m32def.dat"
'$framesize = 32
'$swstack = 32
'$hwstack = 32
$crystal = 16000000
$baud = 9600
Config Lcd = 20 * 2
Config Lcdpin = Pin , Db4 = Portb.0 , Db5 = Portb.1 , Db6 = Portb.2 , Db7 = Portb.3 , E = Portb.6 , Rs = Portb.5
Config Adc = Single , Prescaler = 32 , Reference = Avcc 'Prescaler = Auto '32'
Declare Sub Ad_wandlertest()
Const A_ad = 0
Const B_ad = 1
Dim A As Word
Dim B As Word
'-------------------------------------------------------------------------------
Initlcd
Cls
Waitms 100
Start Adc
'-------------------------------------------------------------------------------
Do
Call AD_wandlertest()
Locate 1,1
LCD "A : ",A
Locate 2,1
LCD "B : ",B
Loop
'---------------------------------------------------------------------------------
Sub Ad_wandlertest()
A = Getadc(x_ad)
B = Getadc(y_ad)
End Sub
'----------------------------------------------------------------------------------
Das ist nur ein Auszug von z.Z. ca 16 K.
Nun meine Frage :
Kann ich im Hintergrund die AD's einlesen lassen ohne Call und in A,B schreiben lassen?
Das jenes per IRQ geht ist mir klar, bei einem.
Aber zwei im Hintergrung?
Erspare ich mir viele CPU Takte AD abwarten damit ..... ?
könnte bitte jemand dahingehend den Code editieren ?
lg Gento
Lesezeichen