include "modedefs.bas"DEFINE HSER_RCSTA 90h ' Enable serial port & continuous receive
DEFINE HSER_TXSTA 24h ' Enable transmit, BRGH = 1
DEFINE HSER_SPBRG 25 ' 9600 Baud @ 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
RCIE=1
PEIE=1
GIE=1
'9600 baun ayarları
ON INTERRUPT GOTO INT 'seri porttan veri gelerse INT etiketine git
'buradan sonra normal program kodların yer alacakartık seri porttan veri gelirse kesme gerçekleşir ve 'INT etiketine gider
basla: 'seri haberleşme kesmesini yakalaması için program içinde pause komutlarını 'olabildiğince az kullan
pause 5
goto basla
DISABLE
INT:
GIE=0
HSERIN [geldi]
pause 10
hserout [geldi]
if geldi = "1" then high portb.0 ' 1 tuşuna basılırsa portb.0 1 olur
if geldi = "0" then lowportb.0 ' 0 tuşuna basarsan portb = 0 olur
RCIF=0
GIE=1
Resume
enable