Programın Adı : PORTB'ye bağlı dört displayle 0-99 taramalı ileri geri sayıcı programı
Not : PORTC'ye bağlı iki transistörü sıra ile seçerek
A VAR BYTE
SAY VAR BYTE
BIRLER VAR BYTE
ONLAR VAR BYTE
ADCON1 = 7
TRISB = $00
TRISC = $00
PORTB = $00
PORTC = $00
SAY = 0
ANA_PROGRAM :
IF PORTA.0=0 THEN
SAY=SAY+1
ENDIF
IF PORTA.1=0 THEN
SAY=SAY-1
ENDIF
BIRLER=SAY DIG 0
ONLAR=SAY DIG 1
GOSUB BIRLERBASIBUL
GOSUB ONLARBASIBUL
GOTO ANA_PROGRAM
END
BIRLERBASIBUL :
PORTC = $01
IF BIRLER=0 THEN PORTB=$3F
IF BIRLER=1 THEN PORTB=$06
IF BIRLER=2 THEN PORTB=$5B
IF BIRLER=3 THEN PORTB=$4F
IF BIRLER=4 THEN PORTB=$66
IF BIRLER=5 THEN PORTB=$6D
IF BIRLER=6 THEN PORTB=$7D
IF BIRLER=7 THEN PORTB=$07
IF BIRLER=8 THEN PORTB=$7F
IF BIRLER=9 THEN PORTB=$6F
RETURN
ONLARBASIBUL :
PORTC = $02
IF ONLAR=0 THEN PORTB=$3F
IF ONLAR=1 THEN PORTB=$06
IF ONLAR=2 THEN PORTB=$5B
IF ONLAR=3 THEN PORTB=$4F
IF ONLAR=4 THEN PORTB=$66
IF ONLAR=5 THEN PORTB=$6D
IF ONLAR=6 THEN PORTB=$7D
IF ONLAR=7 THEN PORTB=$07
IF ONLAR=8 THEN PORTB=$7F
IF ONLAR=9 THEN PORTB=$6F
RETURN
GECIKME :
PAUSE 200
RETURN
Programın Adı : PORTB'ye bağlı dört displayle 0-9999 taramalı ileri-geri sayıcı programı
A VAR BYTE
SAY VAR BYTE
BUL VAR BYTE
DEGER VAR BYTE
BIRLER VAR BYTE
ONLAR VAR BYTE
YUZLER VAR BYTE
BINLER VAR BYTE
ADCON1 = 7
TRISB = $00
TRISC = $00
PORTB = $00
PORTC = $00
SAY = 0
ANA_PROGRAM :
IF PORTA.0=0 THEN SAY=SAY+1
IF PORTA.1=0 THEN SAY=SAY-1
BUL = SAY DIG 0 :GOSUB SAYIBULATA :BIRLER = DEGER
BUL = SAY DIG 1 :GOSUB SAYIBULATA :ONLAR = DEGER
BUL = SAY DIG 2 :GOSUB SAYIBULATA :YUZLER = DEGER
BUL = SAY DIG 3 :GOSUB SAYIBULATA :BINLER = DEGER
PORTC = $01 : PORTB = BIRLER
PORTC = $02 : PORTB = ONLAR
PORTC = $04 : PORTB = YUZLER
PORTC = $08 : PORTB = BINLER
GOTO ANA_PROGRAM
END
SAYIBULATA :
IF BUL=0 THEN DEGER=$3F
IF BUL=1 THEN DEGER=$06
IF BUL=2 THEN DEGER=$5B
IF BUL=3 THEN DEGER=$4F
IF BUL=4 THEN DEGER=$66
IF BUL=5 THEN DEGER=$6D
IF BUL=6 THEN DEGER=$7D
IF BUL=7 THEN DEGER=$07
IF BUL=8 THEN DEGER=$7F
IF BUL=9 THEN DEGER=$6F
RETURN
GECIKME :
PAUSE 200
RETURN