Pic Basic Pro kodları:
'****************************************************
'64 sütunlu, sütun kaydırmalı dot matrix led
'16f877 entegre ve sütun kaydırma için 74HC238 entegresi kullanılmıştır
'SOLA KAYAN YAZI
'****************************************************
TRISC=%00000000
TRISB=%00000000
PORTC=%00000000
HIZ VAR BYTE 'yazının kayma hızı
KR_ENI VAR BYTE 'karakterin sütun sayayacı
EN VAR BYTE 'karakterin sütun sayısı
TMR VAR WORD 'bir satırın gösterim süresi
YAZI_SEC VAR BYTE 'Yazıların sıralanması
KAYMA VAR BYTE 'for-next değişkeni
TE VAR BYTE 'for-next değişkeni (hız sayacı)
IN VAR BYTE 'for-next değişkeni
KR_AL VAR BYTE 'sıradaki karakteri alma
KR_SIRASI VAR BYTE 'kodlanmış karakter sıralaması
ALINAN_KR VAR BYTE 'alınan karakter
KR VAR BYTE[8] 'karakter sütunları
SUTUN VAR BYTE[64] 'sütun adresi
HIZ=0
PORTB=255
KR_ENI=0
TMR=1000
YAZI_SEC=0
IN=0
'*** ANA PROGRAM ***
SIRALA:
BRANCH YAZI_SEC,[YAZI_1,YAZI_2,YAZI_3,YAZI_4,YAZI_5,YAZI_6]
YAZI_1:
FOR KR_AL=0 TO 23 'girilen karakter sayısı-1
LOOKUP KR_AL,["www.elektrikdersimiz.lovestoblog.com"],ALINAN_KR
GOSUB KARAKTER
FOR KR_ENI=0 TO EN
GOSUB SOLA_KAYDIR
NEXT KR_ENI
NEXT KR_AL
GOSUB BOSLUK
FOR KAYMA=0 TO 63
GOSUB SOLA_KAYDIR
NEXT KAYMA
GOTO YAZI_SEC_SAYAC:
YAZI_2:
FOR KR_AL=0 TO 25 'girilen karakter sayısı-1
LOOKUP KR_AL,["ABCDEFGHIJKLMNOPQRSTUVWXYZ"],ALINAN_KR
GOSUB KARAKTER
FOR KR_ENI=0 TO EN
GOSUB SOLA_KAYDIR
NEXT KR_ENI
NEXT KR_AL
GOSUB BOSLUK
FOR KAYMA=0 TO 63
GOSUB SOLA_KAYDIR
NEXT KAYMA
GOTO YAZI_SEC_SAYAC:
YAZI_3:
FOR KR_AL=0 TO 25 'girilen karakter sayısı-1
LOOKUP KR_AL,["abcdefghijklmnopqrstuvwxyz"],ALINAN_KR
GOSUB KARAKTER
FOR KR_ENI=0 TO EN
GOSUB SOLA_KAYDIR
NEXT KR_ENI
NEXT KR_AL
GOSUB BOSLUK
FOR KAYMA=0 TO 63
GOSUB SOLA_KAYDIR
NEXT KAYMA
GOTO YAZI_SEC_SAYAC:
YAZI_4:
FOR KR_AL=0 TO 30 'girilen karakter sayısı-1
LOOKUP KR_AL,["! ' # $ % & ( ) ? - . : , < > @"],ALINAN_KR
GOSUB KARAKTER
FOR KR_ENI=0 TO EN
GOSUB SOLA_KAYDIR
NEXT KR_ENI
NEXT KR_AL
GOSUB BOSLUK
FOR KAYMA=0 TO 63
GOSUB SOLA_KAYDIR
NEXT KAYMA
GOTO YAZI_SEC_SAYAC:
YAZI_5:
FOR KR_AL=0 TO 9 'girilen karakter sayısı-1
LOOKUP KR_AL,["0123456789"],ALINAN_KR
GOSUB KARAKTER
FOR KR_ENI=0 TO EN
GOSUB SOLA_KAYDIR
NEXT KR_ENI
NEXT KR_AL
GOSUB BOSLUK
FOR KAYMA=0 TO 63
GOSUB SOLA_KAYDIR
NEXT KAYMA
GOTO YAZI_SEC_SAYAC:
YAZI_6:
FOR KR_AL=0 TO 18 'girilen karakter sayısı-1
LOOKUP KR_AL,["ilkin43@hotmail.com"],ALINAN_KR
GOSUB KARAKTER
FOR KR_ENI=0 TO EN
GOSUB SOLA_KAYDIR
NEXT KR_ENI
NEXT KR_AL
GOSUB BOSLUK
FOR KAYMA=0 TO 63
GOSUB SOLA_KAYDIR
NEXT KAYMA
GOTO YAZI_SEC_SAYAC:
'*** ALT PROGRAMLAR ***
KARAKTER:
'lookdown komutuyla alınan karaktere sıra numarası verilir
'branch komutuyla sıradaki karaktere göre karakter kodlarına gönderir
LOOKDOWN ALINAN_KR,["0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",_
"abcdefghijklmnopqrstuvwxyz!'#$%&()?- .:,<>@"],KR_SIRASI
BRANCHL KR_SIRASI,[SIFIR,BIR,IKI,UC,DORT,BES,ALTI,YEDI,SEKIZ,DOKUZ,_
A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,_
_a,_b,_c,_d,_e,_f,_g,_h,_i,_j,_k,_l,_m,_n,_o,_p,_q,_r,_s,_t,_U,_v,_w,_x,_y,_z,_
UNLEM,kesme,diyez,dolar,yuzde,ve,parantezac,parantezkapa,soru,_
TIRE,bosluk,nokta,ikinokta,virgul,kucuktur,buyuktur,guzele]
SOLA_KAYDIR:
FOR IN=0 TO 62
SUTUN[IN]=SUTUN[IN+1]
NEXT IN
SUTUN[63]=KR[1]
FOR IN=1 TO 5
KR[IN]=KR[IN+1]
NEXT IN
GOSUB TARAMA
RETURN
TARAMA:
FOR TE=0 TO HIZ 'Tarama tekrar sayısı (kayma hızı ayarı)
FOR IN=0 TO 63
PORTC=IN
PORTB=~SUTUN[IN]
PAUSEUS TMR
portb=255
NEXT IN
NEXT TE
RETURN
YAZI_SEC_SAYAC:
YAZI_SEC=YAZI_SEC+1
IF YAZI_SEC=6 THEN YAZI_SEC=0
GOTO SIRALA
'*** KARAKTER KODLARI ***
A:
EN=5
KR[1]=126
KR[2]=9
KR[3]=9
KR[4]=9
KR[5]=126
KR[6]=0
RETURN
B:
EN=5
KR[1]=127
KR[2]=73
KR[3]=73
KR[4]=73
KR[5]=54
KR[6]=0
RETURN
C:
EN=5
KR[1]=62
KR[2]=65
KR[3]=65
KR[4]=65
KR[5]=34
KR[6]=0
RETURN
D:
EN=5
KR[1]=127
KR[2]=65
KR[3]=65
KR[4]=65
KR[5]=62
KR[6]=0
RETURN
E:
EN=5
KR[1]=127
KR[2]=73
KR[3]=73
KR[4]=73
KR[5]=65
KR[6]=0
RETURN
F:
EN=5
KR[1]=127
KR[2]=9
KR[3]=9
KR[4]=9
KR[5]=1
KR[6]=0
RETURN
G:
EN=5
KR[1]=62
KR[2]=65
KR[3]=73
KR[4]=73
KR[5]=58
KR[6]=0
RETURN
H:
EN=5
KR[1]=127
KR[2]=8
KR[3]=8
KR[4]=8
KR[5]=127
KR[6]=0
RETURN
I:
EN=3
KR[1]=65
KR[2]=127
KR[3]=65
KR[4]=0
KR[5]=0
KR[6]=0
RETURN
J:
EN=4
KR[1]=32
KR[2]=64
KR[3]=65
KR[4]=63
KR[5]=1
KR[6]=0
RETURN
K:
EN=5
KR[1]=127
KR[2]=8
KR[3]=20
KR[4]=34
KR[5]=65
KR[6]=0
RETURN
L:
EN=5
KR[1]=127
KR[2]=64
KR[3]=64
KR[4]=64
KR[5]=64
KR[6]=0
RETURN
M:
EN=5
KR[1]=127
KR[2]=2
KR[3]=4
KR[4]=2
KR[5]=127
KR[6]=0
RETURN
N:
EN=5
KR[1]=127
KR[2]=4
KR[3]=8
KR[4]=16
KR[5]=127
KR[6]=0
RETURN
O:
EN=5
KR[1]=62
KR[2]=65
KR[3]=65
KR[4]=65
KR[5]=62
KR[6]=0
RETURN
P:
EN=5
KR[1]=127
KR[2]=9
KR[3]=9
KR[4]=9
KR[5]=6
KR[6]=0
RETURN
Q:
EN=5
KR[1]=62
KR[2]=65
KR[3]=65
KR[4]=97
KR[5]=126
KR[6]=0
RETURN
R:
EN=5
KR[1]=127
KR[2]=9
KR[3]=25
KR[4]=41
KR[5]=70
KR[6]=0
RETURN
S:
EN=5
KR[1]=38
KR[2]=73
KR[3]=73
KR[4]=73
KR[5]=50
KR[6]=0
RETURN
T:
EN=5
KR[1]=1
KR[2]=1
KR[3]=127
KR[4]=1
KR[5]=1
KR[6]=0
RETURN
U:
EN=5
KR[1]=63
KR[2]=64
KR[3]=64
KR[4]=32
KR[5]=127
KR[6]=0
RETURN
V:
EN=5
KR[1]=31
KR[2]=32
KR[3]=64
KR[4]=32
KR[5]=31
KR[6]=0
RETURN
W:
EN=5
KR[1]=63
KR[2]=64
KR[3]=56
KR[4]=64
KR[5]=63
KR[6]=0
RETURN
X:
EN=5
KR[1]=99
KR[2]=20
KR[3]=8
KR[4]=20
KR[5]=99
KR[6]=0
RETURN
Y:
EN=5
KR[1]=3
KR[2]=4
KR[3]=120
KR[4]=4
KR[5]=3
KR[6]=0
RETURN
Z:
EN=5
KR[1]=97
KR[2]=81
KR[3]=73
KR[4]=69
KR[5]=67
KR[6]=0
RETURN
_A: 'a
EN=5
KR[1]=32
KR[2]=84
KR[3]=84
KR[4]=84
KR[5]=120
KR[6]=0
RETURN
_B: 'b
EN=5
KR[1]=127
KR[2]=68
KR[3]=68
KR[4]=68
KR[5]=56
KR[6]=0
RETURN
_C: 'c
EN=5
KR[1]=56
KR[2]=68
KR[3]=68
KR[4]=68
KR[5]=40
KR[6]=0
RETURN
_D: 'd
EN=5
KR[1]=56
KR[2]=68
KR[3]=68
KR[4]=68
KR[5]=127
KR[6]=0
RETURN
_E: 'e
EN=5
KR[1]=56
KR[2]=84
KR[3]=84
KR[4]=84
KR[5]=24
KR[6]=0
RETURN
_F: 'f
EN=4
KR[1]=4
KR[2]=126
KR[3]=5
KR[4]=5
KR[5]=0
KR[6]=0
RETURN
_G: 'g
EN=5
KR[1]=8
KR[2]=84
KR[3]=84
KR[4]=84
KR[5]=56
KR[6]=0
RETURN
_H: 'h
EN=5
KR[1]=127
KR[2]=8
KR[3]=4
KR[4]=4
KR[5]=120
KR[6]=0
RETURN
_I: 'i
EN=3
KR[1]=68
KR[2]=125
KR[3]=64
KR[4]=0
KR[5]=0
KR[6]=0
RETURN
_J: 'j
EN=3
KR[1]=32
KR[2]=68
KR[3]=61
KR[4]=0
KR[5]=0
KR[6]=0
RETURN
_K: 'k
EN=4
KR[1]=127
KR[2]=16
KR[3]=40
KR[4]=68
KR[5]=0
KR[6]=0
RETURN
_L: 'l
EN=2
KR[1]=63
KR[2]=64
KR[3]=0
KR[4]=0
KR[5]=0
KR[6]=0
RETURN
_M: 'm
EN=5
KR[1]=124
KR[2]=4
KR[3]=120
KR[4]=4
KR[5]=120
KR[6]=0
RETURN
_N: 'n
EN=5
KR[1]=124
KR[2]=8
KR[3]=4
KR[4]=4
KR[5]=120
KR[6]=0
RETURN
_O:
EN=5 'o
KR[1]=56
KR[2]=68
KR[3]=68
KR[4]=68
KR[5]=56
KR[6]=0
RETURN
_P: 'p
EN=5
KR[1]=124
KR[2]=20
KR[3]=20
KR[4]=20
KR[5]=8
KR[6]=0
RETURN
_Q: 'q
EN=5
KR[1]=8
KR[2]=20
KR[3]=20
KR[4]=20
KR[5]=124
KR[6]=0
RETURN
_R: 'r
EN=5
KR[1]=124
KR[2]=8
KR[3]=4
KR[4]=4
KR[5]=8
KR[6]=0
RETURN
_S: 's
EN=5
KR[1]=72
KR[2]=84
KR[3]=84
KR[4]=84
KR[5]=36
KR[6]=0
RETURN
_T: 't
EN=3
KR[1]=4
KR[2]=63
KR[3]=68
KR[4]=0
KR[5]=0
KR[6]=0
RETURN
_U: 'u
EN=5
KR[1]=60
KR[2]=64
KR[3]=64
KR[4]=32
KR[5]=124
KR[6]=0
RETURN
_V: 'v
EN=5
KR[1]=28
KR[2]=32
KR[3]=64
KR[4]=32
KR[5]=28
KR[6]=0
RETURN
_W: 'w
EN=5
KR[1]=60
KR[2]=64
KR[3]=48
KR[4]=64
KR[5]=60
KR[6]=0
RETURN
_X: 'x
EN=5
KR[1]=68
KR[2]=40
KR[3]=16
KR[4]=40
KR[5]=68
KR[6]=0
RETURN
_Y: 'y
EN=5
KR[1]=12
KR[2]=80
KR[3]=80
KR[4]=80
KR[5]=60
KR[6]=0
RETURN
_Z: 'z
EN=5
KR[1]=68
KR[2]=100
KR[3]=84
KR[4]=76
KR[5]=68
KR[6]=0
RETURN
UNLEM:
EN=1
KR[1]=95
KR[2]=0
KR[3]=0
KR[4]=0
KR[5]=0
KR[6]=0
RETURN
CIFTTIRNAK: ' "
EN=4
KR[1]=7
KR[2]=0
KR[3]=0
KR[4]=7
KR[5]=0
KR[6]=0
RETURN
KESME: ' '
EN=2
KR[1]=5
KR[2]=3
KR[3]=0
KR[4]=0
KR[5]=0
KR[6]=0
RETURN
DIYEZ: '#
EN=5
KR[1]=20
KR[2]=127
KR[3]=20
KR[4]=127
KR[5]=20
KR[6]=0
RETURN
DOLAR : '$
EN=5
KR[1]=36
KR[2]=42
KR[3]=127
KR[4]=42
KR[5]=18
KR[6]=0
RETURN
YUZDE: ' %
EN=5
KR[1]=35
KR[2]=19
KR[3]=8
KR[4]=100
KR[5]=98
KR[6]=0
RETURN
VE: ' &
EN=5
KR[1]=54
KR[2]=73
KR[3]=85
KR[4]=34
KR[5]=80
KR[6]=0
RETURN
PARANTEZAC: ' (
EN=2
KR[1]=62
KR[2]=65
KR[3]=0
KR[4]=0
KR[5]=0
KR[6]=0
RETURN
PARANTEZKAPA: ' )
EN=2
KR[1]=65
KR[2]=62
KR[3]=0
KR[4]=0
KR[5]=0
KR[6]=0
RETURN
VIRGUL: ',
EN=2
KR[1]=80
KR[2]=48
KR[3]=0
KR[4]=0
KR[5]=0
KR[6]=0
RETURN
TIRE: ' -
EN=4
KR[1]=8
KR[2]=8
KR[3]=8
KR[4]=8
KR[5]=0
KR[6]=0
RETURN
NOKTA: ' .
EN=2
KR[1]=96
KR[2]=96
KR[3]=0
KR[4]=0
KR[5]=0
KR[6]=0
RETURN
IKINOKTA: ' :
EN=2
KR[1]=54
KR[2]=54
KR[3]=0
KR[4]=0
KR[5]=0
KR[6]=0
RETURN
SORU: ' ?
EN=5
KR[1]=2
KR[2]=1
KR[3]=89
KR[4]=5
KR[5]=2
KR[6]=0
RETURN
BOSLUK:
EN=4
KR[1]=0
KR[2]=0
KR[3]=0
KR[4]=0
KR[5]=0
KR[6]=0
RETURN
KUCUKTUR: '<
EN=4
KR[1]=8
KR[2]=20
KR[3]=34
KR[4]=65
KR[5]=0
KR[6]=0
RETURN
BUYUKTUR: ' >
EN=4
KR[1]=65
KR[2]=34
KR[3]=20
KR[4]=8
KR[5]=0
KR[6]=0
RETURN
GUZELE: ' @
EN=5
KR[1]=62
KR[2]=65
KR[3]=93
KR[4]=85
KR[5]=94
KR[6]=0
RETURN
SIFIR: ' 0
EN=5
KR[1]=62
KR[2]=81
KR[3]=73
KR[4]=69
KR[5]=62
KR[6]=0
RETURN
BIR: ' 1
EN=4
KR[1]=66
KR[2]=66
KR[3]=127
KR[4]=64
KR[5]=0
KR[6]=0
RETURN
IKI: ' 2
EN=5
KR[1]=98
KR[2]=81
KR[3]=73
KR[4]=73
KR[5]=70
KR[6]=0
RETURN
UC: ' 3
EN=5
KR[1]=34
KR[2]=73
KR[3]=73
KR[4]=73
KR[5]=54
KR[6]=0
RETURN
DORT:
EN=5
KR[1]=24
KR[2]=20
KR[3]=18
KR[4]=127
KR[5]=16
KR[6]=0
RETURN
BES:
EN=5
KR[1]=47
KR[2]=69
KR[3]=69
KR[4]=69
KR[5]=57
KR[6]=0
RETURN
ALTI:
EN=5
KR[1]=62
KR[2]=73
KR[3]=73
KR[4]=73
KR[5]=50
KR[6]=0
RETURN
YEDI:
EN=5
KR[1]=113
KR[2]=9
KR[3]=5
KR[4]=3
KR[5]=1
KR[6]=0
RETURN
SEKIZ:
EN=5
KR[1]=54
KR[2]=73
KR[3]=73
KR[4]=73
KR[5]=54
KR[6]=0
RETURN
DOKUZ:
EN=5
KR[1]=38
KR[2]=73
KR[3]=73
KR[4]=73
KR[5]=62
KR[6]=0
RETURN
Dosyaları indirmek için tıklayınız...
0 Yorumlar