Hallo zusammen,
ich benötige noch ein wenig Nachhilfe in der AD Wandlung. Ich benutze einen Pic 16f873 und versuche eine Spannung einzulesen. Eigentlich mache ich das wie immer nur dieses mal, bekomme ich nur die hälfte an digits angezeigt ? Unter 1.3V bekomme ich nichts angezeigt und drüber irgendwie nur die hälfte. Z.b. bei 2V 200
Vielleicht hat jemand eine Idee ?
Viele Grüße Sascha
#include <16F876.h>
#device ADC=10
#device *=16
#use delay(clock=4000000)
#fuses xt,NOWDT,NOPROTECT,NOBROWNOUT
#use rs232(baud=2400,parity=N,xmit=PIN_C6,rcv=PIN_C7,bits=8)
void main() {
setup_adc_ports( ALL_ANALOG );
setup_adc(adc_clock_internal);
setup_spi(FALSE);
setup_counters(RTCC_INTERNAL,WDT_18MS);
setup_timer_1(T1_DISABLED);
setup_timer_2(T2_DISABLED,0,1);
disable_interrupts(INT_EXT);
ext_int_edge(L_TO_H);
Setup_CCP1 (CCP_COMPARE_RESET_TIMER);
setup_timer_1 ( T1_INTERNAL | T1_DIV_BY_1 ); // Interner Takt, 1:1
CCP_1=50000; // alle Zyklen
enable_interrupts(INT_CCP1);
disable_interrupts(INT_TIMER1);
enable_interrupts(global);
set_timer1 ( 0 );
set_adc_channel(0);
delay_ms(1);
while (1)
{
druck=read_adc();
delay_ms(1);
printf("Druck2 %4.3lu",druck,"");
}