16f877a yardım

Başlatan styx75, 30 Mart 2014, 13:45:58

styx75

selam arkadaşlar..
ete bey 7. dersi yani seri iletişimde çok sabit bir devre vermiş 2 buton ile led ve röle çalıştırma..
şimdi bu devreyi bredbroad üzerinde kurdum piclerin her iikiside 16f628 ve gayet güzel çalışıyor ama alıcı pici 16f877a yaptıgım zaman birtürlü çalıştıramadım
osilatör falan sıkıntılımı diyerekten aynı program içerisine basitbir led yak/sön yaptım breadbroad a taktıgımda çalışıyor ama seri iletişimi yaptıramadım..
acaba 16f877a ile ilgili neyi atlıyor olabilirim kodlar aşagıda

@ DEVICE pic16F877A, XT_OSC ' 4 MHz osilatör kullanılacak
@ DEVICE pic16F877A, WDT_OFF ' Watchdog Timer kapalı
@ DEVICE pic16F877A, PWRT_ON    ' Power-On Timer açık
@ DEVICE pic16F877A, BOD_OFF    ' Brown-Out Detect kapalı
@ DEVICE pic16F877A, LVP_OFF    ' Low-Voltage Programlama kapalı
@ DEVICE pic16F877A, CPD_ON    ' Data belleği kod korumalı değil
@ DEVICE pic16F877A, PROTECT_OFF ' Program belleği kod korumalı değil

OPTION_REG=%0000000'dahili Pull up dirençleri aktif edildi ayrıca pullup direncine gerek yok.
INTCON=%10010000 'Tüm Kesmeler aktif ve RB0/INT kesmesi aktif
TRISB=%00000001
ADCON1=7


PortA=0
TrisA=%00000000
PortB=0
TrisB=%00000011
'------------------------------------------------------------------------------
SYMBOL CIKIS=PORTA.0
SYMBOL TUSA=PORTB.0
SYMBOL TUSB=PORTB.1

VER    var  byte
'------------------------------------------------------------------------------
PAUSE 200

VER=0
'------------------------------------------------------------------------------
BASLA: VER=0
       IF TUSA=0 THEN
          VER=88
          gosub gonder
          WHILE TUSA=0
          WEND
       endIF
         
       IF TUSB=0 THEN
           VER=66
           gosub gonder
           WHILE TUSB=0
           WEND
        endif   
           
       PAUSE 100
       GOTO BASLA
'-------------------------ALT PROGRAMLAR---------------------------------------
GONDER:
        SEROUT2 CIKIS,396,["E","T","E",ver]
        SEROUT2 CIKIS,396,["E","T","E",ver]
        return
END

ete

CMCON=7 komutunu ilave et. Komparatörü iptal etmeyi unutmuşsun. Bu nedenle A portu pinlerin doğru çalışmayacaktır.

Ete

styx75

çok ilginc ama olmadı
yazılım aynen böyle cmcon=7 de ilave ettim ama yapamadım başka ne olabilir?

styx75

inanın oy kullandıgım sabah 10 dan buyana bununla ugraşıyorum ama 16f877a ile 16f628a yı seri haberleştiremedim  :D  bunu yapan oldumu hiç deneyimli arkadaşlardan yardım lütfen...

Powered by EzPortal