16f887 resetleme

Başlatan vatandas30, 25 Mart 2013, 12:43:08

vatandas30

arkadaşlar.
yeni yaptığım devrede bu pici kullandım. dahili osilatörü kullandım. diğer piclerde olduğu gibi mclr yi 10k ile pull-up yapıp buton bağlamıştım. bir de baktım resetlenmiyor. datasheetinden baktım, anladığım kadarı ile dahili osilatörde iken mclr den resetlenmiyor. doğru mu?
eğer öyle ise resetlemek için ne yapmak lazım. pratik bir yolu var mı?

Maxim

mclr ucunu config ayarından kapatmışsınız
mclr_off
o yüzden reset olmuyor

vatandas30

@ __config _CONFIG1, _INTRC_OSC_NOCLKOUT & _WDT_OFF & _DEBUG_OFF & _FCMEN_OFF & _IESO_OFF & _BOR_OFF & _CP_OFF & _MCLRE_ON & _PWRTE_ON & _LVP_OFF
PORTA=0:portb=0:portc=0:portd=0:porte=0
TRISA=%00000000
TRISB=%00000000
TRISC=%11111111
TRISD=%11111111
TRISE=%0000   
define osc 4
ANSEL= 0 'A portu analog pinler iptal
ANSELH=0  'B portu Analog pinler iptal
CM1CON0=0 'C1 Komparatör iptal
CM2CON0=0 'C2 Komparatör iptal
WPUB=0  'PORTB pullup lar kapalı


mclr açık. ama datasheet de söyle birşey yazıyor."Pull-up activated only with external MCLRconfiguration"
bu ifade benim anladığım kadarı ile harici osilatörde mclr reset olarak kullanılabilir. yanlış mıyım?

ferit06

#3
Alıntı yapılan: vatandas30 - 25 Mart 2013, 13:00:35


mclr açık. ama datasheet de söyle birşey yazıyor."Pull-up activated only with external MCLRconfiguration"
bu ifade benim anladığım kadarı ile harici osilatörde mclr reset olarak kullanılabilir. yanlış mıyım?

ingilizce bilmiyorsanız google translate kullanın
Pull-up activated only with external MCLRconfiguration  ==>  Pull-up dış MCLRconfiguration sadece aktive

olarak çeviriyor. ( yani MCLR yi dişarıdan kullandığınızda yani sizin yapmış olduğunuz gibi MCLR_ON ise)  ise pull up kullanabilisiniz diyor.

Pull-up ların harici osilator ile ilgisi yok. Butonunuzun çalıştığından eminmisiniz?


vatandas30

google yi kullanmamıştım. externali görünce harici osilatör sandım üstad. 
yaptığım devrede ekran led displayli. başka pic kullandığımda ekranı normalde temizlemiyordum. resetleyince kendiliğinden temizleniyordu.
sorunu şöyle çözdüm. start etiketinden önce ekran temizleme yaptım.

SAYI=0                            'ekranı temizle
    SHIFTOUT DPIN,CPIN,1,[SAYI]   
    HIGH LATCH2:PAUSEUS 2:LOW LATCH2
    HIGH LATCH1:PAUSEUS 2:LOW LATCH1

START: