16f88 derlenen kod çalışmıyor

Başlatan agora_meyhanesi42, 16 Şubat 2017, 20:21:37

agora_meyhanesi42



asıl denediğim devre bu kodlarda bunlar alıcı ve vericiden oluşuyor.
verici
@ __config _CONFIG1, _INTRC_CLKOUT & _CCP1_RB3 & _WDT_OFF & _PWRTE_OFF & _MCLR_OFF & _BODEN_OFF & _LVP_OFF & _CPD_OFF & _DEBUG_OFF & _CP_OFF
@ __config _CONFIG2, _FCMEN_OFF & _IESO_ON

define OSC 4
OSCCON=%01111000 
TRISB.0=1
TRISB.1=1
TRISB.3=0
PORTA=0:TRISA=0
PORTB.3=0
CMCON=7
 OPTION_REG=%10000000

deGer var byte

'deGer var bit[7]
'deGer[0]=1
'deGer[1]=0
'deGer[2]=0
'deGer[3]=1
'deGer[4]=1
'deGer[5]=0
'deGer[6]=1
'deGer[7]=1

i var byte

T2CON =%00000101   'Bölücü 1/1 olarak verildi ve TMR2 aktif hale getirildi.
PR2=%11111001                        
'PWM-Peryot= (49+1) x 4 x ¼ x 1 =50 us  ve F=1000/50 = 20 KHz PWM frekansı dır. 




start:
'  pause 10
if portb.0=0 then
while portb.0=0 : wend
deger=%11001100
CCP1CON.2=1  'bu iki komut ile PWM sinyali açılmış olacaktır
CCP1CON.3=1
pause 30 '20000 uS
CCP1CON.2=0  'bu iki komut ile PWM sinyali açılmış olacaktır
CCP1CON.3=0
pause 15  '10000 uS
  
for i=7 to 0 step -1


 if deger.0[i]=1 then
CCP1CON.2=1  'bu iki komut ile PWM sinyali açılmış olacaktır
CCP1CON.3=1
pause 20  '14000 uS
CCP1CON.2=0  'bu iki komut ile PWM sinyali açılmış olacaktır
CCP1CON.3=0
pause 15
else
CCP1CON.2=1  'bu iki komut ile PWM sinyali açılmış olacaktır
CCP1CON.3=1
pause 10    '8000 uS
CCP1CON.2=0  'bu iki komut ile PWM sinyali açılmış olacaktır
CCP1CON.3=0
pause 15
endif

next
i=0
endif

if portb.1=0 then
while portb.1=0 : wend
deger=%01010101
CCP1CON.2=1  'bu iki komut ile PWM sinyali açılmış olacaktır
CCP1CON.3=1
pause 30 '20000 uS
CCP1CON.2=0  'bu iki komut ile PWM sinyali açılmış olacaktır
CCP1CON.3=0
pause 15  '10000 uS
  
for i=7 to 0 step -1


 if deger.0[i]=1 then
CCP1CON.2=1  'bu iki komut ile PWM sinyali açılmış olacaktır
CCP1CON.3=1
pause 20  '14000 uS
CCP1CON.2=0  'bu iki komut ile PWM sinyali açılmış olacaktır
CCP1CON.3=0
pause 15
else
CCP1CON.2=1  'bu iki komut ile PWM sinyali açılmış olacaktır
CCP1CON.3=1
pause 10    '8000 uS
CCP1CON.2=0  'bu iki komut ile PWM sinyali açılmış olacaktır
CCP1CON.3=0
pause 15
endif

next
i=0
endif

'goto start

'gOnder:

pAUSE 200
goto start
End


alıcı
@ __config _CONFIG1, _INTRC_CLKOUT & _CCP1_RB3 & _WDT_OFF & _PWRTE_ON & _MCLR_OFF & _BODEN_OFF & _LVP_OFF & _CPD_OFF & _DEBUG_OFF & _CP_OFF
@ __config _CONFIG2, _FCMEN_OFF & _IESO_ON

define OSC 4
OSCCON=%01111000 
 porta=0
 trisa=0
TRISB=%00000001

OPTION_REG=%00000000
INTCON=%10010000


CMCON=7


Tik var word
deGer var byte
kayiT var byte
kayit =0
i var word

TMR1H = 0
TMR1L = 0   'Reset TMR1

ON INTERRUPT GoTo KESME   	'kesme oluşursa KESME adlı etikete git.

start:
 if kayit =%11001100 then
PORTB.4 =1
endif
if kayit=%01010101 then
PORTB.4=0

endif

  
goto start

disable
Kesme:
   portb.4=1
T1Con.0=1
while portb.0=0 : wend
T1Con.0=0

tik.highbyte=tmr1h
tik.lowbyte=tmr1l
tik=tik/1000
tmr1h=0
tmr1l=0
if tik>27 and tik<32 then
     write 2,tik
          
    for  i=7 to 0 step -1
   
    while portb.0=1 : wend
    t1con.0=1
    while portb.0=0 : wend
    t1con.0=0
    tik.highbyte=tmr1h
    tik.lowbyte=tmr1l
    tik=tik/1000
    tmr1h=0
tmr1l=0
write 3,tik
    if   tik>18 and tik<22   then
             
            kayit.0[i]=1
    elseif tik>8 and tik<12 then
            
            kayit.0[i]=0
    else
    pause 160
    endif
      
    'Reset TMR1
    next
 else
   
      portb.4=0

endif
pause 100 
write 0,kayit

intcon.1=0
resume
enable
end


proteusta sorunsuz iletişim kuruyor ama boarda gelince tık yok
Yüksel Türk ! Senin için yükselmenin hududu yoktur...