İyi günler arkadaşlar.
Yeni bir proje için 16f877 microişlemcisine picbasic ile bir yazılım yazıyorum.Yazılımda "SYMBOL MOTOR=PORTB.6" şeklinde belirttiğim semboller döngü içinde kullanırken ben küçük harfle yazsam bile yukarıdaki sembol değişkenindeki harf uyumunu otomatik olarak sağlıyordu.
Örneğin kod içinde ben "SYMBOL LED=PORTB.6" yazıp döngü içinde "if led=1 then" yazdığımda ifden sonra gelen led değişkeni otomatik olarak "if LED=1 then" oluyordu.Ama yazılımı geliştirmeye devam ederken bir süre sonra sembollerin bazılarının otomatik olarak düzeltilmeyip eski hallerini aldıklarını gördüm.Ben bunun çok farla sembol belirlediğimden kaynaklandığını düşünüyorum.Ve bu olaydan sonra yazılım isisde denemelerimde çalışmamaya başladı.
Yazılım:
'****************************************************************
'* Name : UNTITLED.BAS *
'* Author : [E.T.E] *
'* Notice : Copyright (c) 2007 Ete] *
'* : All Rights Reserved *
'* Date : 28.11.2007 *
'* Version : 1.0 *
'* Notes : *
'* : *
'****************************************************************
@ __config _XT_OSC & _WDT_ON & _PWRTE_ON & _LVP_OFF & _CP_OFF
DEFINE OSC 4
'****************************************************************************
DEFINE HSER_RCSTA 90h ' Enable serial port & continuous receive
DEFINE HSER_TXSTA 24h ' Enable transmit, BRGH = 1
DEFINE HSER_SPBRG 25 ' 9600 Baud @ 4MHz, 0,16%
DEFINE HSER_CLROERR 1 ' Clear overflow automatically
SYMBOL GIE =INTCON.7 'genel interruptları açıyor
SYMBOL PEIE =INTCON.6 'peripheralinterruptları açıyor
SYMBOL RCIE =PIE1.5 'USART Recive interrupt enable bit
SYMBOL RCIF =PIR1.5 'USART Receive interrupt flag bit
SYMBOL SINYAL=PORTB.0
SYMBOL JENA=PORTB.1
SYMBOL JENK=PORTB.2
symbol GAZS=PORTB.3
symbol KOMG=PORTB.4
symbol istop=PORTB.5
SYMBOL MOTOR=PORTB.6
SYMBOL KOMC=PORTD.0
SYMBOL GAZK=PORTD.1
SYMBOL GAZV=PORTD.2
symbol ACK=PORTD.3
symbol GAZSC=PORTD.4
RCIE=1
PEIE=1
ON INTERRUPT GOTO KESME
'******************************************************************************
TRISB=%11111111 'PortB tamamı çıkış yapıldı.
TRISA=%00000000
TRISD=%00000000 'A portu tamamı çıkış yapıldı.
PORTA=0:portb=0:PORTD=0
v VAR word
v1 VAR word
v2 VAR word
SAYGAC VAR word
DEGER VAR word
KAPI VAR BYTE
acik VAR BYTE
SAY VAR word
K VAR BYTE
S VAR BYTE
gazsabit VAR BYTE
S1 VAR BYTE
K1 VAR BYTE
CLEAR
BASLA:
if jenk=0 then ====örneğin burada jenk=0 yerine JENK=0 olamlıydı.
acik=0
endif
if motor=1 then ===buradada aynı şekilde MOTOR=1 olmalıydı
if jena=0 then
acik=1
endif
endif
if istop=0 then
acik=0
endif
if motor=0 then
acik=0
endif
if acik=1 then
if saygac=122 then
if deger>48 then
if deger<57 then
if k=1 then
komc=1
endif
if s=1 then
gazsc=1
gazsabit=1
endif
endif
endif
endif
endif
'---------------------------------------------
'ANA SAYIN NOKTALARI
'-----------------------------------------------
saygac=saygac+1
GOTO BASLA
'*******************************************************************************
DISABLE
KESME:
hSerIn , [WAIT("ETE"),v,v1,v2]
Resume
enable
Ben bunları düzenlesem bile program çalışmıyor.