Stan1
Read the fuc.... manual and read the fuc.... datasheet! {Proton IDE: V2.0.1.2 / Proton Compiler: V3.5.4.5}
Hai Coers,
Het programmatje moet analoge waardes in variabelen plaatsen, maar dit gaat ergens niet goed, De gemeten waardes lijken wel willekeurig.
Wie weet wat er fout gaat?
Alvast bedankt.
ADC initalisatie:
TRISA.0 = 1 ' AN0 = Input (Analoog)'
TRISA.1 = 1 ' AN1 = Input (Analoog)'
TRISA.2 = 1 ' AN2 = Input (Analoog)'
TRISA.3 = 1 ' AN3 = Input (Analoog)'
TRISA.5 = 1 ' AN4 = Input (Analoog) AN4 on PortA.5'
Adin_Res 10 '10 - Bit'
Adin_Tad 32_FOSC
Declare adin_delay 50 ' 50 us sample time'
ADCON1 = %11000010 ; AN0 , AN1 , AN2 , AN3, AN4 = Analog , Vref+ = VDD , Vref- = VSS
ADCON0 = %10000001 ' Enable ADC en FOSC/32
Stukje wat de adc waarde in een variabel plaatst:
SubADC:
ADC_Waarde[0] = ADIn 0
DelayUS 1
ADC_Waarde[1] = ADIn 1
DelayUS 1
ADC_Waarde[2] = ADIn 2
DelayUS 1
ADC_Waarde[3] = ADIn 3
DelayUS 1
Return
Stan1
Read the fuc.... manual and read the fuc.... datasheet! {Proton IDE: V2.0.1.2 / Proton Compiler: V3.5.4.5}
Hm, zelf al gevonden.
Wanneer je via adcon1 een range analoge ingangen selecteert,
moet je deze allemaal via ADIn uitlezen. Anders vind er
verschuiving plaats. De ADCON1 range ~010~ geeft aan dat AN0
tot en met AN4 analoog zijn, met ADIn haalde ik de waardes
AN0 tot en met AN3 op en gaar ging het dus fout.
Nu dat ik ook AN4 in lees gaat het goed.