16f684A ADC ölçüm

Başlatan blueboard, 11 Nisan 2015, 13:57:24

blueboard

Ete Hocam , 16F684A ile ADC ölçüm yapmaya çalışıyorum. Ancak çalıştıramadım. ANo ve AN1 den giriş yapacağım. Çıkış portları ise C portları olacak. Sanırım konfigürasyonumda bir hata var. Konfigürasyon kodlarım şunlar:
@ DEVICE PIC16F684
@ DEVICE PIC16F684, BOD_OFF
@ DEVICE PIC16F684, CPD_ON
@ DEVICE PIC16F684, PROTECT_ON
@ DEVICE PIC16F684, MCLR_OFF
@ DEVICE PIC16F684, PWRT_ON
@ DEVICE PIC16F684, INTRC_OSC_NOCLKOUT


OSCCON=%01011011
DEFINE ADC_BITS 10   
DEFINE ADC_CLOCK 2     
DEFINE ADC_SAMPLEUS 50
ADCON0 = %00111001
ADCON1 = %00010000
ANSEL = %00011111 
PortA=0
TRISA = 0
PortC=0
TRISC = %00001000

Teşekkür ederim.

ete

Bu işlemcinin data sheet ine hiç baktınmı bildiğimiz anlamda analog girişi varmı?. Benim bildiğim yok. Yalnızca A portunda komparatörpinleri var ki oda sana yaramaz.

Ete

blueboard

#2
Ete Hocam, datasheet'in 3. sayfasında
"• A/D Converter:
- 10-bit resolution and 8 channels"
ifadesi var.
Bununla ilgili datasheet resimlerini ekliyorum.Teşekkürler.

ete

#3
Kusura bakma ben 16f648A ya bakmışım.
Ete

Data sheete bakılırsa yazdıkların doğru sadece TrisA registerinde An1 pini ni giriş olarak ayarlamamışsın.
Ansel registerinde ise neredeyse bütü A portunu analog olarak ayarlaışsın.
TrisA=%00000011
Ansel=%00000011
Şeklinde ayarlanmalılar.
Define komutları ile adc ayarlaması yapınca adcon1 registerine değer vermemen daha doğru olurdu.
Bu nedenle adcon1=..... Komutunu siliver.
Başkada kusur göremedim.

Ete

blueboard

Teşekkür ederim,deneyeceğim.

Powered by EzPortal