Multichannel ADC problem!

B

bing2005

Guest
Hvordan at vælge flere kanaler ved at bruge PIC microcontroller? Everytimes, jeg prøver med mere end 1 kanal, vil output altid hoppe rundt. Jeg plejede PICC at skrive kildekoden. Please hjælp mig. Tak, gutter. Den nedenstående kildekode er 2 kanaler ADC:
Code:
 # include # include "delay.c" # include "delay.h" void init_adc (void); void select1 (void); void Select2 (void); void OUTPUT1 (void ); void output2 (void); unsigned int resultat, result1, temp, temp1; void config (void) {TRISA = 0x2f; TRISB = 0x00; PORTA = 0x00; PORTB = 0x00;} void main (void) {config () ; init_adc (), mens (1) {select1 (); temp = 0x00; DelayUs (10), Select2 (); temp1 = 0x00; DelayUs (10);}} void init_adc (void) {ADCON1 = 0x80;} void select1 (void) {ADCON0 = 0x01; DelayUs (20); ADGO = 1, mens (ADGO) resultat = ((ADRESH = 925 & & resultat
 
Du har ikke angive, hvilke PIC, hvor clockfrequency du bruger. Hvad er inde deley.c og delay.h? venlig hilsen
 
Jeg brugte PIC16f877a til denne kilde kode. Det ur der benyttes frekvensen er 4MHz. delay.h og delay.c er program, der bruges til at forsinke tid. Thanks.
 
OK du prøve at bruge andre værdier for ADCON0 som A / D ur kilde skal være slået til 8 Tosc mellem 2,5 og 5 MHz taktfrekvens Så du nye værdier for ADCON0 ville være 0x41 og 0x49. håber dette hjælper og venlig hilsen
 

Welcome to EDABoard.com

Sponsor

Back
Top