16F628 yardım ..

Başlatan Maxim, 08 Ocak 2007, 10:51:10

Maxim

Birkaç sorunum var ,
Forumda daha önce yazılanları okudum ama hala birkaç sıkıntı var ,

- 14 adet dijital çıkış almak istiyorum ,çıkışlara 14 tane led takılı gibi düşünebiliriz .
- RA5/MCLR giriş olarak tanımlı
- PORTB.3 CCP PIN girişi olarak set edilmiş durumda olmalı .
-internal Rc osilatörü kullanılmıştır .

problemlerim şunlar :

Basit bir program yaptım ,şimdilik sırası ile 14 tane led yanıyor .

1-PORTA.4 den çıkış alamadım ?

2-MCLR girişi aktif olunca nasıl bir interrupt tanımlaması yaparım ?

3-Normalde CCP girişindeki sinyale göre ledler yanacak ,bu giriş tanımlamasını doğru yapamadım galiba ve proteusta bu girişteki değeri nasıl ? debug ederim yani nasıl görürüm ?


device 16f628
xtal =4

CONFIG INTRC_OSC_NOCLKOUT, WDT_OFF, PWRTE_ON, LVP_OFF, MCLRE_OFF

CMCON=7 'COMPARATÖRLER KAPALI
ALL_DIGITAL = TRUE

TRISA =%00100000 ' RA5 giriş diğerleri çıkış
TRISB = %00000000 'hepsi çıkış

DECLARE CCP1_PIN PORTb.3

DIM WRD as WORD
SYMBOL giris = PORTb.3

Loop:
WRD = COUNTER giris , 100,

PORTA=%00000000 
PORTB=%00000000

IF PORTA.5=1 THEN
PORTA=%11111111 
PORTB=%11111111
ENDIF

DELAYMS 500 
PORTB.7=1
DELAYMS 200
PORTB.6=1
DELAYMS 200
PORTB.5=1
DELAYMS 200
PORTB.4=1
DELAYMS 200
PORTB.2=1
DELAYMS 200
PORTB.1=1
DELAYMS 200
PORTB.0=1
DELAYMS 200

PORTA.4=1  '?????
DELAYMS 200
PORTA.3=1
DELAYMS 200
PORTA.2=1
DELAYMS 200
PORTA.1=1
DELAYMS 200
PORTA.0=1
DELAYMS 200
PORTA.7=1  
DELAYMS 200
PORTA.6=1  
DELAYMS 200
PORTA=%00000000 
PORTB=%00000000
DELAYMS 250
PORTA=%11111111 
PORTB=%11111111
DELAYMS 250
PORTA=%00000000 
PORTB=%00000000
DELAYMS 250
PORTA=%11111111 
PORTB=%11111111
DELAYMS 250
PORTA=%00000000 
PORTB=%00000000
DELAYMS 250
PORTA=%11111111 
PORTB=%11111111
DELAYMS 250

GOTO LOOP

ete

PortA.4 open collector çalışır. Dolayısıyla bir pull-up direnci ile normal işlevini yerine getirir.  Pin'e 1 adet 10K pull-up direnci bağlayın. Bu hemen hemen tüm pic modelleri için geçerlidir.

PortA.5 ucu aynı zamanda MCLR olduğu için yalnızca giriş olarak düzenlenebilir ve her hangi bir kesme'ye bağlanamaz.

Ete
Bilgi hazinedir paylaştıkça büyür.            http://etepic.com