electronics forum

Rules | Recent posts | topic RSS | Search | Register  | Log in

8*32 dot - code provided for pic16F628


Post new topic  Reply to topic    EDAboard.com Forum Index -> Microcontrollers -> 8*32 dot - code provided for pic16F628
Author Message
ilker_32



Joined: 22 Jun 2009
Posts: 39
Location: Turkey


Post28 Jun 2009 20:52   

8*32 dot


8*32 dot - code provided  for pic16F628

Code:
@ DEVICE pic16F628, INTRC_OSC_NOCLKOUT, WDT_OFF 
'kristal harici bağlanacak
cmcon=7   
DATAPIN1 VAR PORTA.0         
CLOCKPIN1 VAR PORTA.1
LATCH   VAR PORTA.2
TRISA=%000000
TRISB=%00000000
kc var byte
kb var byte
k1 var byte
ks var byte           'kaydırma sayısı (sütun sayısı kadar kaydırmak için)
gsatir11 var byte
gsatir12 var byte
gsatir13 var byte
gsatir14 var byte
gsatir21 var byte
gsatir22 var byte
gsatir23 var byte
gsatir24 var byte
gsatir31 var byte
gsatir32 var byte
gsatir33 var byte
gsatir34 var byte
gsatir41 var byte
gsatir42 var byte
gsatir43 var byte
gsatir44 var byte
gsatir51 var byte
gsatir52 var byte
gsatir53 var byte
gsatir54 var byte
gsatir61 var byte
gsatir62 var byte
gsatir63 var byte
gsatir64 var byte
gsatir71 var byte
gsatir72 var byte
gsatir73 var byte
gsatir74 var byte
gsatir81 var byte
gsatir82 var byte
gsatir83 var byte
gsatir84 var byte
satir1 var byte
satir2 var byte
satir3 var byte
satir4 var byte
satir5 var byte
satir6 var byte
satir7 var byte
satir8 var byte
alinan var byte
clear
portb=%11111111      'portb dotmatrisin katotlarına bağlı old. için

start:
kc=0
for kc=0 to 12
lookup kc,["ABCDEFGHIJKLMNOPRSTUVYZ"], alinan
gosub karakter
for kb=0 to ks    'harf genişliği kadar kaydır
for k1=0 to 20    'tarama sayısı
gosub tarama
next k1
gosub kaydir 
pause 5         'bir harfin kayma süresi
next kb
next kc
goto start

karakter:
if alinan=32 then gosub bosluk
if alinan=65 then gosub A
if alinan=66 then gosub B
if alinan=67 then gosub C
if alinan=68 then gosub D
if alinan=69 then gosub E
if alinan=70 then gosub F
if alinan=71 then gosub G
if alinan=72 then gosub H
if alinan=73 then gosub I
if alinan=74 then gosub J
if alinan=75 then gosub K
if alinan=76 then gosub L
if alinan=77 then gosub M
if alinan=78 then gosub N
if alinan=79 then gosub O
if alinan=80 then gosub P
if alinan=82 then gosub R
if alinan=83 then gosub S
if alinan=84 then gosub T
if alinan=85 then gosub U
if alinan=86 then gosub V
if alinan=89 then gosub Y
if alinan=90 then gosub Z

return


kaydir:

gsatir14=gsatir14<<1
gsatir14.0=gsatir13.7
gsatir13=gsatir13<<1
gsatir13.0=gsatir12.7
gsatir12=gsatir12<<1
gsatir12.0=gsatir11.7
gsatir11=gsatir11<<1

gsatir24=gsatir24<<1
gsatir24.0=gsatir23.7
gsatir23=gsatir23<<1
gsatir23.0=gsatir22.7
gsatir22=gsatir22<<1
gsatir22.0=gsatir21.7
gsatir21=gsatir21<<1

gsatir34=gsatir34<<1
gsatir34.0=gsatir33.7
gsatir33=gsatir33<<1
gsatir33.0=gsatir32.7
gsatir32=gsatir32<<1
gsatir32.0=gsatir31.7
gsatir31=gsatir31<<1

gsatir44=gsatir44<<1
gsatir44.0=gsatir43.7
gsatir43=gsatir43<<1
gsatir43.0=gsatir42.7
gsatir42=gsatir42<<1
gsatir42.0=gsatir41.7
gsatir41=gsatir41<<1

gsatir54=gsatir54<<1
gsatir54.0=gsatir53.7
gsatir53=gsatir53<<1
gsatir53.0=gsatir52.7
gsatir52=gsatir52<<1
gsatir52.0=gsatir51.7
gsatir51=gsatir51<<1

gsatir64=gsatir64<<1
gsatir64.0=gsatir63.7
gsatir63=gsatir63<<1
gsatir63.0=gsatir62.7
gsatir62=gsatir62<<1
gsatir62.0=gsatir61.7
gsatir61=gsatir61<<1

gsatir74=gsatir74<<1
gsatir74.0=gsatir73.7
gsatir73=gsatir73<<1
gsatir73.0=gsatir72.7
gsatir72=gsatir72<<1
gsatir72.0=gsatir71.7
gsatir71=gsatir71<<1

gsatir84=gsatir84<<1
gsatir84.0=gsatir83.7
gsatir83=gsatir83<<1
gsatir83.0=gsatir82.7
gsatir82=gsatir82<<1
gsatir82.0=gsatir81.7
gsatir81=gsatir81<<1

gsatir11.0 = satir1.7
gsatir21.0 = satir2.7
gsatir31.0 = satir3.7
gsatir41.0 = satir4.7
gsatir51.0 = satir5.7
gsatir61.0 = satir6.7
gsatir71.0 = satir7.7   
gsatir81.0 = satir8.7

satir1=satir1<<1
satir2=satir2<<1
satir3=satir3<<1
satir4=satir4<<1
satir5=satir5<<1
satir6=satir6<<1
satir7=satir7<<1
satir8=satir8<<1
return


tarama:
 
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir14]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir13]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir12]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir11]
high latch
pauseus 10
low latch
PORTB=%01111111     '1. satır açıldı
PAUSE 1
PORTB=%11111111     '1. satır kapandı

ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir24]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir23]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir22]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir21]
high latch
pauseus 10
low latch
PORTB=%10111111      '2. satır açıldı
PAUSE 1
PORTB=%11111111      '2. satır kapandı

ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir34]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir33]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir32]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir31]
high latch
pauseus 10
low latch
PORTB=%11011111       '3. satır açıldı
PAUSE 1
PORTB=%11111111       '3. satır kapandı

ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir44]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir43]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir42]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir41]
high latch
pauseus 10
low latch
PORTB=%11101111       '4. satır açıldı
PAUSE 1
PORTB=%11111111       '4. satır kapandı

ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir54]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir53]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir52]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir51]
high latch
pauseus 10
low latch
PORTB=%11110111       '5. satır açıldı
PAUSE 1
PORTB=%11111111       '5. satır kapandı

ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir64]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir63]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir62]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir61]
high latch
pauseus 10
low latch
PORTB=%11111011       '6. satır açıldı
PAUSE 1
PORTB=%11111111       '6. satır kapandı

ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir74]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir73]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir72]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir71]
high latch
pauseus 10
low latch
PORTB=%11111101       '7. satır açıldı
PAUSE 1
PORTB=%11111111       '7. satır kapandı

ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir84]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir83]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir82]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir81]
high latch
pauseus 10
low latch
PORTB=%11111110       '8. satır açıldı
PAUSE 1
PORTB=%11111111       '8. satır kapandı

return

bosluk:
ks=3
satir1=%00000000
satir2=%00000000
satir3=%00000000
satir4=%00000000
satir5=%00000000
satir6=%00000000
satir7=%00000000
satir8=%00000000
return

A:
ks=5
satir1=%01110000
satir2=%10001000
satir3=%10001000
satir4=%10001000
satir5=%11111000
satir6=%10001000
satir7=%10001000
satir8=%10001000
return

B:
ks=5
satir1=%11110000
satir2=%10001000
satir3=%10001000 
satir4=%11110000 
satir5=%10001000
satir6=%10001000 
satir7=%10001000 
satir8=%11110000   
return

C:
ks=5
satir1=%01110000
satir2=%10001000
satir3=%10000000 
satir4=%10000000   
satir5=%10000000   
satir6=%10000000   
satir7=%10001000   
satir8=%01110000   
return

_C:
ks=5
satir1=%01110000   
satir2=%10001000 
satir3=%10000000   
satir4=%10000000   
satir5=%10000000   
satir6=%10101000   
satir7=%01110000   
satir8=%00100000   
return

D:
ks=5
satir1=%11110000 
satir2=%10001000
satir3=%10001000 
satir4=%10001000
satir5=%10001000 
satir6=%10001000 
satir7=%10001000 
satir8=%11110000 
return

E:
ks=5
satir1=%11111000   
satir2=%10000000   
satir3=%10000000   
satir4=%11110000   
satir5=%10000000   
satir6=%10000000   
satir7=%10000000   
satir8=%11111000   
return

F:
ks=5
satir1=%11111000 
satir2=%10000000
satir3=%10000000 
satir4=%11110000 
satir5=%10000000
satir6=%10000000 
satir7=%10000000 
satir8=%10000000   
return

G:
ks=5
satir1=%01110000   
satir2=%10001000 
satir3=%10000000   
satir4=%10000000   
satir5=%10111000   
satir6=%10001000   
satir7=%10001000   
satir8=%01110000   
return

_G:
ks=5
satir1=%01110000   
satir2=%00000000 
satir3=%01110000   
satir4=%10001000   
satir5=%10000000   
satir6=%10111000   
satir7=%10001000 
satir8=%01110000   
return

H:
ks=5
satir1=%10001000   
satir2=%10001000
satir3=%10001000   
satir4=%10001000 
satir5=%11111000   
satir6=%10001000   
satir7=%10001000   
satir8=%10001000 
return

I:
ks=1
satir1=%10000000   
satir2=%10000000   
satir3=%10000000   
satir4=%10000000   
satir5=%10000000   
satir6=%10000000   
satir7=%10000000   
satir8=%10000000   
return

_I:
ks=1
satir1=%10000000     
satir2=%00000000   
satir3=%10000000     
satir4=%10000000     
satir5=%10000000     
satir6=%10000000     
satir7=%10000000     
satir8=%10000000   
return

J:
ks=5
satir1=%00001000     
satir2=%00001000     
satir3=%00001000     
satir4=%00001000     
satir5=%00001000     
satir6=%00001000     
satir7=%10001000     
satir8=%01110000 
return

K:
ks=6
satir1=%10001000     
satir2=%10010000   
satir3=%10100000     
satir4=%11000000   
satir5=%10100000     
satir6=%10010000     
satir7=%10001000     
satir8=%10000100   
return

L:
ks=5
satir1=%10000000     
satir2=%10000000     
satir3=%10000000     
satir4=%10000000     
satir5=%10000000     
satir6=%10000000     
satir7=%10000000     
satir8=%11111000   
return

M:
ks=7
satir1=%10000010       
satir2=%11000110     
satir3=%10101010     
satir4=%10010010     
satir5=%10000010       
satir6=%10000010     
satir7=%10000010     
satir8=%10000010   
return

N:
ks=6
satir1=%10000100     
satir2=%11000100     
satir3=%10100100       
satir4=%10010100       
satir5=%10001100       
satir6=%10000100       
satir7=%10000100       
satir8=%10000100 
return

O:
ks=5
satir1=%01110000       
satir2=%10001000       
satir3=%10001000       
satir4=%10001000       
satir5=%10001000       
satir6=%10001000       
satir7=%10001000       
satir8=%01110000   
return

_O:
ks=5
satir1=%01010000       
satir2=%00000000     
satir3=%01110000       
satir4=%10001000       
satir5=%10001000       
satir6=%10001000       
satir7=%10001000       
satir8=%01110000 
return

P:
ks=5
satir1=%11110000       
satir2=%10001000     
satir3=%10001000       
satir4=%10001000       
satir5=%11110000       
satir6=%10000000       
satir7=%10000000     
satir8=%10000000 
return

R:
ks=5
satir1=%11110000       
satir2=%10001000     
satir3=%10001000       
satir4=%10001000       
satir5=%11110000       
satir6=%10100000       
satir7=%10010000       
satir8=%10001000   
return

S:
ks=5
satir1=%01110000       
satir2=%10001000     
satir3=%10000000       
satir4=%01110000       
satir5=%00001000       
satir6=%00001000       
satir7=%10001000       
satir8=%01110000   
return

_S:
ks=5
satir1=%01110000           
satir2=%10001000         
satir3=%10000000           
satir4=%01110000           
satir5=%00001000           
satir6=%10101000           
satir7=%01110000           
satir8=%00100000   
return

T:
ks=5
satir1=%11111000           
satir2=%00100000         
satir3=%00100000           
satir4=%00100000           
satir5=%00100000           
satir6=%00100000           
satir7=%00100000           
satir8=%00100000   
return

U:
ks=5
satir1=%10001000           
satir2=%10001000           
satir3=%10001000           
satir4=%10001000           
satir5=%10001000           
satir6=%10001000           
satir7=%10001000           
satir8=%01110000   
return

_U:
ks=5
satir1=%01010000             
satir2=%00000000           
satir3=%10001000                                       
satir4=%10001000             
satir5=%10001000             
satir6=%10001000             
satir7=%10001000             
satir8=%01110000   
return

V:
ks=5
satir1=%10001000           
satir2=%10001000         
satir3=%10001000           
satir4=%10001000           
satir5=%10001000           
satir6=%10001000           
satir7=%01010000           
satir8=%00100000   
return

Y:
ks=5
satir1=%10001000           
satir2=%10001000         
satir3=%01010000           
satir4=%00100000         
satir5=%00100000           
satir6=%00100000         
satir7=%00100000         
satir8=%00100000   
return

Z:
ks=6
satir1=%11111100           
satir2=%00000100           
satir3=%00001000           
satir4=%00010000           
satir5=%00100000           
satir6=%01000000           
satir7=%10000000           
satir8=%11111100 
return
Back to top
Google
AdSense
Google Adsense




Post28 Jun 2009 20:52   

Ads




Back to top
Arabic versionBulgarian versionCatalan versionCzech versionDanish versionGerman versionGreek versionEnglish versionSpanish versionFinnish versionFrench versionHindi versionCroatian versionIndonesian versionItalian versionHebrew versionJapanese versionKorean versionLithuanian versionLatvian versionDutch versionNorwegian versionPolish versionPortuguese versionRomanian versionRussian versionSlovak versionSlovenian versionSerbian versionSwedish versionTagalog versionUkrainian versionVietnamese versionChinese version
Post new topic  Reply to topic    EDAboard.com Forum Index -> Microcontrollers -> 8*32 dot - code provided for pic16F628
Page 1 of 1 All times are GMT + 1 Hour
Similar topics:
This code [for PIC16F84] doesn't work with PIC16F628(A) ??!! (4)
C code iam trying to interface 8x8 dot matrix disp (1)
PIC16F628 Model for Proteus 5.2 SP7 ? (2)
Frequency Counter for PIC16F84 or PIC16F628 (8)
PIC16F84 Hex reverse engineering for PIC16F628 (11)
I need help for pic16f628 cnc machine 4 pcb (1)
help with script updating to pic16F628 for pocket programme (2)
Need Help With [ TX/RX ] For PIC16F628 - Please Look Into IT (8)
LED DOT MATRIX FOR DISPLAYING ALPHANUMERIC FOR LIFT (6)
how to program a pic16f877a for using in a 8x8 dot matrix (7)


Abuse || Administrator || Moderators || Support us || sitemap
topic RSS