Picproje Elektronik Sitesi

MİKRODENETLEYİCİLER => Microchip PIC => Konuyu başlatan: XNHCX - 05 Ocak 2003, 17:28:27

Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: XNHCX - 05 Ocak 2003, 17:28:27
8)   

Arkadaşlar,
İsterseniz gelin bu başlık altına bu konuyla ilgili bütün bulduğumuz linkleri ve bilgileri buraya yazalım.Pc Tabanlı

,Pic Kaynaklı , Dijital tabanlı... 

farketmez.

XNHCX




https://320volt.com/8-8-led-matris-kayan-yazi-rs232-yazi-gonderme/ (https://320volt.com/8-8-led-matris-kayan-yazi-rs232-yazi-gonderme/)
https://320volt.com/arm7-lpc2101-kayan-yazi/ (https://320volt.com/arm7-lpc2101-kayan-yazi/)
https://320volt.com/bir-klasik-kayan-yazi/ (https://320volt.com/bir-klasik-kayan-yazi/)
https://320volt.com/bilgisayar-kontrollu-kayan-yazi-at90s2313-74hc595/ (https://320volt.com/bilgisayar-kontrollu-kayan-yazi-at90s2313-74hc595/)
https://320volt.com/pic18f452-hakkinda-bilgi-c-dili-pic-uygulamalari/ (https://320volt.com/pic18f452-hakkinda-bilgi-c-dili-pic-uygulamalari/)
https://320volt.com/pic16f88-128x8-pc-kontrol-kayan-yazi-ccs-c-ile/ (https://320volt.com/pic16f88-128x8-pc-kontrol-kayan-yazi-ccs-c-ile/)
https://320volt.com/pic18f452-visual-basic-picbasicpro-kayan-yazi-panosu/ (https://320volt.com/pic18f452-visual-basic-picbasicpro-kayan-yazi-panosu/)
https://320volt.com/3x4-keypad-kontrollu-5x7-dot-matris-led-kayan-yazi/ (https://320volt.com/3x4-keypad-kontrollu-5x7-dot-matris-led-kayan-yazi/)
https://320volt.com/pic16f876-ile-turkce-karakter-destekli-yazi-panosu/ (https://320volt.com/pic16f876-ile-turkce-karakter-destekli-yazi-panosu/)
https://320volt.com/pic16f877-ile-led-display-reklam-ilan-panosu/ (https://320volt.com/pic16f877-ile-led-display-reklam-ilan-panosu/)
https://320volt.com/atmega32-ile-bilgisayar-kontrollu-126x15-ledmatrix-animasyon-yazi/ (https://320volt.com/atmega32-ile-bilgisayar-kontrollu-126x15-ledmatrix-animasyon-yazi/)
https://320volt.com/pic16f628a-ile-matrix-7x32-led-yazi-panosu/ (https://320volt.com/pic16f628a-ile-matrix-7x32-led-yazi-panosu/)
https://320volt.com/kayan-yazi-devreleri/ (https://320volt.com/kayan-yazi-devreleri/)
Başlık: Bilgisayar Kontrollü Kayan Yazı
Gönderen: XNHCX - 05 Ocak 2003, 17:32:55
8) Bu proje

Antraktan.Sanırım SAUTEF de birzamanlar tez olarak verilmiş.

***

http://www.antrak.org.tr/gazete/102002/metin.htm

XNHCX[/color:f9

ae307300]
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: spree - 05 Ocak 2003, 17:46:28
kayan yazı tekniğini

anlatıyor

http://www4.tpg.com.au/users/talking/5x7%20Display%20Index.html
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: XNHCX - 05 Ocak 2003, 18:50:08
8) Bilgisayar Kontrollü Dev Kayar Yazı

(220V)
Bilgisayar ile kontrol edilen istenilen ölçülerde dev kayar yazı uygulama olanağı veren, 220V çıkışlı ve 220V ampuller

kullanılarak hazırlanan dev kayar yazı uygulaması. Bu uygulama ile büyük bir binanın tüm çatı çevresi üzerinde istenilen

büyüklükte bir kayar yazı kurulabilir.....

***

http://www.eproje.com/modules.php?name=Content&pa=showpage&pid=29

XNHCX
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: XNHCX - 05 Ocak 2003, 18:52:30
8)  1 satır 4 karakter kayar yazı devresi
Kayar yazı

konusunda MDS1503DS kartı ve PIC16F84A kullanılarak hazırlanmış kolay ve basit tuş takımlı ve hafızalı kayar yazı

uygulamasıdır.....

***http://www.eproje.com/modules.php?name=Content&pa=showpage&pid=20

[

color=blue]XNHCX[/color]
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: Prof.EleCTroN - 05 Ocak 2003, 23:25:38
http://www.adayanik.8m.com/
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: XNHCX - 12 Ocak 2003, 14:54:53
8)  
*  http://www.egsalarm.com/elektronik/kayanyazi.htm

XNHCX
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: XNHCX - 12 Ocak 2003, 21:45:53
8) Entegreler ile Yapılan Kayan Yazı

*** http://fikret.amele.com/elektronik/dijit_kay.htm

XNHCX
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: XNHCX - 12 Ocak 2003, 23:54:55
8)  7 by 10 LED Moving Sign

*** http://www.bobblick.com/techref/projects/ledsign/ledsign.html

XNHCX
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: XNHCX - 13 Ocak 2003, 00:03:08
:lol:
       128 X 32 MATRIX LED MESAJ ŞEMASI

(http://www.asahi-net.or.jp/~jn6k-krsn/electronics/image/leddsp.jpg)

Site:
*** http://www.asahi-net.or.jp/~jn6k-krsn/electronics/led.htm

XNHCX
Başlık: CAR MESSAGE DISPLAY
Gönderen: XNHCX - 26 Ocak 2003, 17:39:16
8) CAR MESSAGE DISPLAY
*DesignGuide
*SourceCode
*VbasicCode   var.

SİTE:
http://private.addcom.de/KeithWilson/Projects/camed.htm

XNHCX
Başlık: 8x8 Animated LED Signboard
Gönderen: XNHCX - 26 Ocak 2003, 17:49:33
8) Picxie 2 - 8x8 Animated LED Signboard

(http://www.zws.com/products/picxie2/img/picxie2_smile_small.jpg)

ŞEMA.
(http://www.zws.com/products/picxie2/img/picxie2schem.gif)

(http://www.zws.com/products/picxie2/img/picxie2.jpg)

SİTE.
http://www.zws.com/products/picxie2/index.html

XNHCX
Başlık: Yürüyen Yazı
Gönderen: XNHCX - 22 Şubat 2003, 16:26:17
8) 4017 ile yapılan Yürüyen Yazı Projesi:)(ePROJE'den)

(http://www.eproje.com/members/upload/derya_1.)

XNHCX
Başlık: Build a Moving Message Display
Gönderen: XNHCX - 01 Mart 2003, 17:08:36
8) Build a Moving Message Display

(http://www.rentron.com/Files/HDSP-2116.gif)

Kaynak kodları da var.
http://www.rentron.com/PicBasic/Moving_Message_Display.htm

XNHCX
Başlık: 7x5 Matrix TEXT Sayı Display HAKKINDA
Gönderen: XNHCX - 01 Mart 2003, 17:54:09
8) 7x5  Matrix  TEXT Sayı Display

---
Kayan yazı ve led displaylerdeki tarama kavramını daha iyi anlamak için 7x 5 led lambadan oluşan devreyi kurup çalıştırmak doğru olacaktır. Bu amaçla bir adet pic16f84 led lamba, direnç ve transistöre ihtiyacınız olacaktır. -------

http://mail.sdu.edu.tr/~seyit/led4x7/led57.htm

XNHCX
Başlık: Işıklı Elektronik Bilgi Panosu Sistemi ve Otomasyonu
Gönderen: XNHCX - 01 Mart 2003, 17:56:47
8) Işıklı Elektronik Bilgi Panosu Sistemi ve Otomasyonu  HAKKINDADIR.

http://mail.sdu.edu.tr/~seyit/pb06.htm

XNHCX
Başlık: Scrolling Led Design
Gönderen: XNHCX - 23 Mart 2003, 23:55:02
8) Merhabalar,

Scrolling Led Design

(http://noisybox.net/electronics/LED_sign/sign_title.gif)

İNCELEYİN!  http://noisybox.net/electronics/LED_sign/


XNHCX
Başlık: AT klavye'den PIC16F877 aracılığıyla 2x16 LCD display'e
Gönderen: XNHCX - 30 Mart 2003, 16:15:44
8) AT klavye'den PIC16F877 aracılığıyla 2x16 LCD display'e veri gönderme

(http://www.antrak.org.tr/gazete/012003/adnan_dosyalar/sema.gif)

** 5 pinli ve 6 pinli Klavye konnektörlerine ait pin numaraları ve karşılıkları  resimlerle açıklanmış.


**Ascii karakterlerin hex, decimal ve binary karşılıklarını gösteren dosya, ASCII-Map
http://www.antrak.org.tr/gazete/012003/adnan_dosyalar/ASCII-Map.pdf

***Kaynak kodlar yok.

http://www.antrak.org.tr/gazete/012003/adnan.htm

XNHCX
Başlık: PIC16C84 ile 7*16(112) LED'li Kayar Yazı
Gönderen: XNHCX - 29 Haziran 2003, 02:08:03
;)   PIC16C84 ile 7*16(112) LED'li Kayar Yazı

  Bu devre, PIC16F84 ile 7*16(112)LED ekranlı mini bir kayar yazı uygulamasıdır. PIC0503'e göre daha geniş bir ekran ve daha parlak bir ekran görüntüsüne sahiptir. Ekranda oluşturulan karakterler standart ASCII karakter setine uygun olabileceği gibi istenilen herhangi bir karakter seti yada grafik, program kodunda gerekli değişiklikler yapılarak uygulanabilir. Ekran parlaklığını artırmak için PIC ve 74HC138 entegrelerinin çıkışları transistörler ile güçlendirilmiştir. Devre yapısının satır-sütun tarama mantığında olması nedeni ile anlık çekilen akım 400mA civarında ve ortala çekilen akım ise 100mA civarında olmaktadır. Devre girişinde yer alan 1000uF lık kondansatör, çekilen ani akımları karşılamaktadır. Devrede istenilen renkte LED'ler kullanılabilir. Ekranda görüntülenecek yazı yada grafik aşağıda yer alan program kodunda yapılacak değişiklikler ile gerçekleşitilir. Standart ASCII karakter setine uygun şekilde karakterler aşağıda karakter yapısı başlıklı bölümde olduğu gibi hazırlanabilir.

(http://eltman.virtualave.net/pic/pic0504/pic0504-1.gif)


Baskılı devre

(http://eltman.virtualave.net/pic/pic0504/pic0504-2.gif)

(http://eltman.virtualave.net/pic/pic0504/pic0504-3.gif)

Projenin asembly program dosyası ve PROTEUS5.1 ile çizilmiş açık şema ve baskılı devre dosyaları :

http://eltman.virtualave.net/pic/pic0504/pic0504.zip

***********************************************************

XNHCX
Başlık: PIC16C84 ile 5*16(80) LED'li kayar yazı
Gönderen: XNHCX - 29 Haziran 2003, 02:17:50
;) PIC16C84 ile 5*16(80) LED'li kayar yazı

Bu devrede PIC16F84 ile 5*16(80)LED ekranlı mini bir kayar yazı uygulamasıdır. PIC Mikrodenetleyiciler ile kayar yazı cihazları veya mesaj panoları yapımına ilişkin başlangıç amaçlı bir projedir. Projenin program kodunda gerekli değişiklikler yapılarak istenilen mesajın yazdırılması gerçekleştirilir.

Devrenin açık şeması

(http://eltman.virtualave.net/pic/pic0503/pic0503-1.gif)

Baskılı devre

(http://eltman.virtualave.net/pic/pic0503/pic0503-2.gif)

(http://eltman.virtualave.net/pic/pic0503/pic0503-3.gif)

Dosyalar

ASM (http://eltman.virtualave.net/pic/pic0503/pic0503.txt)
ASM açık kodu bu dosyada yer almaktadır.

PIC0503 (http://eltman.virtualave.net/pic/pic0503/pic0503.zip)
Projenin asembly program dosyası, PIC16F84.INC ve PROTEUS5.1 ile çizilmiş açık şema ve baskılı devre dosyaları .

*************************************************************

XNHCX
Başlık: Moving Sign Display
Gönderen: XNHCX - 29 Haziran 2003, 21:20:58
;)  Moving Sign Display

(http://i95krian.island.liu.se/projects/msd/animation.gif)

Pic 17C43 kullanılmış.
Daha fazla bilgi için ...
http://i95krian.island.liu.se/projects/msd/hardware.html

XNHCX
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: XNHCX - 29 Haziran 2003, 21:26:21
;) Bu projede de yazı sola doğru kayıyor.Proje  AT90S2313 AVR microcontroller ile yapılmış.5*7  matrix  bir karakteri oluşturuyor.
Sitede şema da var.İnceleyiniz...

(http://home.wanadoo.nl/electro1/avr/images/hebbs.jpg)

Genel Bağlantı:
(http://home.wanadoo.nl/electro1/avr/images/onedmdp.gif)

PC-RS232 ile Bağlantı:
(http://home.wanadoo.nl/electro1/avr/images/uartrx.gif)


http://home.wanadoo.nl/electro1/avr/dotmatrix.htm

XNHCX
Başlık: Building Dot Matrix Graphic Panels with the MAX6952 and MAX6
Gönderen: byka - 29 Haziran 2003, 21:53:41
Building Dot Matrix Graphic Panels with the MAX6952 and MAX6953 5x7 LED Drivers

bu alet ler cok iyi ama bulabilirmiyiz ki?

http://www.maxim-ic.com/appnotes.cfm/appnote_number/1034/ln/en
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: byka - 29 Haziran 2003, 21:55:23
http://www.maxim-ic.com/appnotes.cfm/appnote_number/1033/ln/en
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: biteker - 01 Temmuz 2003, 10:04:33
Samsung Electronic firmasınında KS0068 isimli 60 segmentlik dot matrix driver 'ı var ama sanırım bu malzemeyi bulmak biraz zor hatta imkansız :lol:

KS0068 gibi istanbulda bulabileceğimiz bir dot matrix driverini bilen arkadaşlar varsa buraya yazarsa sanırım çok faydalı olur
Başlık: elektronik kayan yazi
Gönderen: senol_sr - 13 Temmuz 2003, 01:19:18
tamamen turkiyede tasarlanmis elektronik kayan yazi panolari

         http://mikrodesign.sitemynet.com
Başlık: BİLGİSAYAR KONTROLLÜ KAYAN YAZI DEVRESİ
Gönderen: XNHCX - 02 Eylül 2003, 03:40:51
;)
BİLGİSAYAR KONTROLLÜ KAYAN YAZI DEVRESİ
EK BİLGİ – 1 (Sonsuz Sütunlu)

http://antrak.org.tr/gazete/092003/metin.htm

XNHCX
Başlık: Scrolling 7 x 25 LED Dot Matrix Sign
Gönderen: XNHCX - 15 Eylül 2003, 03:00:34
;) Scrolling 7 x 25 LED Dot Matrix Sign

Aşağıdaki proje sadece şema içeriyor...

(http://www.technology.niagarac.on.ca/students/vkennedy/ledfnt.jpg)

*********

Project Schematic

(http://www.technology.niagarac.on.ca/students/vkennedy/prjschem.jpg)

Buna ek olarak faydalı dökümanlar  da var sitede...

http://www.technology.niagarac.on.ca/students/vkennedy/


XNHCX
Başlık: Running Text Display
Gönderen: XNHCX - 02 Kasım 2003, 23:30:30
" Running Text Display "

:arrow:  89S8252 Flash MCU kullanılarak yapılmış.

Elektor Electronics magazine (November 2003) de var.

************************************************************
Kullanılan malzemeler:

Running Text Display
020407-1
Resistors:
R1,R6,R7,R12-R15 = 4kOhm7
R2,R3,R8-R11 = 470Ohm
R4 = 6kOhm8
R5 = 360Ohm
R16-R23 = 1kOhm
R24-R31 = 47Ohm
R32 = 100kOhm
Capacitors:
C1,C3-C10 = 100nF
C2 = 0.1F 5.5V Goldcap (Panasonic NF)
C11 = 10µF 63V radial
Semiconductors:
D1 = LED, yellow, low current, 5mm
D2,D4,D6,D8 = LED, red, low current, 5mm
D3,D5,D7,D9 = LED, green, low current, 5mm
IC1-IC8 = 74HCT164
IC9-IC16 = ULN2803A
IC17 = 74HCT40105
IC18 = DS1302 (Dallas)
T1 = BS170
T2-T11 = BC557B
Miscellaneous:
JP1 = 3-way SIL pinheader with jumper
JP2,JP3 = 2-way SIL pinheader with jumper
K1 = 6-way mini-DIN socket, PCB mount (PS/2)
K2,K3 = 8-way SIL pinheader
K4 = 34-way SIL pinheader
LD1-LD12 = 5x8 dot matrix display with common cathode, size 60.8´ 38 mm, Kingbright type TC24-11EWA
AT89S8252-24PC for 89S8252 Flash Micro board (010208), programmed, order code 020407-41 (see Readers Services page)
Disk, contains controller program (source and hex), order code 020407-11 or Free Download
PCB, order code 020407-1
***********************************************************

PCB ve kaynak& hex kodu:

PCB-Layout (http://www.segment.nl/download/020407-1.zip)

Kaunak ve Hex Kodu (http://www.segment.nl/download/020407-11.zip)


XNHCX
Başlık: Led Board ile animasyon
Gönderen: XNHCX - 02 Kasım 2003, 23:39:38
Led Board ile animasyon

................... kayan yazı uygulaması eklemek istedim. Olay aslında Çok basit. Sütunları taratıp her sütun için satır değerlerini girdiğinizde istediğiniz şekli,yazıyı veya animasyonu yapmak mümkün...................

(http://www.eproje.com/members/upload/mehner_4.)

(http://www.eproje.com/members/upload/mehner_3.)

Şekilde de görüldüğü gibi sütun tarama işlemini 74HC154 yapmaktadır. 74HC154 ün ABCD girişlerine (23,22,21,20.pinler) pic'in PA0,PA1,PA2,PA3 pinlerinden sinyal uygulanarak (0000,0001,....1111 gibi) 1.sütundan 16.sütuna kadar tarama yapmaktadır. her sütun tarama işleminde o sütuna ait satır değerler PIC16F84'ün PB0,PB1,....PB7 çıkışlarından girilir. Tarama süresi olarak 1-2ms uygun oluyor eğer bu değerlerin üzerinde bir tarama yapılırsa ledlerdeki titreme görünür. Programda döngüler kullanılarak görüntünün uzun süreli kalması sağlanabilir.  Aşağıdaki sekilde bir animasyon şekli veriyorun ve kaydırmanın nasıl gerçekleştiğini daha iyi anlayabilirsiniz...

http://www.eproje.com/members/upload/mehner_6.zip

http://www.eproje.com/modules.php?name=News&file=article&sid=263

Teşekkürler ,
Mehmet Taştan
mehmettastan@hotmail.com
eproje.com'dan
*****************

XNHCX
Başlık: Atmel AT89C51 or AT89C2051 MCU ile "LED moving font&quo
Gönderen: XNHCX - 02 Kasım 2003, 23:52:32
Atmel AT89C51 or AT89C2051 MCU ile " LED moving font "

************************** (http://www.woe.onlinehome.de/gif/led_move.gif)***************************


Schematic LED module
(http://www.woe.onlinehome.de/proj_gif/led_mat.gif)

Schematic microcontroller (AT89C51)
(http://www.woe.onlinehome.de/proj_gif/mat_con1.gif)

Schematic microcontroller (AT89C2051)
(http://www.woe.onlinehome.de/proj_gif/mat_con2.gif)

LED moving font V2.2 (Hardware and software) (http://www.woe.onlinehome.de/zip/laufschr.zip)

Ayrıntılar için...
http://www.woe.onlinehome.de/e_projects.htm#ledfont

XNHCX
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: simtik - 08 Kasım 2003, 09:44:26
sağol  XNHCX dostum oldukça profesyonel bidevre vermişşin
Başlık: :)
Gönderen: daswi - 11 Kasım 2003, 10:49:52
dostum cok sağol neden bulun bunları anlamakı  :D  

calışmalarınızda başarılar
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: XNHCX - 16 Kasım 2003, 20:22:24
(http://sjeffroy.free.fr/Journal_Lumineux/journal_c04.jpg)

http://sjeffroy.free.fr/Journal_Lumineux/journal_lumineux.html
Başlık: 7x24 DOT MATRIX KAYAN YAZI
Gönderen: XNHCX - 07 Aralık 2003, 04:16:27
7x24 DOT MATRIX

KAYAN YAZI


Bu proje Sevgili lay'

dan.

http://www.picproje.net/forum/viewtopic.php?t=2402&highlight=kayan+yaz%FD

Alıntı Yap
Birkaç aylık bir

çalışmayı forumdaki arkadaşların yararına sunuyorum.
Upload edilen adresten, matrix.zip adlı dosyayı indirebilirsiniz.

http://www.mcu.cz/atm/
Dosya: matrix.zip


Boyut: 1.01 MB
PASS: ta5ccf

İşlev:
Bir PC/AT klavyeden girilen metni, dot matrix display'de izleme, bilginin

EEPROM'a kaydedilmesi.
lay

Teşekkürler lay .
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: infomaster - 02 Ocak 2004, 06:04:03
Merhaba,

Birkaçtane kayan yazı devresinin bulunduğu bir

dosyayı

http://groups.yahoo.com/group/PicProjeUP2/files/Infomaster/
klasörünün altına Mmessage.rar olarak attım.

İşinize yarar umarım.

Saygılar.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: aster - 03 Ocak 2004, 11:54:55
@infomaster,
zip in içindeki pdf dosya da hata gösteriyor
ilgilenirmisin ?
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: infomaster - 06 Ocak 2004, 08:13:57
Merhaba,

Aster dosyayı yeniden gönderdim. İndirip tekrar denedim. Çalışıyor.

Bu defa zipli

gönderdim.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: ahmoli - 07 Ocak 2004, 12:33:35
baba siz varya harikasınız valla çok teşekkürler yani bu kayan yazılar çok işime yarayacak şu an ben bir öğrenciyim mail

adresim yahmet@stud.sdu.edu.tr :?:
Başlık: Moving Sign
Gönderen: XNHCX - 27 Şubat 2004, 15:06:54
Moving Sign

(http://www.andrewkilpatrick.org/mind/moving_sign/images/sign.jpg)

PDF Dosyasında 18F452 ile ilgili şema bulunuyor.

Başlık: Moving LED messaging Waver with BI-colour LEDS
Gönderen: XNHCX - 24 Mayıs 2004, 01:49:14
Moving LED messaging Waver with BI-colour LEDS

AT90S2313 Atmel ile yapılmış bir proje ve kaynak kodları mevcut.

(http://www.mcselec.com/images/an_1282.JPG)
(http://www.mcselec.com/images/an_1283.JPG)

KAYNAK KODLAR (http://www.mcselec.com/download/appnotes/bi-colour-led-message.zip)

http://www.mcselec.com/an_128.htm
Başlık: Running Text Display
Gönderen: XNHCX - 24 Mayıs 2004, 01:58:44
Running Text Display

Resistors:
R1,R6,R7,R12-R15 = 4kOhm7
R2,R3,R8-R11 = 470Ohm
R4 = 6kOhm8
R5 = 360Ohm
R16-R23 = 1kOhm
R24-R31 = 47Ohm
R32 = 100kOhm

Capacitors:
C1,C3-C10 = 100nF
C2 = 0.1F 5.5V Goldcap (Panasonic NF)
C11 = 10µF 63V radial

Semiconductors:
D1 = LED, yellow, low current, 5mm
D2,D4,D6,D8 = LED, red, low current, 5mm
D3,D5,D7,D9 = LED, green, low current, 5mm
IC1-IC8 = 74HCT164
IC9-IC16 = ULN2803A
IC17 = 74HCT40105
IC18 = DS1302 (Dallas)
T1 = BS170
T2-T11 = BC557B

Miscellaneous:
JP1 = 3-way SIL pinheader with jumper
JP2,JP3 = 2-way SIL pinheader with jumper
K1 = 6-way mini-DIN socket, PCB mount (PS/2)
K2,K3 = 8-way SIL pinheader
K4 = 34-way SIL pinheader
LD1-LD12 = 5x8 dot matrix display with common cathode, size 60.8´ 38 mm, Kingbright type TC24-11EWA
AT89S8252-24PC for 89S8252 Flash Micro board (010208), programmed, order code 020407-41 (see Readers Services page)
Disk, contains controller program (source and hex)


PCB (http://www.segment.nl/download/020407-1.zip)

KAYNAK KOD (http://www.segment.nl/download/020407-11.zip)
Başlık: mesaj panosu
Gönderen: ykp - 30 Haziran 2004, 16:22:10
sevgili mod arkadaşım xnhcx katkılarından dolayı cok teşekkürler.
senden bir isteğim şu eğer yardımcı olursan cok sevinirim.
hem bilgisayar destekli hem de bağımsız bir mesaj panosu yapmak istiyorum(kayan yazı) yukarıda cok örnek vermişsin ama senden isteğim özel birtanesinin şemasını pcb sini ve hex kodlarını detaylı olarak senden alabilirmiyim. şimdiden cok teşekkürler.

digi_ykp@yahoo.com
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: OG - 10 Ağustos 2004, 18:59:57
Arkadaşlar
(Ticari amaçlıdır)

PC kontrollu kayan yazı konusunda imalat veya tasarım yapabilen bir arkadaş varsa benimle irtibat kurabilirmi. Tasarım yapsa da kafidir. İmalat bana ait olur. Malzeme konusunda ben daha uygun fiyatlar sağlayabilirim.

İşin özellikleri;
Bilgisayar aracılığı ile 30 cm (1 satır) yüksekliğinde 9 metre uzunluğunda bir led grubu sürülecek. Sürülen gruplar adreslenebilir nitelikte olacak ve pc bunlara adresleyerek komut yollayacak. Yani herbirine ayrı işlem yaptırılabilecek.

PC de hazırlanmış bir program 1-50 adet aynı tip cihaza kontrol edecek. İstenilen yazı istenilen cihazlara tek tek veya belli gruplar halinde komut olarak yollanacak,

Yapılacak kontroller: Yazının kayması, sağdan, soldan, üstten, alttan, ortadan açılması-kapanması gibi effektler verilecek. Effect sayısı ne kadar fazla olursa o kadar uygun olur.

Konunun ilgilisi olan arkadaş varsa görüşelim.
Başlık: amatör amaçlı
Gönderen: mustafacan - 26 Ağustos 2004, 00:46:55
:( yahu ustalar kayan yazı devrelerinde işin mantıkını azbuçuk anladım ama sorum şu şimdi diyelim 5*7 iki adet yani iki harflik matrix yaptık. Peki bu yazıları kaydırırken yada panelde çıkmasını sağlarken bu iki ayrı harfi oluşuran yöneten entegreleri birbiriyle nasıl haberleştiriyoruz.  :?:
vede ben 9-10 harflik bi kayan yazı tasarlamak yapmak istiyorum elinde şeması olan varsa memnun olurum. Yada en azından mantıkını anlatana tyeşekkür ederim.   mmustafacan@hotmail.com
Başlık: Re: amatör amaçlı
Gönderen: DumrulBey - 26 Ağustos 2004, 07:58:36
Merhaba,

Öncelikle aramıza yeni katılan arkadaşımıza ufak bir mesaj:
Hoş geldin "mustafacan"  ;)

Alıntı yapılan: "mustafacan":( yahu ustalar kayan yazı devrelerinde işin mantıkını azbuçuk anladım ama sorum şu şimdi diyelim 5*7 iki adet yani iki harflik matrix yaptık. Peki bu yazıları kaydırırken yada panelde çıkmasını sağlarken bu iki ayrı harfi oluşuran yöneten entegreleri birbiriyle nasıl haberleştiriyoruz.  :?:
vede ben 9-10 harflik bi kayan yazı tasarlamak yapmak istiyorum elinde şeması olan varsa memnun olurum. Yada en azından mantıkını anlatana tyeşekkür ederim.   mmustafacan@hotmail.com
Aslında ekranı süren tümdevrenin birbiri ile pek haberleşmesine gerek yok. Sadece kaskat (cascade) bağlantılarda birbirlerini etkin kılması için tek bitlik bir haberleşme olabilir. Gerisi adres ve vuru (clock) hatları ortaktır.

Anladığım kadarıyla sen iki karakteri aklında şöyle hayal ediyorsun. Yazı kayınca ikinci karakter birinci yerine geçecek ve birinci ekrandan eş zamanlı kaybolacak. Sonra ikinci için dışarıdan üçüncü bir tane gelecek.Kayan yazı mantığı aslında bu değil.

Sürücü devreye bilgi bir sütun kaydırılmış gönderiliyor. Dolayısıyla bu tür ekranlarda karakter adet şeklinde değilde bir karakterin boyutu gibi düşünmek lazım. Yani ekran grafik LCD ekranları gibi her noktasına ulaşabileceğim bir birimi temsil eder.

Mesele aslında ekranda görüntüyü gözü rahatsız etmeyecek bir şekilde sabitlemektir. Kaydırma o kadar basitir ki bunu zamanla anlayacaksın. Hele bir tarama yöntemiyle herhangi bir yazıyı veya şekli ekranda tutmayı başar, bak kaydırmayı tek komutla nasıl yapacağız. Her şey adım adım (step by step) yaparsak anlaşılmayacak konu ve halledilmeyecek sorun kalmaz.

Başarılar...
Başlık: Teşekkürler şimdiden
Gönderen: mustafacan - 27 Ağustos 2004, 20:37:32
Verdiğiniz geniş bilgi için teşekkür ederim Ve ilk adımı atarak hafta sonumu bu işe gömüyorum amacım sadece esnaf bi arkadaşa kayan yazı panosu yapmak.(Aslında panoya falan ihtiyacı yok ama ölesine uğraşacaaz) Haydi hayırlısı takılınca soracaam umarım burda olursunuz.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: XNHCX - 27 Ağustos 2004, 20:53:51
Dostum daha öncede yazmıştık ama bir daha hatırlatmış olalım.Aşağıdaki siteyi de takip edin.
Anlatım güzel, basitten zora doğru adım adım uygulamalar... faydalı olacaktır.Yalnız dil asm. Proteusta simulasyonunu da yapıp çalıştığını görebilirsin.

http://www4.tpg.com.au/users/talking/5x7%20Display%20Index.html

Kolay Gelsin...
Başlık: teşekkürler
Gönderen: mustafacan - 27 Ağustos 2004, 22:27:25
XnchX ustam
saten sitede verilen tüm linkleri tek tek inceledim ve sizin verdiğiniz siteyi 2 gün önce tüm ayrıntıları ile bilgisayarıma indirdim. Ancak işte cahiilik bu ya tabii biz işi 8-9 karakter düşündüğümüz için hiç 1 pixeli hiç tii ye almamıştım. ama galibe basamak basamak gitmek lazım. bazı linklerinde resimleri yok adresler gitmiş onlarıda tazerleseniz memnun oluruz. dediğim gibi hafta sonu başlıcaaz bakalım hayırlı olsun herkeşe...
Başlık: Kayan yazı projesi
Gönderen: MeYo - 29 Ağustos 2004, 00:11:48
Arkadaşalr güzel devreler yolluyonuzda.Benim bir isteğim olucak.
hani bu eprojedeki devre vardı ya site şu anda kapalı bir arkadaşımız  bana onu mail veya MSN MESSENGER dan yollayabilirse sevinirim Sizlere İyi çalışmalar...
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: XNHCX - 29 Ağustos 2004, 02:43:31
PIC0504 - PIC16C84 ILE 7*16(112) LEDLİ MİNİ KAYAR YAZI CİHAZI

http://s11.yousendit.com/d.aspx?id=F531CA762AC0054E294E9706A165409C

Pass: MeYo
Başlık: MDSP1503DS2 1 SATIR 8 KARAKTER KAYAR YAZI DEVRESI
Gönderen: XNHCX - 29 Ağustos 2004, 02:48:42
MDSP1503DS2 1 SATIR 8 KARAKTER KAYAR YAZI DEVRESI

http://s11.yousendit.com/d.aspx?id=96CB7146E102FB6AC36916148214052C


Pass: MeYo
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: mustafacan - 29 Ağustos 2004, 13:15:30
Yaw XNHCX ustaa ne kadar teşekkür etsek azdır.
Sence ne kadar teşekkür edelim.
Valla ne diyelim Büyüüüksüüüüüüün.
Oy oooy oooooooooy.
Başlık: XNHCX Ustaaaaa
Gönderen: mustafacan - 31 Ağustos 2004, 22:23:58
XNHCX ustam peki bu devrenin proteus similasyon çizimi varmı elinizde.
Baskı devre hazır malzemeleri dizmesi kaldıda. Pice tek tek dosya yükleyip çalıştımı çalışmadımı oldumu olmadımı diye uğraşmiim dedimde similatorle deneyeyim diye düşündüm. bendeki proteus ile çizeyim dedim kayıt etmiyor demo olduğu için crackide bulamadık. bekliyoz işte.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: XNHCX - 01 Eylül 2004, 00:54:09
Bu Dosyalardan sadece birisine ait simul. dosyası olacaktı.Dökümanlarımın arsına bir bakayım , araştırayım.
Bulduğumda GROUBSa gönderirim.

Dostum ,
Kullandığınız Proteus hangi sürüm?
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: mustafacan - 01 Eylül 2004, 10:37:10
XNHCX ustam kullandığım proteus 6.5 kendi sitesinden indirdim.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: XNHCX - 01 Eylül 2004, 12:50:05
6.5 SP5 ise ona ait crack var.
Crack Isis'in save k1s1tlama özelligini kald1r1yor.Onu da gönderelim.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: mustafacan - 01 Eylül 2004, 15:45:48
Ustam version6,5 sp5in crackini buldum  aresin de crackini arıyorum
kayan yazının protus simulasyonunu bulabildiniz mi? Ben çizimini yaptım ama crack yatığımız için çalışmadı. demoyu yeniden kurdum bu defada demodur çalışmaz dedi. 5 sürümünü kurdum onadada library hatası veriyor sanırım malzeme kodları versionlarda kısmen farklı velhasılı herşey simüleye bakıyoor

:oops:


------------------------------------------------------------------
Denedim Yanılmadım. Çünkü DÜŞÜNDÜM! 8)
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: XNHCX - 02 Eylül 2004, 11:10:44
Dostum ,
O halde 6.2 sp5 sürümünü kurun.

https://www.picproje.org/main/modules.php?name=Downloads&d_op=viewdownloaddetails&lid=6&title=PROTEUS%206.2%20SP5
Başlık: Hex dosyası hakkında
Gönderen: mustafacan - 02 Eylül 2004, 15:29:48
ustam küçük bi detayı kaçırmışım 3,5 saat sonunda buldum ama galiba hex dosyasını yapamıyorum  16f84lü 7*16 ledli matrix için elinizde hazır hex dosyası varmı?
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: XNHCX - 02 Eylül 2004, 17:31:28
Var. Göndereyim.
Başlık: Kayan Yazı Kayarmı ...
Gönderen: mustafacan - 02 Eylül 2004, 18:25:17
Ustam bu arada devrenin şemasını proteusa çizerken bi yanlışlıkın farkına vardım düzeltmek isterim şemada matrixi satırını süren (sütun değil satır) tarnsistorlerin emiter bacaklarına artı voltaj ( VCC) vermek gerekiyormuş şemada bu çizili değil ikincisi bağlantıyı yapmadığınızda da ledler görünmeyecek dercede sönük yanıyorlar ve farkına bile varamıyorsunuz bunu ancak bi tane ledi maziye çevirdikten sonra anlayabildim...   similasyonum ondan dolayı hata veriyormuş sanırım. Dosyayı bekliyoruz sabırsızlıkla.
Kolay gelsin


:lol:
------------------------------------------------------------------
Denedim Yanılmadım. Çünkü Çook DÜŞÜNDÜM!  8)
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: XNHCX - 02 Eylül 2004, 19:40:05
PIC0504 - PIC16C84 ILE 7*16(112) LEDLİ MİNİ KAYAR YAZI CİHAZI

PIC0504.rar

Dosya Winrar 3.40 Beta 5 ile  şifrelenmiştir.

şifre :     www.picproje.org


Pic16f84a için hex içinde.

http://groups.yahoo.com/group/PicProjeUP16/files/XNHCX/
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: XNHCX - 02 Eylül 2004, 19:49:49
* PIC16C84 ILE YAPILAN 5*16=80 LED LI KAYAN YAZI DEVRESI ICIN PROGRAMDIR
* 32 KARAKTER KULLANILABILIR


PIC0503.rar

Dosya Winrar 3.40 Beta 5 ile şifrelenmiştir.

şifre : www.picproje.org


*** Zip içindeki  PIC0503.dsn dosyasının çizimi simulasyon için ayarlanmıştır.Çalışma frekansı için ayarlanan
2 MHZ lik değer sadece simulasyonda kaymayı görebilmek içindir.Hatta 1 MHZ de yapabilirsiniz.

Gerçek uygulamaya geçildiğinde normal değerleri kullanınız.


http://groups.yahoo.com/group/PicProjeUP16/files/XNHCX/
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: daswi - 03 Eylül 2004, 12:58:54
Alıntı yapılan: "XNHCX"PIC0504 - PIC16C84 ILE 7*16(112) LEDLİ MİNİ KAYAR YAZI CİHAZI

PIC0504.rar

Dosya Winrar 3.40 Beta 5 ile  şifrelenmiştir.

şifre :     www.picproje.org


Pic16f84a için hex içinde.

http://groups.yahoo.com/group/PicProjeUP16/files/XNHCX/

@xnhcx usta bu calısmadı bende acaba neden proteus6,5 sp5 kullanıyorum
_??
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: XNHCX - 03 Eylül 2004, 15:31:49
PIC0504.rar içinde simulasyon yok.Sadece şema var.

Dedigim gibi.Upload etmeden önce 6.2 sp5 te denemistim.
Simulasyonu çalışan tek dosya  PIC0503.rar içindedir.

DAHA YENİ 6.5 SP5 demo-to-FULL sürümünde de denedim.
Çalışıyor.
Başlık: Olmadı sanırım.
Gönderen: mustafacan - 08 Eylül 2004, 00:21:09
ustalar pic0504 devresini yaptım tamamladım fakat hex dosyasında sorun var sanırım çalışmıyor.      başka hexler denediğimde abuk subuk lambalar yanıp sönüyor. Yanan lambalarda sadece ilk harf satırının lambaları. Kısa devre ihtimallerine karşılıkta yolları tek tek ölçtüm Devreyi yanlış yapma ihtimalim yok çünkü baskı devresini yapmıştım.  Sizce asm programlamayı bilmeyen birisi için çözüm ne olur.  :oops: Yardııııııııııım :roll:
Başlık: Kaymayan yazı
Gönderen: mustafacan - 20 Eylül 2004, 13:47:19
Transistorleri söktüm direk bağlantı yaptım yazı kaydı. Acaba transistor numaralarımı yanlış verilmiş. Haa bu arada assmebleride azcık öğrendim.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: XNHCX - 30 Eylül 2004, 16:59:07
The indication 7 × 5LED

(http://www5b.biglobe.ne.jp/~plusm/seisaku/NO7/75led1.bmp)

(http://www5b.biglobe.ne.jp/~plusm/seisaku/NO7/75led0.jpg)

program sitede....
Devamı ... (http://world.altavista.com/babelfish/trurl_pagecontent?lp=ja_en&trurl=http%3a%2f%2fwww5b.biglobe.ne.jp%2f%7eplusm%2fseisaku%2fNO7%2fno7.htm)
Başlık: Kayan Yazıya saat ve tarih ekleme
Gönderen: mustafacan - 01 Kasım 2004, 09:34:53
Ustalar herkese selamlar.
Eprojede bulunan kayan yazı projesini yaptım ancak kayan yazının yanına tarih ve saatte eklemek istiyorum. bu arada yazılar sadece kayıyor flash yapmasını durmasını zıplamasını invert olmasınıda istiyorum bunları nasıl ve hangi komutlarla yapabilirim. Ayrıca nasıl bir eprom bağlarım ve bilgileri epromla sürerim. yada klavye takabilirim
Herkese teşekkürler.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: alisahinoglu - 10 Kasım 2004, 20:21:52
Arkadaslar cok acemice belki bir soru olacak...  Taramayı sutun olarakmı yoksa satır satır mı yapıyorsunuz...? :oops:  :oops:  :oops:
Pic basic ile yapıyorum satırları taratıyorum ve sabit harf yadırabiliyorum. şimdi sıra geldi kaydırmaya. bu konuda yardımce olursanız sevinirim... :oops:  :oops:  :oops:
Başlık: Tarama ve Kaydırma...
Gönderen: DumrulBey - 10 Kasım 2004, 20:48:21
Estağfirullah,

Bence her iki şekilde de tarama yaptırabilirsin. Hatta göze daha hoş gözüksün diye çapraz taramalar da var. Ama genelde yatay (soldan sağa) tarama tercih ediliyor. Çünkü veriyi gönderirken ve yazının tamamını kaydırırken kolaylık oluyor.

Başarılar...
Başlık: MMC kart kontrollü Kayan yazı
Gönderen: gosub - 10 Kasım 2004, 21:21:51
Buda benden olsun Deyaylı bilgi için www.microsyl.com Adresinden yararlanabilirsiniz

3 Colors messages
5 Scrolling speed
Serial port for uploading messages

SAYGILAR






//**************************************
// Moving Sign V:1.0
// Version 1.0 Dec 2003
// Sylvain Bissonnette
//
// Clock : 16Mhz
// Stack : 32
//**************************************

//**************************************
//            I N C L U D E
//**************************************
#include <macros.h>
#include <stdlib.h>
#include <iom128v.h>
#include <STRING.H>

//**************************************
//            D E F I N E
//**************************************
#define VERSION     10
#define TRUE        0x01
#define FALSE       0x00

#define SERIALPORT  PORTA
#define SERIALDDR   DDRA
#define SERIALBIT   0x01
#define SERIALCLK   0x02

#define ROWPORT     PORTC
#define ROWDDR      DDRC

#define SPIDDR      DDRB
#define SPIPORT     PORTB
#define SPIPIN      PINB

#define SCLK        0x02
#define MOSI        0x04
#define MISO        0x08
#define CS          0x01
#define MMCPOWER    0x10

#define RED         0
#define GREEN       1
#define AMBER       2

/*--------------------------------------------------------------------------------------------------
                                    Character generator

            This table defines the standard ASCII characters in a 5x7 dot format.
--------------------------------------------------------------------------------------------------*/
static const char FontLookup [][5] =
{
   { 0x00, 0x00, 0x00, 0x00, 0x00 },  // sp
   { 0x00, 0x00, 0x2f, 0x00, 0x00 },   // !
   { 0x00, 0x07, 0x00, 0x07, 0x00 },   // "
   { 0x14, 0x7f, 0x14, 0x7f, 0x14 },   // #
   { 0x24, 0x2a, 0x7f, 0x2a, 0x12 },   // $
   { 0xc4, 0xc8, 0x10, 0x26, 0x46 },   // %
   { 0x36, 0x49, 0x55, 0x22, 0x50 },   // &
   { 0x00, 0x05, 0x03, 0x00, 0x00 },   // '
   { 0x00, 0x1c, 0x22, 0x41, 0x00 },   // (
   { 0x00, 0x41, 0x22, 0x1c, 0x00 },   // )
   { 0x14, 0x08, 0x3E, 0x08, 0x14 },   // *
   { 0x08, 0x08, 0x3E, 0x08, 0x08 },   // +
   { 0x00, 0x00, 0x50, 0x30, 0x00 },   // ,
   { 0x10, 0x10, 0x10, 0x10, 0x10 },   // -
   { 0x00, 0x60, 0x60, 0x00, 0x00 },   // .
   { 0x20, 0x10, 0x08, 0x04, 0x02 },   // /
   { 0x3E, 0x51, 0x49, 0x45, 0x3E },   // 0
   { 0x00, 0x42, 0x7F, 0x40, 0x00 },   // 1
   { 0x42, 0x61, 0x51, 0x49, 0x46 },   // 2
   { 0x21, 0x41, 0x45, 0x4B, 0x31 },   // 3
   { 0x18, 0x14, 0x12, 0x7F, 0x10 },   // 4
   { 0x27, 0x45, 0x45, 0x45, 0x39 },   // 5
   { 0x3C, 0x4A, 0x49, 0x49, 0x30 },   // 6
   { 0x01, 0x71, 0x09, 0x05, 0x03 },   // 7
   { 0x36, 0x49, 0x49, 0x49, 0x36 },   // 8
   { 0x06, 0x49, 0x49, 0x29, 0x1E },   // 9
   { 0x00, 0x36, 0x36, 0x00, 0x00 },   // :
   { 0x00, 0x56, 0x36, 0x00, 0x00 },   // ;
   { 0x08, 0x14, 0x22, 0x41, 0x00 },   // <
   { 0x14, 0x14, 0x14, 0x14, 0x14 },   // =
   { 0x00, 0x41, 0x22, 0x14, 0x08 },   // >
   { 0x02, 0x01, 0x51, 0x09, 0x06 },   // ?
   { 0x32, 0x49, 0x59, 0x51, 0x3E },   // @
   { 0x7E, 0x11, 0x11, 0x11, 0x7E },   // A
   { 0x7F, 0x49, 0x49, 0x49, 0x36 },   // B
   { 0x3E, 0x41, 0x41, 0x41, 0x22 },   // C
   { 0x7F, 0x41, 0x41, 0x22, 0x1C },   // D
   { 0x7F, 0x49, 0x49, 0x49, 0x41 },   // E
   { 0x7F, 0x09, 0x09, 0x09, 0x01 },   // F
   { 0x3E, 0x41, 0x49, 0x49, 0x7A },   // G
   { 0x7F, 0x08, 0x08, 0x08, 0x7F },   // H
   { 0x00, 0x41, 0x7F, 0x41, 0x00 },   // I
   { 0x20, 0x40, 0x41, 0x3F, 0x01 },   // J
   { 0x7F, 0x08, 0x14, 0x22, 0x41 },   // K
   { 0x7F, 0x40, 0x40, 0x40, 0x40 },   // L
   { 0x7F, 0x02, 0x0C, 0x02, 0x7F },   // M
   { 0x7F, 0x04, 0x08, 0x10, 0x7F },   // N
   { 0x3E, 0x41, 0x41, 0x41, 0x3E },   // O
   { 0x7F, 0x09, 0x09, 0x09, 0x06 },   // P
   { 0x3E, 0x41, 0x51, 0x21, 0x5E },   // Q
   { 0x7F, 0x09, 0x19, 0x29, 0x46 },   // R
   { 0x46, 0x49, 0x49, 0x49, 0x31 },   // S
   { 0x01, 0x01, 0x7F, 0x01, 0x01 },   // T
   { 0x3F, 0x40, 0x40, 0x40, 0x3F },   // U
   { 0x1F, 0x20, 0x40, 0x20, 0x1F },   // V
   { 0x3F, 0x40, 0x38, 0x40, 0x3F },   // W
   { 0x63, 0x14, 0x08, 0x14, 0x63 },   // X
   { 0x07, 0x08, 0x70, 0x08, 0x07 },   // Y
   { 0x61, 0x51, 0x49, 0x45, 0x43 },   // Z
   { 0x00, 0x7F, 0x41, 0x41, 0x00 },   // [
   { 0x02, 0x04, 0x08, 0x10, 0x20 },   // back slash
   { 0x00, 0x41, 0x41, 0x7f, 0x00 },   // ]
   { 0x04, 0x02, 0x01, 0x02, 0x04 },   // ^
   { 0x40, 0x40, 0x40, 0x40, 0x40 },   // _
   { 0x00, 0x01, 0x02, 0x04, 0x00 },   // '
   { 0x20, 0x54, 0x54, 0x54, 0x78 },   // a
   { 0x7F, 0x48, 0x44, 0x44, 0x38 },   // b
   { 0x38, 0x44, 0x44, 0x44, 0x20 },   // c
   { 0x38, 0x44, 0x44, 0x48, 0x7F },   // d
   { 0x38, 0x54, 0x54, 0x54, 0x18 },   // e
   { 0x08, 0x7E, 0x09, 0x01, 0x02 },   // f
   { 0x0C, 0x52, 0x52, 0x52, 0x3E },   // g
   { 0x7F, 0x08, 0x04, 0x04, 0x78 },   // h
   { 0x00, 0x44, 0x7D, 0x40, 0x00 },   // i
   { 0x20, 0x40, 0x44, 0x3D, 0x00 },   // j
   { 0x7F, 0x10, 0x28, 0x44, 0x00 },   // k
   { 0x00, 0x41, 0x7F, 0x40, 0x00 },   // l
   { 0x7C, 0x04, 0x18, 0x04, 0x78 },   // m
   { 0x7C, 0x08, 0x04, 0x04, 0x78 },   // n
   { 0x38, 0x44, 0x44, 0x44, 0x38 },   // o
   { 0x7C, 0x14, 0x14, 0x14, 0x08 },   // p
   { 0x08, 0x14, 0x14, 0x18, 0x7C },   // q
   { 0x7C, 0x08, 0x04, 0x04, 0x08 },   // r
   { 0x48, 0x54, 0x54, 0x54, 0x20 },   // s
   { 0x04, 0x3F, 0x44, 0x40, 0x20 },   // t
   { 0x3C, 0x40, 0x40, 0x20, 0x7C },   // u
   { 0x1C, 0x20, 0x40, 0x20, 0x1C },   // v
   { 0x3C, 0x40, 0x30, 0x40, 0x3C },   // w
   { 0x44, 0x28, 0x10, 0x28, 0x44 },   // x
   { 0x0C, 0x50, 0x50, 0x50, 0x3C },   // y
   { 0x44, 0x64, 0x54, 0x4C, 0x44 },   // z
   { 0x00, 0x08, 0x36, 0x41, 0x00 },   // {
   { 0x00, 0x00, 0x7f, 0x00, 0x00 },   // |
   { 0x00, 0x41, 0x36, 0x08, 0x00 },   // }
   { 0x04, 0x02, 0x04, 0x08, 0x04 },   // ~
   { 0x00, 0x00, 0x36, 0x00, 0x00 },   // ¦
   { 0x0e, 0x51, 0x31, 0x11, 0x08 },   // Ç
   { 0x3c, 0x41, 0x40, 0x21, 0x7c },   // ü
   { 0x38, 0x54, 0x56, 0x55, 0x18 },   // é
   { 0x20, 0x56, 0x55, 0x56, 0x78 },   // â
   { 0x20, 0x55, 0x54, 0x55, 0x78 },   // ä
   { 0x20, 0x55, 0x56, 0x54, 0x78 },   // à
   { 0x08, 0x08, 0x2a, 0x1c, 0x08 },   // Right Arrow  (chr 134)
   { 0x0e, 0x51, 0x31, 0x11, 0x08 },   // ç
   { 0x38, 0x56, 0x55, 0x56, 0x18 },   // ê
   { 0x38, 0x55, 0x54, 0x55, 0x18 },   // ë
   { 0x38, 0x55, 0x56, 0x54, 0x18 },   // è
   { 0x00, 0x45, 0x7c, 0x41, 0x00 },   // ï
   { 0x00, 0x46, 0x7d, 0x42, 0x00 },   // î
   { 0x7f, 0x7f, 0x7f, 0x7f, 0x7f },   // free (chr 141)  
   { 0x7f, 0x7f, 0x7f, 0x7f, 0x7f },   // free (chr 142)      
   { 0x7f, 0x7f, 0x7f, 0x7f, 0x7f },   // free (chr 143)  
   { 0x7c, 0x54, 0x56, 0x55, 0x44 },   // É
   { 0x7f, 0x7f, 0x7f, 0x7f, 0x7f },   // free (chr 145)        
   { 0x7f, 0x7f, 0x7f, 0x7f, 0x7f },   // free (chr 146)        
   { 0x38, 0x46, 0x45, 0x46, 0x38 },   // ô
   { 0x7f, 0x7f, 0x7f, 0x7f, 0x7f },   // free (chr 148)      
   { 0x38, 0x45, 0x46, 0x44, 0x38 },   // ò
   { 0x3c, 0x42, 0x41, 0x22, 0x7c },   // û
   { 0x3c, 0x41, 0x42, 0x20, 0x7c }    // ù    
};

//**************************************
//          P R O T O T Y P E
//**************************************
void main(void);
void GetNextPage(unsigned char First);
void uart1_rx_isr(void);
void Analyse(void);
void TxString(const char *ch);
void TxChar(char ch);
void ClrSCR(void);
void WriteString(int x,const unsigned char *ptr,unsigned char color);
void WriteChar(int ptr,unsigned char ch,unsigned char color);
int DoDisplay(void);
void SendOnBit(void);
void SendOffBit(void);
void Delay_1ms(int Del);

int MMCInit(void);
void MMCInfo(void);
int MMCReadSector(unsigned long lba, unsigned char * s);
int MMCWriteSector(unsigned long lba, unsigned char *s);
unsigned char MMCGet(void);
unsigned char MMCDataToken(void);
void MMCCommand(unsigned char command, unsigned int px, unsigned int py);

unsigned char SpiByte(unsigned char byte);

//******************************************************************
//*   Global Variable
//******************************************************************
char Red[512];
char Green[512];
char GreenT[512];
char RedT[512];
int MsgLen;
unsigned char Speed = 3;
unsigned char MaxPage = 0;

unsigned char NewData = FALSE;

char RxBuffer[100];

//**************************************
//            M A I N
//**************************************
void main(void)
{
WDR();
WDTCR = 0x0f; // Watch Dog enable

ROWDDR = 0xff;
SERIALDDR |= SERIALBIT + SERIALCLK;

UCSR1B = 0x00; //disable while setting baud rate
UCSR1A = 0x00;
UCSR1C = 0x06;
UBRR1L = 0x33; //set baud rate lo for 19200 at 16Mhz
UBRR1H = 0x00; //set baud rate hi
UCSR1B = 0x98;

SEI();

ClrSCR();
while (MMCInit() != 0);
cstrcpy(&RxBuffer[0],"<99MMC: ~GInit OK  ~AVer:1.0>\0");
Analyse();

MMCReadSector(0,&GreenT[0]);
MaxPage = GreenT[0];

GetNextPage(TRUE);
while(1)
      {
      if (DoDisplay()) GetNextPage(FALSE);
      if (NewData == TRUE)
        {
        Analyse();
        NewData = FALSE;
        }
      WDR();
      }
}

//**************************************
// void uart1_rx_isr(void)
//**************************************
#pragma interrupt_handler uart1_rx_isr:31
void uart1_rx_isr(void)
{
static char *Ptr = &RxBuffer[0];
unsigned char ch;

ch = UDR1;
if (Ptr > &RxBuffer[100]) Ptr = &RxBuffer[0];

if (ch == '<') Ptr = &RxBuffer[0];
*Ptr++ = ch;
if (ch == '>') NewData = TRUE;
}

//**************************************
// void Analyse(void)
//**************************************
void Analyse(void)
{
char *Ptr = &RxBuffer[0];
unsigned char Page;
int x = 0;
unsigned char Color = AMBER;
unsigned char Spd = 3;
unsigned char Row;

Row = ROWPORT;
ROWPORT = 0x00;

ClrSCR();
Ptr++;
Page = (((*Ptr)-0x30) * 10) + ((*(Ptr+1)-0x30));
Ptr++;
Ptr++;

if ((Page == 99) && (*Ptr == 'D'))
  {
  for (x=0;x<512;x++) GreenT[x] = 0x00;
  MMCWriteSector(0,&GreenT[0]);
  MaxPage = 0;
  TxString("Delete ALL\n\r\0");
  ROWPORT = Row;
  return;
  }

if ((Page > 99) || (Page < 0))
  {
  ROWPORT = Row;
  return;
  }

if (Page > (MaxPage+1))
  {
  ROWPORT = Row;
  return;
  }

while (*Ptr != '>')
    {
    if (*Ptr == '~')
      {
      Ptr++;
      if (*Ptr == 'R') Color = RED;
      if (*Ptr == 'G') Color = GREEN;
      if (*Ptr == 'A') Color = AMBER;
      if (*Ptr == '1') Spd = 1;
      if (*Ptr == '2') Spd = 2;
      if (*Ptr == '3') Spd = 3;
      if (*Ptr == '4') Spd = 4;
      if (*Ptr == '5') Spd = 5;
      Ptr++;
      }
    else WriteChar(x++,*Ptr++,Color);
    }

GreenT[510] = Spd;
RedT[510] = (x*6)>>8;
RedT[511] = (x*6);

MMCWriteSector((Page*2)+1, &RedT[0]);
MMCWriteSector((Page*2)+2, &GreenT[0]);
if ((Page > MaxPage) && (Page != 99))
  {
  for (x=0;x<512;x++) GreenT[x] = 0x00;
  GreenT[0] = Page;
  MMCWriteSector(0,&GreenT[0]);
  MaxPage = Page;
  }
ROWPORT = Row;
}

//**************************************
// void TxString(unsigned char *ch)
//**************************************
void TxString(const char *ch)
{
while(*ch != 0x00) TxChar(*ch++);
}

//**************************************
// void TxChar(unsigned char ch)
//**************************************
void TxChar(unsigned char ch)
{
while (!(UCSR1A & 0x20)) WDR(); // Wait for empty transmit buffer
UDR1 = ch;                     // Write char
}

//**************************************
// void GetNextPage(void)
//**************************************
void GetNextPage(unsigned char First)
{
static int Page = 0;

WDR();
if (First == TRUE) // Retrive the First time init message of status
  {
  MMCReadSector((99*2)+1, &Red[0]);
  MMCReadSector((99*2)+2, &Green[0]);
  Speed = Green[510];
  MsgLen = (Red[510]<<8) + Red[511];
  }
else
  {
  MMCReadSector((Page*2)+1, &Red[0]);
  MMCReadSector((Page*2)+2, &Green[0]);
  Speed = Green[510];
  if (Speed > 5) Speed = 1;
  MsgLen = (Red[510]<<8) + Red[511];

  Page++;
  if (Page > MaxPage) Page = 0;
  }
}

//**************************************
// void ClrSCR(void)
//**************************************
void ClrSCR(void)
{
int i;

for (i=0;i<510;i++)
  {
  WDR();
  RedT[i] = 0x00;
  GreenT[i] = 0x00;
  }
}

//**************************************
// void WriteString(unsigned char ptr,unsigned char color)
//**************************************
void WriteString(int x,const unsigned char *ptr,unsigned char color)
{
while(*ptr != 0x00) WriteChar(x++,*ptr++,color);
}

//**************************************
// void WriteChar(unsigned char x,unsigned char ch,unsigned char color)
//**************************************
void WriteChar(int x,unsigned char ch,unsigned char color)
{
unsigned char i;

x *= 6;

if (x > 509) return; // Max of 85 char per page 85*6 = 510

for (i=0;i<5;i++)
   {
  WDR();
   if (color == RED) RedT[x++] = FontLookup[ch - 32][i];
  if (color == GREEN) GreenT[x++] = FontLookup[ch - 32][i];
  if (color == AMBER)
     {
     RedT[x] = FontLookup[ch - 32][i];
     GreenT[x++] = FontLookup[ch - 32][i];
     }
   }
RedT[x] = 0x00;
GreenT[x++] = 0x00;
}

//**************************************
// void DoDisplay(void)
//**************************************
int DoDisplay(void)
{
unsigned char Row;
unsigned char Col;
unsigned char RowMask;
int i,j;
static int Pos = 80;
char GreenT[80];
char RedT[80];
char SHIFT[160];

WDR();
// Clear Buffer's
for (i=0;i<80;i++)
  {
  GreenT[i] = 0x00;
  RedT[i] = 0x00;
  }

// Do Scrolling Right to Left
if (Pos >= 0)
  {
  j = 0;
  for (i=Pos;i<80;i++)
        {
     GreenT[i] = Green[j];
     RedT[i] = Red[j];
     j++;
     }
  }
else
  {
  j = 0;
  for (i=abs(Pos);i<(80+abs(Pos));i++)
        {
     GreenT[j] = Green[i];
     RedT[j] = Red[i];
     j++;
     }
  }

Pos--;
if (Pos < 0-MsgLen)
  {
  Pos = 80;
  return 1;
  }

// Append Red & Green to the Real shifting buffer

j = 0;
for (i=0;i<80;i++)
  {
  if ((!(i % 8)) && (i != 0)) j +=8;
  SHIFT[j] = GreenT[i];
  SHIFT[j+8] = RedT[i];
  j++;
  }

// Do the Row/Column display

for (i=0;i<Speed;i++)
  {
  RowMask = 0x40;
  for (Row=0;Row<7;Row++)
     {
     WDR();
     for (Col=0;Col<160;Col++)
        {
        if ((SHIFT[Col] & RowMask) == RowMask) SendOnBit();
        else SendOffBit();
        }
     ROWPORT = RowMask;
     Delay_1ms(1);
     ROWPORT = 0x00;
     RowMask = RowMask >> 1;
     }
  }
return 0;
}

//**************************************
// void SendOnBit(void)
//**************************************
void SendOnBit(void)
{
SERIALPORT |= SERIALBIT;
SERIALPORT |= SERIALCLK;
SERIALPORT &= ~SERIALCLK;
}

//**************************************
// void SendOffBit(void)
//**************************************
void SendOffBit(void)
{
SERIALPORT &= ~SERIALBIT;
SERIALPORT |= SERIALCLK;
SERIALPORT &= ~SERIALCLK;
}

//**************************************
// void Delay_1ms(void)
//**************************************
void Delay_1ms(int Del)
{
int i;

while (Del--)
    {
    for (i=0;i<2000;i++) WDR();
    }
}

/*************************************************************
* MMC Init function
*
* - flushes card receive buffer
* - selects card
* - sends the reset command
* - sends the initialization command, waits for card ready
*************************************************************/
int MMCInit(void)
{
unsigned int i;
unsigned char Byte;

SPIDDR = SCLK + MOSI + CS + MMCPOWER;
SPIPORT = 0x00;
Delay_1ms(500);
SPIPORT |= MMCPOWER;
SPIPORT |= CS;
SPCR = (1<<SPE) | (1<<MSTR) | (1<<SPR1) | (1<<SPR0);    /* enable SPI as master, set clk divider */
Delay_1ms(250);

/* start off with 80 bits of high data with card deselected */
for(i=0;i<10;i++)
SpiByte(0xff);
SPIPORT &= ~CS;        /* select card */

/* now send CMD0 - go to idle state */
MMCCommand(0,0,0);
if (MMCGet() != 1)
  {
  SPIPORT |= CS;
  return -1;  // MMC Not detected
  }

/* send CMD1 until we get a 0 back, indicating card is done initializing */
i = 0xffff;
while ((SpiByte(0xff) != 0) && (--i))
    {
    MMCCommand(1,0,0);
    WDR();
    }
if (i == 0)
  {
  SPIPORT |= CS;
  return -2;  // Init Fail
  }

SPIPORT |= CS;
return 0;
}

/************************************************************
* void MMCInfo(void)
*
* - gets and prints formatted CID and CSD info from card
************************************************************/
void MMCInfo(void)
{
int i;

MMCCommand(10,0,0);
if (MMCDataToken() != 0xfe) TxString("MMC: error during CID read\n\r\0");
else TxString("MMC: CID read\n\r\0");

// Skip 3 byte Manufacturer ID
SpiByte(0xff);
SpiByte(0xff);
SpiByte(0xff);

TxString("MMC: Product Name : ");
for (i=0;i<7;i++) TxChar(SpiByte(0xff));
TxString("\n\r\0");

for (i=0;i<9;i++) SpiByte(0xff); // Read 9 left byte

SPIPORT |= CS;
}

/************************************************************
* int MMCReadSector(unsigned long lba, unsigned char * s)
*
* - reads a sector from the card (512 bytes)
* - takes sector # as param
************************************************************/
int MMCReadSector(unsigned long lba, char *s)
{
unsigned int i;

MMCCommand(17,(lba>>7) & 0xffff, (lba<<9) & 0xffff);
if (MMCDataToken() != 0xfe)
  {
  SEI();
  return -1;
  }

for (i=0;i<512;i++)     /* read the sector */
  {
   *s++ = SpiByte(0xff);
  }
SpiByte(0xff);          /* checksum -> don't care about it for now */
SpiByte(0xff);       /* checksum -> don't care about it for now */
SPIPORT |= CS;
return 0;
}

/************************************************************
* int MMCWriteSector(unsigned long lba, unsigned char * s)
*
* - reads a sector from the card (512 bytes)
* - takes sector # as param
************************************************************/
int MMCWriteSector(unsigned long lba, char *s)
{
unsigned int i;

MMCCommand(24, (lba>>7)& 0xffff, (lba<<9)& 0xffff);
if (MMCGet() == 0xff) return -1;

SpiByte(0xfe);  // Send Start Byte

for (i=0;i<512;i++)       /* read the sector */
  {
   SpiByte(*s++);
  }
SpiByte(0xff);          /* checksum -> don't care about it for now */
SpiByte(0xff);       /* checksum -> don't care about it for now */
SpiByte(0xff);       /* Read "data response byte"                 */

i = 0xffff;
while ((SpiByte(0xff) == 0x00) && (--i)); /* wait for write finish */
if (i == 0) return -1; // Error

SPIPORT |= CS;
return 0;
}

/************************************************************
* unsigned char MMCGet(void)
*
* - pings the card until it gets a non-0xff value
* - returns one byte of read info
************************************************************/
unsigned char MMCGet(void)
{
unsigned int i = 0xffff;
unsigned char Byte = 0xff;

while((Byte == 0xff) && (--i)) Byte = SpiByte(0xff);
return Byte;
}

/************************************************************
* int MMCDataToken(void)
*
* - pings the card until it gets data token
* - returns one byte of read info (data token)
************************************************************/
unsigned char MMCDataToken(void)
{
unsigned int i = 0xffff;
unsigned char Byte = 0xff;

while((Byte != 0xfe) && (--i)) Byte = SpiByte(0xff);
return Byte;
}

/************************************************************
* void MMCCommand(unsigned char command, unsigned int px, unsigned int py)
*
* - send one byte of 0xff, then issue command + params + (fake) crc
* - eat up the one command of nothing after the CRC
************************************************************/
void MMCCommand(unsigned char command, unsigned int px, unsigned int py)
{
SPIPORT &= ~CS;
SpiByte(0xff);
SpiByte(command | 0x40);
SpiByte((unsigned char)((px >> 8)&0x0ff)); /* high byte of param y */
SpiByte((unsigned char)(px & 0x00ff));     /* low byte of param y */
SpiByte((unsigned char)((py >> 8)&0x0ff)); /* high byte of param x */
SpiByte((unsigned char)(py & 0x00ff));     /* low byte of param x */
SpiByte(0x95);            /* correct CRC for first command in SPI          */
                         /* after that CRC is ignored, so no problem with */
                         /* always sending 0x95                           */
SpiByte(0xff);
}

/*****************************************************
* Main SPI routine
*  - transmits a byte and receives a byte simultaneously
*  - received byte is returned
*  - if you only want to read a byte, put a dummy
*    (say 0xff) in the transmit slot
****************************************************/
unsigned char SpiByte(unsigned char byte)
{
WDR();
SPDR = byte;               /* put byte to send in SPDR, which initiates xmit  */
while(!(SPSR & (1<<SPIF)));/* wait for completion */
return SPDR;               /* return with byte shifted in from slave */
}[code][/code]
[/code]
Başlık: Antrak gazetesindeki 24 sutun kayan yazı
Gönderen: gosub - 11 Aralık 2004, 14:48:46
selam arkadaşlar ben antrak gazetesindeki 24 suytun kayan yazı projesini yaptım .

Daha sonrada asm dosyasına ekleme yapararak 32 sutun bir hex yarattım şemada görüldüğü gibi boşta kalan bir nor kapısı daha var bu kapıyada bir 74160 bağlayarak devreyi çalıştırdım.


şimdi ben sizden yardım istiyorum bana yardımcı olursanız sevinirim .

konu şu yazı bir kere kaysın daha sonra 5 saniye kadar ekranda sabit dursun istiyorum .

Bunun için asm nin hangi kodları arsında değişiklik veya ekleme yapacagım hakkında bilgi verirseniz çok iyi olur .

saygılarımla



;------------------------------------------------------------------------------------;
;                                      5x7 LED matrix                                ;
; Klavyeden girilen karakterler, önce paralel veriye dönüştürülür. Veri eğer,        ;
; gösterilebilecek bir karakterse, PIC'in EEPROM'una TUŞ KODU olarak kaydedilir.     ;
; Program EEOKU bölümüne geçtiğinde, EEPROM'a kaydedilmiş kodları sırasıyla okur.    ;
; Okunan kod, çevrim tablosu tarafından karaktere dönüştürülür. Elde edilen yeni     ;
; veri, LED display'lere gönderilir. 7 KASIM 2003 CUMA                            ;
;------------------------------------------------------------------------------------;
LIST P=16F84A
INCLUDE <P16F84A.INC>
__CONFIG _CP_OFF &_WDT_OFF &_PWRTE_ON &_XT_OSC
;------------------------------------------------------------------------------------;
; Register tanımlamaları                                                             ;
;------------------------------------------------------------------------------------;

TEMP EQU H'0F' ; Geçici register.

VERI EQU H'11' ; Seri verinin paralel olarak saklandığı file.
BIT_N EQU H'12' ; Klavyeden alınan bit sayısı.
CHAR_SUTUN EQU H'13' ; Karakterin sütun sayısı.
EEREAD_N EQU H'14' ; EEPROM'dan okunacak maximum sütun sayısı.
EEWRITE_N EQU H'15' ; EEPROM'a kaydedilen maximum sütun sayısı.
LINE EQU H'16' ; Çevrim tablosunda ulaşılacak satır no.

TIMER_H1 EQU H'1A' ; Timer HIGH1.
TIMER_H2 EQU H'1B' ; Timer HIGH2.
TIMA EQU H'1C' ; TimerA
TIMB EQU H'1D' ; TimerB
W_TEMP EQU H'1E' ; W'nin saklandığı geçici register.
STATUS_TEMP EQU H'1F' ; STATUS'ın saklandığı geçici register.

SUTUN1 EQU H'21' ; Sütun 1 bilgisinin saklandığı register.
SUTUN2 EQU H'22' ; Sütun 2 bilgisinin saklandığı register.
SUTUN3 EQU H'23' ; Sütun 3 bilgisinin saklandığı register.
SUTUN4 EQU H'24' ; Sütun 4 bilgisinin saklandığı register.
SUTUN5 EQU H'25' ; Sütun 5 bilgisinin saklandığı register.
SUTUN6 EQU H'26' ; Sütun 6 bilgisinin saklandığı register.
SUTUN7 EQU H'27' ; Sütun 7 bilgisinin saklandığı register.
SUTUN8 EQU H'28' ; Sütun 8 bilgisinin saklandığı register.
SUTUN9 EQU H'29' ; Sütun 9 bilgisinin saklandığı register.
SUTUN10 EQU H'2A' ; Sütun 10 bilgisinin saklandığı register.
SUTUN11 EQU H'2B' ; Sütun 11 bilgisinin saklandığı register.
SUTUN12 EQU H'2C' ; Sütun 12 bilgisinin saklandığı register.
SUTUN13 EQU H'2D' ; Sütun 13 bilgisinin saklandığı register.
SUTUN14 EQU H'2E' ; Sütun 14 bilgisinin saklandığı register.
SUTUN15 EQU H'2F' ; Sütun 15 bilgisinin saklandığı register.
SUTUN16 EQU H'30' ; Sütun 16 bilgisinin saklandığı register.
SUTUN17 EQU H'31' ; Sütun 17 bilgisinin saklandığı register.
SUTUN18 EQU H'32' ; Sütun 18 bilgisinin saklandığı register.
SUTUN19 EQU H'33' ; Sütun 19 bilgisinin saklandığı register.
SUTUN20 EQU H'34' ; Sütun 20 bilgisinin saklandığı register.
SUTUN21 EQU H'35' ; Sütun 21 bilgisinin saklandığı register.
SUTUN22 EQU H'36' ; Sütun 22 bilgisinin saklandığı register.
SUTUN23 EQU H'37' ; Sütun 23 bilgisinin saklandığı register.
SUTUN24 EQU H'38' ; Sütun 24 bilgisinin saklandığı register.
SUTUN25     EQU H'39'    
SUTUN26     EQU H'3A'
SUTUN27     EQU H'3B'
SUTUN28     EQU H'3C'
SUTUN29     EQU H'3D'
SUTUN30     EQU H'3E'
SUTUN31     EQU H'3F'
SUTUN32     EQU H'40'


;------------------------------------------------------------------------------------;

ORG H'0000' ; RESET adresi.
GOTO MAIN ; Ana programa.

ORG H'0004' ; Kesme adresi.
GOTO KLYOKU ; Kesme alt programına.

;«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»;
YUKLE ; PORTA ve PORTB'nin başlangıç ayarları.
;«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»;

BSF STATUS,RP0 ; BANK1'e geç.
MOVLW B'00011000' ; W'ye H'10' yükle.
MOVWF PORTA ; Çıkışlar: RA0=CLOCK, RA1=RESET, RA2=PRESET
       ; Girişler: RA3=SCAN_END, RA4=Klavye DATA
MOVLW B'10000000' ; W'ye H'7F' yükle.
MOVWF PORTB ; RB7 giriş (Klavye CLOCK), diğerleri çıkış.
BCF STATUS,RP0    ; BANK0'a dön.
CLRF PORTB ; PORTB'yi temizle.
RETURN

;«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»;
KLYTIMER ; Bu alt program, besleme gerilimin uygulanmasıyla birlikte,         ;
; klavyeden gelen tanıtım bilgilerinin bitmesi için birkaç           ;
; saniyelik bir gecikme sağlar.                                      ;
;«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»;

MOVLW D'5' ; W'ye 5 yükle.
MOVWF TEMP ; TEMP'e gönder.

BEKLE CALL TIMER_HIGH ; Gecikme alt programını çağır.
DECFSZ TEMP,F ; TEMP-1, 0 mı?
GOTO BEKLE ; Hayır, TEMP'i eksiltmeye devam et.
RETURN ; Alt programdan çık.

;------------------------------------------------------------------------------------;
MAIN ; Ana program.
;------------------------------------------------------------------------------------;

CALL YUKLE ; Portların başlangıç ayarlarını yap.
CALL KLYTIMER ; Klavyeden gelen parazitleri söndür.

CLRF VERI ; VERI'yi temizle.
CLRF EEREAD_N ; EEREAD_N'i temizle.
CLRF EEWRITE_N ; EEWRITE_N'i temizle.
CLRF EEADR ; EEADR'yi temizle.
CLRF PORTB ; PORTB'yi temizle.

MOVLW B'10001000' ; W'ye B'10001000' yükle.
MOVWF INTCON ; Genel kesme izni, PORTB kesmesi aktif.

;------------------------------------------------------------------------------------;

START CLRF PORTB ; PORTB'yi temizle.
BSF PORTA,0 ; CLOCK hazır. (Düşen kenarla tetiklenir.)
BCF PORTA,1 ; RESET=0
BSF PORTA,1 ; RESET=1, sayıcılar saymaya hazır.
CALL SUTUN_TEMIZLE ; Sütun1...Sütun24'ü temizle.

KAYIT_SAYISI? MOVLW 0 ; W'ye 0 yaz.
MOVWF EEADR ; Veri sayısını okumak üzere EEADR'ye gönder.
CALL OKU ; Kayıt sayısını öğren ve dön.
MOVF EEDATA,W ; Kayıt sayısını W'ye yaz.
BTFSC STATUS,Z ; Kayıt sayısı 0'dan farklı mı?
GOTO START ; Hayır, kayıtlı sütun sayısı "0"

DATA?255 MOVF EEDATA,W ; EEDATA'yı W'ye yaz.
SUBLW D'255' ; 255-W
BTFSC STATUS,Z ; DATA, 255'ten farklı mı?
GOTO START ; Hayır 255, yeniden başla.
MOVF EEDATA,W ; EEDATA'yı W'ye yaz.
MOVWF EEREAD_N ; EEREAD_N register'a gönder.
MOVWF EEWRITE_N ; EEWRITE_N register'a gönder.

KAYIT_VARMI? MOVF EEREAD_N,W ; Okunacak karakter sayısını W'ye yaz.
SUBLW H'FF' ; 255-EEREAD_N
BTFSC STATUS,Z ; Okunacak bir kayıt var mı?
GOTO START ; Hayır, tüm kayıt silinmiş.

SONRAKI INCF EEADR,F ; EEADR+1
CALL OKU ; EEPROM'a kayıtlı veriyi al ve dön.
MOVF EEDATA,W ; EEDATA'yı W'ye yaz.
MOVWF VERI ; EEDATA'yı VERI'ye gönder.
SUBLW D'113' ; 113-VERI (Delete tuşunu kodu)
BTFSC STATUS,Z ; Basılan tuş DELETE'in dışında mı?
GOTO START ; Hayır, basılan tuş DELETE.

CALL ANALIZ ; Evet, tuşu analiz et, PORTB'den gönder.

DECFSZ EEREAD_N,F ; Kayıtlı son veri okundu mu?
GOTO BIR_SUTUN_BOS ; Hayır, karakter arası 1 sütun boş bırak.
MOVLW D'41' ; Evet.
MOVWF VERI ; W'ye boşluk karakterinin kodunu yaz.
CALL BOSLUK1 ; Her CALL BOSLUK1...
CALL BOSLUK1 ; ...komutuyla çağrılan...
CALL BOSLUK1 ; ...alt programda 3 sütunluk...
CALL BOSLUK1 ; ...boşluk bırakılır...
CALL BOSLUK1 ; ...Bu, toplam olarak...
CALL BOSLUK1 ; ...30 sütunluk boşluğa denk gelir....
CALL BOSLUK1 ; ...24 sütun kaydırıldığında display...
CALL BOSLUK1 ; ...söner. Bu noktadan itibaren 6 sütun...
CALL BOSLUK1 ; ...kayma süresi kadar daha, ekran...
CALL BOSLUK1 ; ...sönük kalacaktır.
GOTO START ; Ve tüm işlemleri yeniden yap.

BIR_SUTUN_BOS MOVLW H'00' ; W'ye 0 yükle.
MOVWF SUTUN1 ; SUTUN1'e gönder.
MOVWF PORTB ; PORTB'den gönder.
CALL GOSTER ; Sütun bilgilerini göster.
CALL SHIFT ; 1 adım sola ötele.
GOTO SONRAKI ; Hayır, sonraki sütun bilgisini oku.

;«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»;
SUTUN_TEMIZLE ; Sütun verisini temizle.                                            ;
;«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»;

CLRF SUTUN1
CLRF SUTUN2
CLRF SUTUN3
CLRF SUTUN4
CLRF SUTUN5
CLRF SUTUN6
CLRF SUTUN7
CLRF SUTUN8
CLRF SUTUN9
CLRF SUTUN10
CLRF SUTUN11
CLRF SUTUN12
CLRF SUTUN13
CLRF SUTUN14
CLRF SUTUN15
CLRF SUTUN16
CLRF SUTUN17
CLRF SUTUN18
CLRF SUTUN19
CLRF SUTUN10
CLRF SUTUN21
CLRF SUTUN22
CLRF SUTUN23
CLRF SUTUN24
       CLRF    SUTUN25
       CLRF SUTUN26
CLRF SUTUN27
CLRF SUTUN28
CLRF SUTUN29
CLRF SUTUN30
       CLRF SUTUN31
       CLRF SUTUN32
       
RETURN

;«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»;
OKU ; EEPROM'daki veriyi oku.
;«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»;

BSF STATUS,RP0 ; BANK1'e geç.
BSF EECON1,RD ; Girilen adresle ilgili veriyi oku.
BCF STATUS,RP0 ; BANK0'a dön.
RETURN

;«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»;
SHIFT ; Sütunları 1 adım sola ötele.                                               ;
;«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»;

MOVF SUTUN31,W ; 23. sütunu W'ye yaz.
MOVWF SUTUN32 ; 24. sütuna gönder.

MOVF SUTUN30,W ; 22. sütunu W'ye yaz.
MOVWF SUTUN31 ; 23. sütuna gönder.

MOVF SUTUN29,W ; 21. sütunu W'ye yaz.
MOVWF SUTUN30 ; 22. sütuna gönder.

MOVF SUTUN28,W ; 20. sütunu W'ye yaz.
MOVWF SUTUN29 ; 21. sütuna gönder.

MOVF SUTUN27,W ; 19. sütunu W'ye yaz.
MOVWF SUTUN28 ; 20. sütuna gönder.

MOVF SUTUN26,W ; 18. sütunu W'ye yaz.
MOVWF SUTUN27 ; 19. sütuna gönder.

MOVF SUTUN25,W ; 17. sütunu W'ye yaz.
MOVWF SUTUN26 ; 18. sütuna gönder.

MOVF SUTUN24,W ; 16. sütunu W'ye yaz.
MOVWF SUTUN25 ; 17. sütuna gönder.

MOVF SUTUN23,W ; 15. sütunu W'ye yaz.
MOVWF SUTUN24 ; 16. sütuna gönder.

MOVF SUTUN22,W ; 14. sütunu W'ye yaz.
MOVWF SUTUN23 ; 15. sütuna gönder.

MOVF SUTUN21,W ; 13. sütunu W'ye yaz.
MOVWF SUTUN22 ; 14. sütuna gönder.

MOVF SUTUN20,W ; 12. sütunu W'ye yaz.
MOVWF SUTUN21 ; 13. sütuna gönder.

MOVF SUTUN19,W ; 11. sütunu W'ye yaz.
MOVWF SUTUN20 ; 12. sütuna gönder.

MOVF SUTUN18,W ; 10. sütunu W'ye yaz.
MOVWF SUTUN19 ; 11. sütuna gönder.

MOVF SUTUN17,W ; 9. sütunu W'ye yaz.
MOVWF SUTUN18 ; 10. sütuna gönder.

MOVF SUTUN16,W ; 8. sütunu W'ye yaz.
MOVWF SUTUN17 ; 9. sütuna gönder.

MOVF SUTUN15,W ; 7. sütunu W'ye yaz.
MOVWF SUTUN16 ; 8. sütuna gönder.

MOVF SUTUN14,W ; 6. sütunu W'ye yaz.
MOVWF SUTUN15 ; 7. sütuna gönder.

MOVF SUTUN13,W ; 5. sütunu W'ye yaz.
MOVWF SUTUN14     ; 5. sütunu W'ye yaz.      

MOVF SUTUN12,W ; 4. sütunu W'ye yaz.
MOVWF SUTUN13     ; 5. sütunu W'ye yaz.

MOVF SUTUN11,W ; 3. sütunu W'ye yaz.
MOVWF SUTUN12     ; 5. sütunu W'ye yaz.              

MOVF SUTUN10,W ; 2. sütunu W'ye yaz.
MOVWF SUTUN11     ; 5. sütunu W'ye yaz.              

MOVF SUTUN9,W ; 1. sütunu W'ye yaz.
MOVWF SUTUN10     ; 5. sütunu W'ye yaz.              
       
       MOVF SUTUN8,W ; 1. sütunu W'ye yaz.
MOVWF SUTUN9    ; 5. sütunu W'ye yaz.                

       MOVF SUTUN7,W ; 1. sütunu W'ye yaz.
MOVWF SUTUN8      ; 5. sütunu W'ye yaz.            

       MOVF SUTUN6,W ; 1. sütunu W'ye yaz.
MOVWF SUTUN7    ; 5. sütunu W'ye yaz.

       MOVF SUTUN5,W ; 1. sütunu W'ye yaz.
MOVWF SUTUN6    ; 5. sütunu W'ye yaz.                

       MOVF SUTUN4,W ; 1. sütunu W'ye yaz.
MOVWF SUTUN5    ; 5. sütunu W'ye yaz.

       MOVF SUTUN3,W ; 1. sütunu W'ye yaz.
MOVWF SUTUN4    ; 5. sütunu W'ye yaz.

       MOVF SUTUN2,W ; 1. sütunu W'ye yaz.
MOVWF SUTUN3    ; 5. sütunu W'ye yaz.

       MOVF SUTUN1,W ; 1. sütunu W'ye yaz.
MOVWF SUTUN2 ; 2. sütuna gönder.
RETURN

;«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»;
GOSTER ; Tablodan alınan sütun bilgisini PORTB'den gönderme.                        ;
;«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»;

MOVF SUTUN1,W ; 1. sütunu W'ye yaz.
CALL GOSTER_ALT ; Diğer işlemler için alt programı çağır.
MOVF SUTUN2,W ; 2. sütunu W'ye yaz.
CALL GOSTER_ALT ; Diğer işlemler için alt programı çağır.
MOVF SUTUN3,W ; 3. sütunu W'ye yaz.
CALL GOSTER_ALT ; Diğer işlemler için alt programı çağır.
MOVF SUTUN4,W ; 4. sütunu W'ye yaz.
CALL GOSTER_ALT ; Diğer işlemler için alt programı çağır.
MOVF SUTUN5,W ; 5. sütunu W'ye yaz.
CALL GOSTER_ALT ; Diğer işlemler için alt programı çağır.
MOVF SUTUN6,W ; 6. sütunu W'ye yaz.
CALL GOSTER_ALT ; Diğer işlemler için alt programı çağır.
MOVF SUTUN7,W ; 7. sütunu W'ye yaz.
CALL GOSTER_ALT ; Diğer işlemler için alt programı çağır.
MOVF SUTUN8,W ; 8. sütunu W'ye yaz.
CALL GOSTER_ALT ; Diğer işlemler için alt programı çağır.
MOVF SUTUN9,W ; 9. sütunu W'ye yaz.
CALL GOSTER_ALT ; Diğer işlemler için alt programı çağır.
MOVF SUTUN10,W ; 10. sütunu W'ye yaz.
CALL GOSTER_ALT ; Diğer işlemler için alt programı çağır.
MOVF SUTUN11,W ; 11. sütunu W'ye yaz.
CALL GOSTER_ALT ; Diğer işlemler için alt programı çağır.
MOVF SUTUN12,W ; 12. sütunu W'ye yaz.
CALL GOSTER_ALT ; Diğer işlemler için alt programı çağır.
MOVF SUTUN13,W ; 13. sütunu W'ye yaz.
CALL GOSTER_ALT ; Diğer işlemler için alt programı çağır.
MOVF SUTUN14,W ; 14. sütunu W'ye yaz.
CALL GOSTER_ALT ; Diğer işlemler için alt programı çağır.
MOVF SUTUN15,W ; 15. sütunu W'ye yaz.
CALL GOSTER_ALT ; Diğer işlemler için alt programı çağır.
MOVF SUTUN16,W ; 16. sütunu W'ye yaz.
CALL GOSTER_ALT ; Diğer işlemler için alt programı çağır.
MOVF SUTUN17,W ; 17. sütunu W'ye yaz.
CALL GOSTER_ALT ; Diğer işlemler için alt programı çağır.
MOVF SUTUN18,W ; 18. sütunu W'ye yaz.
CALL GOSTER_ALT ; Diğer işlemler için alt programı çağır.
MOVF SUTUN19,W ; 19. sütunu W'ye yaz.
CALL GOSTER_ALT ; Diğer işlemler için alt programı çağır.
MOVF SUTUN20,W ; 20. sütunu W'ye yaz.
CALL GOSTER_ALT ; Diğer işlemler için alt programı çağır.
MOVF SUTUN21,W ; 21. sütunu W'ye yaz.
CALL GOSTER_ALT ; Diğer işlemler için alt programı çağır.
MOVF SUTUN22,W ; 22. sütunu W'ye yaz.
CALL GOSTER_ALT ; Diğer işlemler için alt programı çağır.
MOVF SUTUN23,W ; 23. sütunu W'ye yaz.
CALL GOSTER_ALT ; Diğer işlemler için alt programı çağır.
MOVF SUTUN24,W ; 24. sütunu W'ye yaz.
CALL GOSTER_ALT ; Diğer işlemler için alt programı çağır.
MOVF SUTUN25,W                    
CALL GOSTER_ALT
MOVF SUTUN26,W
CALL GOSTER_ALT
MOVF SUTUN27,W
CALL GOSTER_ALT
MOVF SUTUN28,W
CALL GOSTER_ALT
MOVF SUTUN29,W
CALL GOSTER_ALT
MOVF SUTUN30,W
CALL GOSTER_ALT
MOVF SUTUN31,W
CALL GOSTER_ALT
MOVF    SUTUN32,W
       CALL    GOSTER_ALT
     
       RETURN

;«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»;
GOSTER_ALT ; Bu alt program, sütun verisini PORTB'den gönderir.                 ;
;«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»;

MOVWF PORTB ; Sütun bilgisini PORTB'den gönder.
CALL TIMA_B ; Gecikme alt programini çagir.

BCF PORTA,0 ; CLOCK düsen kenar.
BSF PORTA,0 ; CLOCK yükselen kenar.
RETURN

;«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»;
TIMA_B ; PORTB'den LED'lere gönderilen bilgiyi gösterme süresi.                     ;
;«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»;

MOVLW D'123' ; W'ye 20 yaz.
MOVWF TIMA ; TIMA register'a gönder.
PAUSE2 MOVLW D'1' ; W'ye 25 yaz.
MOVWF TIMB ; TIMB register' gönder.
PAUSE1 DECFSZ TIMB,F ; TIMB-1, 0'a ulaştı mı?
GOTO PAUSE1 ; Hayır.
DECFSZ TIMA,F ; TIMA-1, 0'a ulaştı mı?
GOTO PAUSE2 ; Hayır.
RETURN ; Evet, alt programdan çık.

;«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»;
TIMER_HIGH ; Bu alt program yaklaşık 0.2 saniyelik bir gecikme sağlar.          ;
;«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»;

MOVLW D'255' ; W'ye 255 yaz.
MOVWF TIMER_H1 ; TIMER_H1 register'a gönder.

DONGU1 MOVLW D'255' ; W'ye 255 yaz.
MOVWF TIMER_H2 ; TIMER_H2 register'a gönder.

DONGU2 DECFSZ TIMER_H2,F ; TIMER_H2-1, 0 mı?
GOTO DONGU2 ; Hayır.
DECFSZ TIMER_H1,F ; TIMER_H1-1, 0 mı?
GOTO DONGU1 ; Hayır.
RETURN ; Evet, alt programdan çık.










;××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××;
KLYOKU ; Klavyeden gönderilen seri bilgiyi, paralel veriye dönüştürür.              ;
;××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××;

BCF INTCON,GIE ; Tüm kesme işlemleri geçersiz.
BCF INTCON,RBIE ; PORTB'den gelecek kesmeler geçersiz.
BCF INTCON,RBIF ; PORTB kesme bayrağını sıfırla.

MOVWF W_TEMP ; W'yi W_TEMP'e gönder.
SWAPF STATUS,W ; Alt ve üst 4-bit'i takas et.
MOVWF STATUS_TEMP ; STATUS'ı STATUS_TEMP'e gönder.

;××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××;

CLRF PORTB ; PORTB'yi temizle.

BASLA CLRF VERI ; VERI'yi, yeni bilgi için temizle.
CALL KLY_KONTROL ; Bit1 : START bit, değerlendirilmeyecek.
MOVLW D'8' ; W'ye 8 yükle.
MOVWF BIT_N ; BIT_N register'a gönder.

BIT_KAYDIR RRF VERI,F ; VERI içindeki bilgiyi, 1-bit sağa ötele.
CALL KLY_KONTROL ; CLOCK ve DATA sinyallerini değerlendir.
IORWF VERI,F ; W ve VERI'ye OR işlevi uygula.
IORLW B'01111111' ; W ve B'01111111'ye OR işlevi uygula.
ANDWF VERI,F ; Maskele.
DECFSZ BIT_N,F ; BIT_N-1, 0 mı?
GOTO BIT_KAYDIR ; Hayır.
CALL KLY_KONTROL ; Bit10 : EŞLİK bit'i, değerlendirilmeyecek.
CALL KLY_KONTROL ; Bit11 : STOP bit'i, değerlendirilmeyecek.

CALL KLY_KONTROL ; Klavyeden...
CALL KLY_KONTROL ; ...parmağın...
CALL KLY_KONTROL ; ...kaldırılması...
CALL KLY_KONTROL ; ...sırasında...
CALL KLY_KONTROL ; ...oluşan...
CALL KLY_KONTROL ; ...ikinci...
CALL KLY_KONTROL ; ...interrrupt'ın...
CALL KLY_KONTROL ; ...önlenmesi.
CALL KLY_KONTROL ; Aksi halde...
CALL KLY_KONTROL ; ...her karakter...
CALL KLY_KONTROL ; ...çift olarak gözükecektir.

GOTO KLY_MAIN ; Seri veri, paralel veriye dönüştürüldü.

KLY_KONTROL BTFSC PORTB,7 ; CLOCK 0 mı?
GOTO $ - 1 ; Hayır, 0 olmasını bekle.
BTFSS PORTB,7 ; CLOCK, 1 mi?
GOTO $ - 1 ; Hayır, 1 olmasını bekle.
BTFSS PORTA,4 ; DATA 1 mi?
RETLW B'00000000' ; Hayır, 0 ile dön.
RETLW B'10000000' ; Evet,  1 ile dön.

;××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××;
KLY_MAIN ; Bu alt program, klavyeden gelen seri bilgiyi okur.                 ;
;××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××;

DELETE? MOVF VERI,W ; VERI'yi W'ye yaz.
SUBLW D'113' ; 113-VERI
BTFSS STATUS,Z ; DELETE tuşuna basıldı mı?
GOTO HATAKONTROL ; Hayır, devam et.
MOVLW H'00' ; W'ye 0 yaz.
MOVWF EEADR ; Adres bilgisi olarak EEADR'ye gönder.
MOVWF EEDATA ; Veri olarak EEDATA'ya gönder.
CALL EEYAZ ; 0. adrese 0 yaz. (Kayıt sayısını temizle.)
CALL SUTUN_TEMIZLE ; Sütun bilgisini temizle.
CLRF EEREAD_N ; Okunacak kayıt sayısı 0
CLRF EEWRITE_N ; EEPROM'a kayıt sayısı 0
GOTO KLYCIK ; Silme işlemi tamamlandı.

HATAKONTROL MOVF VERI,W ; VERI'yi W'ye yaz.
SUBLW B'11110000' ; HATAKODU-VERI
BTFSC STATUS,Z ; Klavye kodu hatasız mı?
GOTO KLYCIK ; Hatalı, alt programdan çık.

SKIP MOVF VERI,W ; VERI'yi W'ye yaz.
ANDLW B'01111111' ; 7. bit'i maskele.
MOVWF VERI ; Maskelenen bilgiyi yeniden VERI'ye gönder.

VERI_KAYDET MOVF VERI,W ; VERI'yi W'ye yaz.
MOVWF EEDATA ; EEDATA'ya gönder.
MOVF EEWRITE_N,W ; EEWRITE_N'i W'ye yaz.
MOVWF EEADR ; EEADR'ye adres bilgisi olarak gönder.
INCF EEADR,F ; EEADR+1
INCF EEWRITE_N,F ; Yazılan kayıt sayısını 1 arttır.
CALL EEYAZ ; EEPROM'a yaz.

KAYIT_SAYISI MOVLW 0 ; Kayıt sayısının tutulduğu adres.
KAYDET MOVWF EEADR ; EEPROM'un ilk adresi.
MOVF EEWRITE_N,W ; Kayıtlı bellek sayısını W'ye yaz.
MOVWF EEDATA ; EEDATA' ya gönder.
CALL EEYAZ ; VERI'yi EEPROM'a kaydet.

KLYCIK SWAPF STATUS_TEMP,W ; STATUS_TEMP'i W'ye yaz.
MOVWF STATUS ; STATUS'ı ilk konumuna getir.
SWAPF W_TEMP,F ; W_TEMP'e swap işlemi uygula.
SWAPF W_TEMP,W ; W'yi ilk konumuna getir.

BCF INTCON,RBIF ; PORTB kesme bayrağını sıfırla.
BSF INTCON,GIE ; Yeni kesmeler kabul edilir.
BSF INTCON,RBIE ; PORTB'den gelecek kesmeler geçerli.

RETFIE ; Alt programından çık.

;«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»;
EEYAZ ; VERI'yi EEPROM'a kaydetme alt programi.                                    ;
;«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»;

BSF STATUS,RP0 ; BANK1'e geç.
BCF INTCON,GIE ; GIE pasif.
BSF EECON1,WREN ; Yazma islemine izin ver.
MOVLW H'55' ; EEPROM...
MOVWF EECON2 ; ...için...
MOVLW H'AA' ; ...standard...
MOVWF EECON2 ; ...islemler.
BSF EECON1,WR ; Yazma islemini baslat.
SIFIRDATUT BTFSC EECON1,WR ; Yazma islemi bitti mi?
GOTO SIFIRDATUT ; Hayir, bekle.
BSF EECON1,WREN ; Evet, Write Enable'i lojik "1" yap.
BCF EECON1,EEIF ; EEIF'i temizle.
BCF STATUS,RP0 ; BANK0'a dön.
RETURN

;«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»;
ANALIZ ; EEDATA register'ından alınan bilginin değerlendirilmesi.                   ;
;«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»;

BIR_1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'22' ; 22-EEDATA
BTFSS STATUS,Z ; Basılan tuş "1" mi?
GOTO IKI_1 ; Hayır.
MOVLW D'3' ; W'ye 3 yaz.
MOVWF LINE ; LINE register'a gönder.
MOVLW D'3' ; Sütun sayısını W'ye yaz.
MOVWF CHAR_SUTUN ; CHAR_SUTUN register'a gönder.
BIR_2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO BIR_2 ; Hayır, diğer sütunları oku.
RETURN

IKI_1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'30' ; 30-EEDATA
BTFSS STATUS,Z ; Basılan tuş "2" mi?
GOTO UC_1 ; Hayır.
MOVLW D'8' ; W'ye 8 yaz.
CALL COMMON1 ; Ortak işlemler1.
IKI_2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO IKI_2 ; Hayır, diğer sütunları oku.
RETURN

UC_1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'38' ; 38-EEDATA
BTFSS STATUS,Z ; Basılan tuş "3" mü?
GOTO DORT_1 ; Hayır.
MOVLW D'13' ; W'ye 13 yaz.
CALL COMMON1 ; Ortak işlemler1.
UC_2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO UC_2 ; Hayır, diğer sütunları oku.
RETURN

DORT_1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'37' ; 37-EEDATA
BTFSS STATUS,Z ; Basılan tuş "4" mü?
GOTO BES_1 ; Hayır.
MOVLW D'18' ; W'ye 18 yaz.
CALL COMMON1 ; Ortak işlemler1.
DORT_2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO DORT_2 ; Hayır, diğer sütunları oku.
RETURN

BES_1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'46' ; 46-EEDATA
BTFSS STATUS,Z ; Basılan tuş "5" mi?
GOTO ALTI_1 ; Hayır.
MOVLW D'23' ; W'ye 23 yaz.
CALL COMMON1 ; Ortak işlemler1.
BES_2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO BES_2 ; Hayır, diğer sütunları oku.
RETURN

ALTI_1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'54' ; 54-EEDATA
BTFSS STATUS,Z ; Basılan tuş "6" mı?
GOTO YEDI_1 ; Hayır.
MOVLW D'28' ; W'ye 28 yaz.
CALL COMMON1 ; Ortak işlemler1.
ALTI_2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO ALTI_2 ; Hayır, diğer sütunları oku.
RETURN

YEDI_1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'61' ; 61-EEDATA
BTFSS STATUS,Z ; Basılan tuş "7" mi?
GOTO SEKIZ_1 ; Hayır.
MOVLW D'33' ; W'ye 33 yaz.
CALL COMMON1 ; Ortak işlemler1.
YEDI_2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO YEDI_2 ; Hayır, diğer sütunları oku.
RETURN

SEKIZ_1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'62' ; 32-EEDATA
BTFSS STATUS,Z ; Basılan tuş "8" mi?
GOTO DOKUZ_1 ; Hayır.
MOVLW D'38' ; W'ye 38 yaz.
CALL COMMON1 ; Ortak işlemler1.
SEKIZ_2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO SEKIZ_2 ; Hayır, diğer sütunları oku.
RETURN

DOKUZ_1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'70' ; 70-EEDATA
BTFSS STATUS,Z ; Basılan tuş "9" mu?
GOTO SIFIR_1 ; Hayır.
MOVLW D'43' ; W'ye 43 yaz.
CALL COMMON1 ; Ortak işlemler1.
DOKUZ_2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO DOKUZ_2 ; Hayır, diğer sütunları oku.
RETURN

SIFIR_1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'69' ; 69-EEDATA
BTFSS STATUS,Z ; Basılan tuş "0" mı?
GOTO A1 ; Hayır.
MOVLW D'48' ; W'ye 48 yaz.
CALL COMMON1 ; Ortak işlemler1.
SIFIR_2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO SIFIR_2 ; Hayır, diğer sütunları oku.
RETURN

A1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'28' ; 28-EEDATA
BTFSS STATUS,Z ; Basılan tuş "A" mı?
GOTO B1 ; Hayır.
MOVLW D'53' ; W'ye 53 yaz.
CALL COMMON1 ; Ortak işlemler1.
A2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO A2 ; Hayır, diğer sütunları oku.
RETURN

B1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'50' ; 50-EEDATA
BTFSS STATUS,Z ; Basılan tuş "B" mi?
GOTO C1 ; Hayır.
MOVLW D'58' ; W'ye 58 yaz.
CALL COMMON1 ; Ortak işlemler1.
B2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO B2 ; Hayır, diğer sütunları gönder.
RETURN

C1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'33' ; 33-EEDATA
BTFSS STATUS,Z ; Basılan tuş "C" mi?
GOTO D1 ; Hayır.
MOVLW D'63' ; W'ye 63 yaz.
CALL COMMON1 ; Ortak işlemler1.
C2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO C2 ; Hayır, diğer sütunları gönder.
RETURN

D1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'35' ; 35-EEDATA
BTFSS STATUS,Z ; Basılan tuş "D" mi?
GOTO E1 ; Hayır.
MOVLW D'68' ; W'ye 73 yaz.
CALL COMMON1 ; Ortak işlemler1.
D2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO D2 ; Hayır, diğer sütunları gönder.
RETURN

E1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'36' ; 36-EEDATA
BTFSS STATUS,Z ; Basılan tuş "E" mi?
GOTO F1 ; Hayır.
MOVLW D'72' ; W'ye 77 yaz.
CALL COMMON4 ; Ortak işlemler4.
E2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO E2 ; Hayır, diğer sütunları gönder.
RETURN

F1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'43' ; 43-EEDATA
BTFSS STATUS,Z ; Basılan tuş "F" mi?
GOTO G1 ; Hayır.
MOVLW D'76' ; W'ye 81 yaz.
CALL COMMON4 ; Ortak işlemler4.
F2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO F2 ; Hayır, diğer sütunları oku.
RETURN

G1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'52' ; 52-EEDATA
BTFSS STATUS,Z ; Basılan tuş "G" mi?
GOTO H1 ; Hayır.
MOVLW D'81' ; W'ye 86 yaz.
CALL COMMON1 ; Ortak işlemler1.
G2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO G2 ; Hayır, diğer sütunları oku.
RETURN

H1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'51' ; 51-EEDATA
BTFSS STATUS,Z ; Basılan tuş "H" mi?
GOTO I1 ; Hayır.
MOVLW D'86' ; W'ye 96 yaz.
CALL COMMON1 ; Ortak işlemler1.
H2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO H2 ; Hayır, diğer sütunları oku.
RETURN

I1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'67' ; 67-EEDATA
BTFSS STATUS,Z ; Basılan tuş "I mı?
GOTO J1 ; Hayır.
MOVLW D'87' ; W'ye 97 yaz.
MOVWF LINE ; LINE register'a gönder.
MOVLW D'1' ; I'nın sütun sayısını W'ye yaz.
MOVWF CHAR_SUTUN ; CHAR_SUTUN register'a gönder.
I2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO I2 ; Hayır, diğer sütunları gönder.
RETURN

J1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'59' ; 59-EEDATA
BTFSS STATUS,Z ; Basılan tuş "J mi?
GOTO K1 ; Hayır.
MOVLW D'91' ; W'ye 102 yaz.
CALL COMMON4 ; Ortak işlemler4.
J2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO J2 ; Hayır, diğer sütunları gönder.
RETURN

K1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'66' ; 66-EEDATA
BTFSS STATUS,Z ; Basılan tuş "K" mı?
GOTO L1 ; Hayır.
MOVLW D'96' ; W'ye 107 yaz.
CALL COMMON1 ; Ortak işlemler1.
K2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO K2 ; Hayır, diğer sütunları gönder.
RETURN

L1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'75' ; 75-EEDATA
BTFSS STATUS,Z ; Basılan tuş "L" mi?
GOTO M1 ; Hayır.
MOVLW D'100' ; W'ye 111 yaz.
CALL COMMON4 ; Ortak işlemler4.
L2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO L2 ; Hayır, diğer sütunları gönder.
RETURN

M1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'58' ; 58-EEDATA
BTFSS STATUS,Z ; Basılan tuş "M" mi?
GOTO N1 ; Hayır.
MOVLW D'107' ; W'ye 118 yaz.
MOVWF LINE ; LINE register'a gönder.
MOVLW D'7' ; M'nin sütun sayısını W'ye yaz.
MOVWF CHAR_SUTUN ; CHAR_SUTUN register'a gönder.
M2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO M2 ; Hayır, diğer sütunları gönder.
RETURN

N1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'49' ; 49-EEDATA
BTFSS STATUS,Z ; Basılan tuş "M" mi?
GOTO O1 ; Hayır.
MOVLW D'112' ; W'ye 123 yaz.
CALL COMMON1 ; Ortak işlemler1.
N2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO N2 ; Hayır, diğer sütunları gönder.
RETURN

O1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'68' ; 68-EEDATA
BTFSS STATUS,Z ; Basılan tuş "O" mu?
GOTO P1 ; Hayır.
MOVLW D'117' ; W'ye 128 yaz.
CALL COMMON1 ; Ortak işlemler1.
O2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO O2 ; Hayır, diğer sütunları gönder.
RETURN

P1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'77' ; 77-EEDATA
BTFSS STATUS,Z ; Basılan tuş "P" mi?
GOTO Q1 ; Hayır.
MOVLW D'122' ; W'ye 138 yaz.
CALL COMMON1 ; Ortak işlemler1.
P2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO P2 ; Hayır, diğer sütunları gönder.
RETURN

Q1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'21' ; 21-EEDATA
BTFSS STATUS,Z ; Basılan tuş "Q" mu?
GOTO R1 ; Hayır.
MOVLW D'127' ; W'ye 143 yaz.
CALL COMMON1 ; Ortak işlemler1.
Q2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO Q2 ; Hayır, diğer sütunları oku.
RETURN

R1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'45' ; 45-EEDATA
BTFSS STATUS,Z ; Basılan tuş "R" mi?
GOTO S1 ; Hayır.
MOVLW D'132' ; W'ye 148 yaz.
CALL COMMON1 ; Ortak işlemler1.
R2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO R2 ; Hayır, diğer sütunları gönder.
RETURN

S1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'27' ; 27-EEDATA
BTFSS STATUS,Z ; Basılan tuş "S" mi?
GOTO T1 ; Hayır.
MOVLW D'137' ; W'ye 153 yaz.
CALL COMMON1 ; Ortak işlemler1.
S2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO S2 ; Hayır, diğer sütunları gönder.
RETURN

T1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'44' ; 44-EEDATA
BTFSS STATUS,Z ; Basılan tuş "T" mi?
GOTO U1 ; Hayır.
MOVLW D'142' ; W'ye 163 yaz.
CALL COMMON1 ; Ortak işlemler1.
T2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO T2 ; Hayır, diğer sütunları gönder.
RETURN

U1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'60' ; 60-EEDATA
BTFSS STATUS,Z ; Basılan tuş "U" mu?
GOTO V1 ; Hayır.
MOVLW D'147' ; W'ye 168 yaz.
CALL COMMON1 ; Ortak işlemler1.
U2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO U2 ; Hayır, diğer sütunları gönder.
RETURN

V1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'42' ; 42-EEDATA
BTFSS STATUS,Z ; Basılan tuş "V" mi?
GOTO W1 ; Hayır.
MOVLW D'152' ; W'ye 178 yaz.
CALL COMMON1 ; Ortak işlemler1.
V2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO V2 ; Hayır, diğer sütunları gönder.
RETURN

W1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'29' ; 29-EEDATA
BTFSS STATUS,Z ; Basılan tuş "W" mu?
GOTO X1 ; Hayır.
MOVLW D'159' ; W'ye 185 yaz.
MOVWF LINE ; LINE register'a gönder.
MOVLW D'7' ; Sütun sayısını W'ye yaz.
MOVWF CHAR_SUTUN ; CHAR_SUTUN register'a gönder.
W2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO W2 ; Hayır, diğer sütunları oku.
RETURN

X1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'34' ; 34-EEDATA
BTFSS STATUS,Z ; Basılan tuş "X" mi?
GOTO Y1 ; Hayır.
MOVLW D'164' ; W'ye 190 yaz.
CALL COMMON1 ; Ortak işlemler1.
X2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO X2 ; Hayır, diğer sütunları oku.
RETURN

Y1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'53' ; 53-EEDATA
BTFSS STATUS,Z ; Basılan tuş "Y" mi?
GOTO Z1 ; Hayır.
MOVLW D'169' ; W'ye 195 yaz.
CALL COMMON1 ; Ortak işlemler1.
Y2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO Y2 ; Hayır, diğer sütunları gönder.
RETURN

Z1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'26' ; 67-EEDATA
BTFSS STATUS,Z ; Basılan tuş "Z" mi?
GOTO NOKTA1 ; Hayır.
MOVLW D'174' ; W'ye 200 yaz.
CALL COMMON1 ; Ortak işlemler1.
Z2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO Z2 ; Hayır, diğer sütunları gönder.
RETURN

NOKTA1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'74' ; 74-EEDATA
BTFSS STATUS,Z ; Basılan tuş "NOKTA" mı?
GOTO BOSLUK1 ; Hayır.
MOVLW D'175' ; W'ye 201 yaz.
MOVWF LINE ; LINE register'a gönder.
MOVLW D'1' ; NOKTA'nın sütun sayısını W'ye yaz.
MOVWF CHAR_SUTUN ; CHAR_SUTUN register'a gönder.
NOKTA2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO NOKTA2 ; Hayır, diğer sütunları gönder.
RETURN

BOSLUK1 MOVF VERI,W ; Karakter'e ait kodu W'ye yaz.
SUBLW D'41' ; 41-EEDATA
BTFSS STATUS,Z ; Basılan tuş "SPACE" mi?
RETURN ; Hayır.
CUMLE_SONU MOVLW D'178' ; W'ye 204 yaz.
MOVWF LINE ; LINE register'a gönder.
MOVLW D'3' ; BOSLUK'un sütun sayısını W'ye yaz.
MOVWF CHAR_SUTUN ; CHAR_SUTUN register'a gönder.
BOSLUK2 MOVLW B'00000011' ; W'ye 3 yaz.
CALL COMMON2 ; Ortak işlemler2.
DECFSZ CHAR_SUTUN,F ; Karakterin sütun sayısı-1, 0 mı?
GOTO BOSLUK2 ; Hayır, diğer sütunları gönder.
RETURN

;«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»;
; Karakterlerle ilgili yapılacak ortak işlemler, bu alt programda toplandı.     ;
;«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»;

COMMON1 MOVWF LINE ; LINE register'a gönder.
MOVLW D'5' ; Sütun sayısını W'ye yaz.
MOVWF CHAR_SUTUN ; CHAR_SUTUN register'a gönder.
RETURN

COMMON2 MOVWF PCLATH ; Tabloya ulaşmak için üst bayt olarak yaz.
MOVF LINE,W ; Line'ı W'ye yaz.
CALL TABLE ; Çevrim tablosunu çağır.
CLRF PCLATH ; Üst bayt'ı sıfırla.
MOVWF SUTUN1 ; Tablo bilgisini SUTUN'a gönder.
CALL GOSTER ; Sütun bilgisini LED göstergeye aktar.
CALL SHIFT ; Sütunları 1 adım sola ötele.
DECF LINE,F ; LINE-1
RETURN

COMMON4 MOVWF LINE ; LINE register'a gönder.
MOVLW D'4' ; Sütun sayısını W'ye yaz.
MOVWF CHAR_SUTUN ; CHAR_SUTUN register'a gönder.
RETURN

;«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»;
TABLE ; Klavyeden basılan her tuş KLYOKU alt programında 8-bit'lik paralel KOD'a   ;
; dönüştürülür. Her karakterin sütun sayısı farklı olduğundan, karakterin    ;
; sütun özellikleri aşağıda yer alan TABLE adlı alt programa yerleştirildi.  ;
; Örneğin "I" karakterini oluşturmak için, 3 kez çevrim tablosundan okuma    ;
; yapılır. "W" ya da "M" karakterini oluşturmak için ise 7 kez.              ;
;«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»;

ADDWF PCL,F ; Program sayıcı+Tabloda ulaşılacak satır.

RETLW H'00' ; 0
_1 RETLW H'7F' ; 1
RETLW H'20' ; 2
RETLW H'10' ; 3

_2 RETLW H'31' ; 4
RETLW H'49' ; 5
RETLW H'49' ; 6
RETLW H'49' ; 7
RETLW H'27' ; 8

_3 RETLW H'36' ; 9
RETLW H'49' ; 10
RETLW H'49' ; 11
RETLW H'41' ; 12
RETLW H'22' ; 13

_4 RETLW H'04' ; 14
RETLW H'7F' ; 15
RETLW H'24' ; 16
RETLW H'14' ; 17
RETLW H'0C' ; 18

_5 RETLW H'46' ; 19
RETLW H'49' ; 20
RETLW H'49' ; 21
RETLW H'49' ; 22
RETLW H'7A' ; 23

_6 RETLW H'26' ; 24
RETLW H'49' ; 25
RETLW H'49' ; 26
RETLW H'49' ; 27
RETLW H'3E' ; 28

_7 RETLW H'60' ; 29
RETLW H'50' ; 30
RETLW H'48' ; 31
RETLW H'47' ; 32
RETLW H'40' ; 33

_8 RETLW H'36' ; 34
RETLW H'49' ; 35
RETLW H'49' ; 36
RETLW H'49' ; 37
RETLW H'36' ; 38

_9 RETLW H'3E' ; 39
RETLW H'49' ; 40
RETLW H'49' ; 41
RETLW H'49' ; 42
RETLW H'32' ; 43

_0 RETLW H'3E' ; 44
RETLW H'41' ; 45
RETLW H'41' ; 46
RETLW H'41' ; 47
RETLW H'3E' ; 48

_A RETLW H'3F' ; 49
RETLW H'48' ; 50
RETLW H'48' ; 51
RETLW H'48' ; 52
RETLW H'3F' ; 53

_B RETLW H'36' ; 54
RETLW H'49' ; 55
RETLW H'49' ; 56
RETLW H'49' ; 57
RETLW H'7F' ; 58

_C RETLW H'22' ; 59
RETLW H'41' ; 60
RETLW H'41' ; 61
RETLW H'41' ; 62
RETLW H'3E' ; 63

_D RETLW H'3E' ; 64
RETLW H'41' ; 65
RETLW H'41' ; 66
RETLW H'41' ; 67
RETLW H'7F' ; 68

_E RETLW H'41' ; 69
RETLW H'49' ; 70
RETLW H'49' ; 71
RETLW H'7F' ; 72

_F RETLW H'40' ; 73
RETLW H'48' ; 74
RETLW H'48' ; 75
RETLW H'7F' ; 76

_G RETLW H'2E' ; 77
RETLW H'49' ; 78
RETLW H'49' ; 79
RETLW H'41' ; 80
RETLW H'3E' ; 81

_H RETLW H'7F' ; 82
RETLW H'08' ; 83
RETLW H'08' ; 84
RETLW H'08' ; 85
RETLW H'7F' ; 86

_I RETLW H'7F' ; 87

_J RETLW H'7E' ; 88
RETLW H'01' ; 89
RETLW H'01' ; 90
RETLW H'02' ; 91

_K RETLW H'43' ; 92
RETLW H'24' ; 93
RETLW H'18' ; 94
RETLW H'08' ; 95
RETLW H'7F' ; 96

_L RETLW H'01' ; 97
RETLW H'01' ; 98
RETLW H'01' ; 99
RETLW H'7F' ; 100

_M RETLW H'3F' ; 101
RETLW H'40' ; 102
RETLW H'40' ; 103
RETLW H'3F' ; 104
RETLW H'40' ; 105
RETLW H'40' ; 106
RETLW H'3F' ; 107

_N RETLW H'7F' ; 108
RETLW H'02' ; 109
RETLW H'1C' ; 110
RETLW H'20' ; 111
RETLW H'7F' ; 112

_O RETLW H'3E' ; 113
RETLW H'41' ; 114
RETLW H'41' ; 115
RETLW H'41' ; 116
RETLW H'3E' ; 117

_P RETLW H'30' ; 118
RETLW H'48' ; 119
RETLW H'48' ; 120
RETLW H'48' ; 121
RETLW H'3F' ; 122

_Q RETLW H'3F' ; 123
RETLW H'43' ; 124
RETLW H'45' ; 125
RETLW H'41' ; 126
RETLW H'3E' ; 127

_R RETLW H'31' ; 128
RETLW H'4A' ; 129
RETLW H'4C' ; 130
RETLW H'48' ; 131
RETLW H'7F' ; 132

_S RETLW H'26' ; 133
RETLW H'49' ; 134
RETLW H'49' ; 135
RETLW H'49' ; 136
RETLW H'32' ; 137

_T RETLW H'40' ; 138
RETLW H'40' ; 139
RETLW H'7F' ; 140
RETLW H'40' ; 141
RETLW H'40' ; 142

_U RETLW H'7E' ; 143
RETLW H'01' ; 144
RETLW H'01' ; 145
RETLW H'01' ; 146
RETLW H'7E' ; 147

_V RETLW H'78' ; 148
RETLW H'06' ; 149
RETLW H'01' ; 150
RETLW H'06' ; 151
RETLW H'78' ; 152

_W RETLW H'7E' ; 153
RETLW H'01' ; 154
RETLW H'01' ; 155
RETLW H'7E' ; 156
RETLW H'01' ; 157
RETLW H'01' ; 158
RETLW H'7E' ; 159

_X RETLW H'41' ; 160
RETLW H'22' ; 161
RETLW H'1C' ; 162
RETLW H'22' ; 163
RETLW H'41' ; 164

_Y RETLW H'40' ; 165
RETLW H'20' ; 166
RETLW H'1F' ; 167
RETLW H'20' ; 168
RETLW H'40' ; 169

_Z RETLW H'61' ; 170
RETLW H'51' ; 171
RETLW H'49' ; 172
RETLW H'45' ; 173
RETLW H'43' ; 174

_NOKTA RETLW H'01' ; 175

_BOSLUK RETLW H'00' ; 176
RETLW H'00' ; 177
RETLW H'00' ; 178

;------------------------------------------------------------------------------------;
END
Başlık: arkadaşlar bu site cok güzel ve cok begendim
Gönderen: muratdur - 12 Aralık 2004, 18:14:06
arkadaşlar bir istede bir arkadaş verdi bu siteyi ve aşiri derece cok sevdim bende bir okulumuza bir kazan yazi devresi yapacagim az buyuk olacak eger yardimlarinizi bekerim yardim ci olursanız :) eger arkadaşimiz bir yardim eder telnet_exe@hotmal.com msn adresim ardimlariniz beklerim
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: gosub - 18 Aralık 2004, 15:59:13
Soruya cevap veren yokmu arkadaşlar 1 hafta oldu hiç kimse birşey yazmıyor NEDEN ?
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: gosub - 25 Aralık 2004, 14:57:54
:cry:  :cry:  :cry:  :roll:
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: tnr - 29 Aralık 2004, 14:38:23
Shift etiketli yerde sütun bilgileri 1 sütun kaydırılıyor. Ekranı ortalayacak kadar metni kaydır. (tabi bunu hesaplayan bir altprogram yazacaksın; Mesela senin devre 32 sütunluksa yazı da 10 sütun yer kaplıyorsa
32-10/2=11 kere kaydırma işlemi yaparsan yazı ortalanır.) Sonra programda kaydırma işlemini yapan altprogramı es geçersen yazı ekranda sabit kalır. Tabi bu işlemi o progama uydurmak gerekir.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: gosub - 01 Ocak 2005, 13:59:33
Öncelikle teşekkür ediyorum yazdıklarından dolayı ama bana daha açık anlatımda bulunursan çok memlun olurum !

Ben elektronik konusunda iyi olduğumu düşünüyorum ama programlama konusunda o kadar iyi değilim bana bir örnek ile yardımcı olabilirmisin mesela bu asm dosyası üzererinde bu sabitleme olayını gösterebilirmisin


SAYGILARIMLA
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: gosub - 08 Ocak 2005, 14:53:16
:roll:  :roll:  :roll:  :roll:

Bu çok zor bir olaymı yardım etmek yada benim sorduğum soru hakkında bilgisi olan birilerimi yok burada ?   :cry:  :cry:  :cry:  :cry:
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: infomaster - 15 Mart 2005, 11:21:03
Merhaba,

Şu ana kadar yayınlanan projelerin içinde en profesyonel olanı

http://sjeffroy.free.fr/Journal_Lumineux/journal_lumineux.html

adresindeki Fransızca olan. Hem yapısı hem de windows için programı oldukça profesyonel. Ama adam her nedense şemaları, PIC hexini ve windows programının source kodunu kaldırmış. Bu program ve şemalara sahip olan var mı?

Teşekkürler...
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: 122055221 - 16 Mart 2005, 02:12:13
Arkadaslar picbasic de isinize yarayabilecek bir kayan yazı programı yazdım. 2x16 LCD display kullandım.
Hepinize kolay gelsin.............


DEFINE LCD_DREG       PORTD
DEFINE  LCD_DBIT       4
DEFINE  LCD_RSREG      PORTE
DEFINE  LCD_RSBIT       0
DEFINE  LCD_EREG       PORTE
DEFINE  LCD_EBIT    1
DEFINE LCD_RWREG      PORTE
DEFINE LCD_RWBIT     2


ADCON1 = 7          ' PORTA VE PORTE DIJITAL

c var byte
d var byte
a var byte
dongu:
for a=0 to 65   'Karakter sayısına onaltı eklenecek (49+16)
pause 150       'Yazının kayma hızı
lcdout $fe,1
for c=0 to 49   'Kayacak yazının karakter sayısının bir eksiği (50-1)
lookup c, ["Ahmet UYSAL -Eminim isinize yarayacak bir program-"],d
lcdout $fe,143+c-a,d
next c
c=0
next a
a=0
goto dongu
end
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: gosub - 17 Mart 2005, 17:40:36
Alıntı yapılan: "infomaster"Merhaba,

Şu ana kadar yayınlanan projelerin içinde en profesyonel olanı

http://sjeffroy.free.fr/Journal_Lumineux/journal_lumineux.html

adresindeki Fransızca olan. Hem yapısı hem de windows için programı oldukça profesyonel. Ama adam her nedense şemaları, PIC hexini ve windows programının source kodunu kaldırmış. Bu program ve şemalara sahip olan var mı?

Teşekkürler...

Malesef kaldırmış bende çok araştırdım ama yok !

Ve şu benim soruma daha detaylı bir bilgi veren olmadı
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: murat_alb - 20 Mart 2005, 22:23:13
Selam arkadaslar. 10 karakterlik ve verisi bilgisayardan girilecek şekilde bir kayan yazı panasu yapmam gerekli. bunun için 5x7 dot matris siparişi verdim. Yapacağım bu uygulama okulda kalacağı için çok fazla masraf da etmek istemiyorum ondan dolayı konu hakkında bilgisi olan arkadaslardan yardım rica ediyorum.  Yapmayı düşündüğüm uygulamayı size anlatıyım tutarmı tutmaz mı yol gösterirmisiniz.

4515 veya 4514 16 bitlik 4 tane decoderi yoneten bir tane daha 4515/4514 decoderi olacak. bunlardan 4 tanesinin seçici ucları ortak ve bunları sıra ile aktif edecek olan 2 bitlik bilgi de yonetici olarak adlandırdığım diğer decoderdan gelecek. sütun tarama mantığına göre (4x16=64 bitlik decoderden gelen bit sayısı) her çevrimde decoder 0->64e dogru ilerleyecek ve her bir bit dot matrisin farklı katotlarına bağlı olduğundan 10 tane displayin 50 tane katod ucu taranacak. bu tarama esnasında örneğin 33üncü sütün taranırken 7 bitlik satır bilgisi de tüm displaylere verilecek. tabiki 33üncü taranırken sadece onun katodu aktif olduğu için o yanacak diğerleri ise hızlı çevrimden dolayı önceki parlaklığını koruyacak diye düşünüyorum. shift registerler kullanmam gerekse toplamda 50 tane shift register mı gerekir. bunun devresini cıkarmayı geçtim baskı devresini delmek bir ömre bedel nerdeyse. bu dediğim taktik işe yararmı veya sizin bildiğiniz uygun bir çözüm varmıdır. Herkese şimdiden cok tesekkürler. İyi çalışmalar...
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: infomaster - 21 Mart 2005, 19:44:42
Arkadaslar merhaba,

küçük boyutlu bir yürüyen yazı hazırlıyorum. Aşağıdaki resim buna ait ve sütun sürücülerinin bir parçasını gösteriyor.

(http://www.teknocold.com/cizim1.gif)

Sizden ricam bu devreyi çalıştırmak için gereken kodunu PICBASIC yazmak için yardım. Oldukça basit birşey ama kafa durdu işte.

Her defasında bir sütun sürülecek.

Not: http://sjeffroy.free.fr/Journal_Lumineux/journal_lumineux.html adresinde şemaları bulamıyorum demiştim. Sitenin sahibine bir mail yazdım. Yeni sitesinde olduğunu ama kodları ancak 1 yıl sonra vereceğini söyledi. (Sanırım biraz ticaret yapmak istiyor.) Neyse şemalar arkadaşların işine yarayabilir. Şemalar için adres http://www.afficheur.free.fr/download/journal876_pdf.zip
(http://www.afficheur.free.fr/pages/journal876/journal876.jpg)

Teşekkürler.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: infomaster - 30 Mart 2005, 23:54:56
Merhaba.

Üstteki mesajımı dikkate almayınız. Sorunu hallettim.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: Veli B. - 31 Mart 2005, 00:22:49
Nasıl?
Başlık: Klavye Kontrollü Kayan Yazı
Gönderen: bzirapli - 19 Nisan 2005, 11:15:44
Arkadaşlar Antrak gazetesinde yer alan klevye kontrollü kayan yazı devresini çalıştıran varmı? Ben çalıştıramıyorum. Programlamadamı hata yapıyorum. İlgilenen varsa cevap yazabilirmi?
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: bmutlu - 21 Nisan 2005, 12:15:46
Alıntı yapılan: "infomaster"Arkadaslar merhaba,

küçük boyutlu bir yürüyen yazı hazırlıyorum. Aşağıdaki resim buna ait ve sütun sürücülerinin bir parçasını gösteriyor.

devrende 164 kullanma 595 kullan karakter sayısını arttırdığın zaman yararını göreceksin.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: infomaster - 22 Nisan 2005, 18:21:00
@bmutlu

Teşekkür ederim. Bunu farkettim. Bundan sonra 74HC595 kullanacağım.

Yaptığın devrenin resmini koyduğunu söylemişsin ama göremedim. Kontrol edermisin?

İyi çalışmalar.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: bmutlu - 25 Nisan 2005, 11:41:03
@infomaster

Senin 6-7 mesaj yukardaki yazından alıntı yapmıştım alıntının bazı yerlerini sildiğim için yazı bana aitmiş gibi oldu .Aslında ben senin şeman üzerine bu yazıyı yazmıştım. Ledlerden tarama yoluyla fazla akım akıtacaksan 74hc595 port ucu yeteri kadar akım sağlayamaz ise 74hc595 in çıkışına ULN serisi entegre kullanabilirsin veya Tpic6b595 kullanabilirsin .
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: aster - 25 Nisan 2005, 12:10:08
Tpic6b595 ???  8O
bir ara bunu aramaktan gına gelmişti piyasada varmı ?
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: infomaster - 25 Nisan 2005, 18:15:23
@bmutlu

:lol:  :lol:  :lol:  O sözler bana yabancı gelmemişti zaten.


Shift register için UCN5833A, UCN5832A'yı inceliyorum şu sıralar. Allegro'nun sitesine bir bakın isterseniz. BiMOS II 32-BIT SERIAL-INPUT,
LATCHED DRIVERS olarak geçiyor.

İyi çalışmalar...
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: bmutlu - 27 Nisan 2005, 09:15:22
@aster

Deltaset elektronikten alabilirsin .
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: malitas - 18 Mayıs 2005, 01:12:43
7x24 DOT MATRIX

KAYAN YAZI

Bu proje Sevgili lay'

dan.

http://www.picproje.net/forum/viewtopic.php?t=2402&highlight=kayan+yaz%FD

Alıntı:

Birkaç aylık bir

çalışmayı forumdaki arkadaşların yararına sunuyorum.
Upload edilen adresten, matrix.zip adlı dosyayı indirebilirsiniz.

http://www.mcu.cz/atm/
Dosya: matrix.zip


Boyut: 1.01 MB
PASS: ta5ccf

İşlev:
Bir PC/AT klavyeden girilen metni, dot matrix display'de izleme, bilginin

EEPROM'a kaydedilmesi.
lay


Teşekkürler lay .

Arkadaşlar burada konu edilen matrix.zip isimli dosyaya ulaşamıyorum, lütfen yardımlarınızı bekliyorum..
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: XNHCX - 18 Mayıs 2005, 20:58:11
@ malitas,

Dostum bahsettiğin proje aşağıdaki linkte mevcut.Oradan indirebilirsiniz...

24 SÜTUN KAYAN YAZI PROJESİ
http://www.antrak.org.tr/gazete/122003/ali_yetis.htm
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: XNHCX - 06 Haziran 2005, 01:22:07
KAYAN YAZI-Bil. Programı
Projenin Sahibi: otm2002

Alıntı YapMerhaba
Aşağıdaki adrese yürüyen yazı kontrol yazılımlarını koydum

erişim için(kullanıcı adı: user)(password : picproje)

www.uniteknik.com/dosyalar/yy.zip

Bahsi geçen yer...
https://www.picproje.org/index.php/topic,4732
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: XNHCX - 06 Haziran 2005, 01:24:46
Journal Kayan Yazı Hexleri veya asmsi...
(https://www.picproje.org/index.php/topic,5716)
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: XNHCX - 06 Haziran 2005, 01:27:10
PROFESYONEL KAYAN (yürüyen) YAZI
(https://www.picproje.org/index.php/topic,5882)
Projenin Sahibi: otm2002
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: asahin11 - 16 Haziran 2005, 08:58:26
http://www.armory.com/~spcecdt/electronics/LED_matrix/
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: cozturk - 16 Haziran 2005, 14:23:01
Arkadaşlar, Malum antrakta 16f84lü bir devre var. fakat ROM az geldiği için fazla yazı yazamıyor. Nacizane ben de bunu 16f877ye uyarladım. sütun sayısı şimdilik 25 olmasına rağmen 100 gibi olabilir. seri porttan txt dosya yüklenecek. Daha başlangıç aşamasında. ve henüz denenmedi . Fakat azimli  arkadaşlar, bu antrak projesinden esinlenerek daha iyisini yapabilir. text dosyayı harici epromdan okuyan gibi..
Resim Burada (http://img85.echo.cx/img85/5564/cozturkmovingdemo4fm.gif)(sade resim)
Başlık: xx
Gönderen: lord - 16 Haziran 2005, 15:29:52
Cozturk verdiğin sitede nasil downlaod yapiliyor.. :)
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: cozturk - 17 Haziran 2005, 11:54:51
:oops: afedersiniz arkadaşlar. bu mesajı yazmasam daha iyi olurdu. dosya filan göndermedim çünkü.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: peko - 24 Haziran 2005, 19:23:48
ne zaman gönderecksin ?
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: gosub - 27 Haziran 2005, 15:18:37
Alıntı yapılan: "cozturk"Arkadaşlar, Malum antrakta 16f84lü bir devre var. fakat ROM az geldiği için fazla yazı yazamıyor. Nacizane ben de bunu 16f877ye uyarladım. sütun sayısı şimdilik 25 olmasına rağmen 100 gibi olabilir. seri porttan txt dosya yüklenecek. Daha başlangıç aşamasında. ve henüz denenmedi . Fakat azimli  arkadaşlar, bu antrak projesinden esinlenerek daha iyisini yapabilir. text dosyayı harici epromdan okuyan gibi..
Resim Burada(sade resim)

 :( 8O  8O  8O  :(
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: _PICMAN_ - 15 Eylül 2005, 23:01:42
PC KONTROLLÜ AKAN YAZI PROJESİ

Tıklayın (http://www11.brinkster.com/eloumut/~akan_yazi)
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: Veli B. - 15 Eylül 2005, 23:53:22
Böyle yazsaydın bence daha şık olurdu Umut.

Benim sitem ve forumum (http://umut_k.sitemynet.com/anasayfa/)
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: _PICMAN_ - 16 Eylül 2005, 00:20:00
Alıntı yapılan: "katana"Böyle yazsaydın bence daha şık olurdu Umut.

Benim sitem ve forumum

Sitemde bu devrenin linki yok...
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: forsa1975 - 16 Eylül 2005, 03:14:48
Kayan yazıların baş belası titreşim olayı sutun tarama hızının  dolayı oluşuyor. Burada sutun taraması yok. Dolayısı ile titreşimde yok. Bu çok ii.
Ben bir sutun taramalı devre yaptım. Fakat titreşim/parlaklık olayını bi türlü istediğim gibi yapamadım.

 Bu devrenin çalışma mantığını anlatırsan sevinirim. Aklımca bir mantık oluşturdum aslında. Fakat kafama takılan burada uçan-kaçan yazı efektlerini nasıl yapacağız ?

   Yani benim mantığıma göre bu devreye data clock verdikten sonra sağdan sola yada soldan sağa sutunlar bir ileri bir iler atlayarak gidecekler. Peki ben yazıyı ters yöne hareket ettirmek istersem ?

Bu gibi soruların bir cevabı varmı ?
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: mustafacan - 16 Eylül 2005, 05:58:16
Alıntı yapılan: "_PICMAN_"PC KONTROLLÜ AKAN YAZI PROJESİ


Proteus simulasyonuda benden olsun!
ayrıca klasörde diğer dökümanlarda var.
kayan or akan yazı
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: ramsess - 18 Ekim 2005, 23:03:30
tesekkürler beyler projem için müthiş bi kaynak
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: _PICMAN_ - 25 Ekim 2005, 00:43:34
Alıntı yapılan: "ramsess"tesekkürler beyler projem için müthiş bi kaynak

Bir şey değil.... ;)
Başlık: 24 sütün
Gönderen: teknikelektronikci - 25 Ekim 2005, 02:39:34
Sayın Arkadaşlar ve üstadlarr ben bu sene okulda proje olarak antrak taki 24 sütün kayan yazı devresini yapacam fakat baskı devre çıkarmakta zorlanıyorum eğer elinizde hazır baskı devresi (pcb) si var ise lütven bana cevap verin teşekürlerr (hazıra konmak istemem ama çok uğraştım bir türlü olmadı ) ;-)
Başlık: Scrolling 7 x 25 LED Dot Matrix Sign
Gönderen: XNHCX - 28 Ekim 2005, 21:54:58
Scrolling 7 x 25 LED Dot Matrix Sign
(http://www.technology.niagarac.on.ca/students/k/vkennedy/ledfnt.jpg)

http://www.technology.niagarac.on.ca/students/k/vkennedy/
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: kalman - 28 Ekim 2005, 23:37:59
@mustafacam

yolladığın kayan or  akan yazı dosyasında hata var
Dosyayı açtığımda hiç bir  şey gözükmüyor hata sence nerden kaynaklanabilir  

herkese başarılar
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: teknikelektronikci - 02 Kasım 2005, 20:46:45
Sayın kalman arkadaşım gözükmemesinin sebebi acaba proteus un versiyonu olabilirmi ben 6.7 de açtım başarılar
                                                                           teknikelektronikci
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 05 Ocak 2006, 15:41:47
arkadaşlar.
klavye kontrollü bir kayan yazı devresi yaptım. programı pic basic ile yazdım. devre çok güzel çalışıyor. ama karakterler kayarken (sağdan sola doğru) sanki bir sütun yanda da gölgesi kayıyor. yanan ledin sağındaki led sönük olarak yanıyor. bunu nasıl engelleyebilirim. matrixi 74ls164 ile sürdüm. acaba 74hc164 ile değiştirsem düzelir mi. veya nasıl bir çözüm olabilir. saygılar
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: mhk - 05 Ocak 2006, 20:02:21
Alıntı yapılan: "vatandas30"arkadaşlar.
klavye kontrollü bir kayan yazı devresi yaptım. programı pic basic ile yazdım. devre çok güzel çalışıyor. ama karakterler kayarken (sağdan sola doğru) sanki bir sütun yanda da gölgesi kayıyor. yanan ledin sağındaki led sönük olarak yanıyor. bunu nasıl engelleyebilirim. matrixi 74ls164 ile sürdüm. acaba 74hc164 ile değiştirsem düzelir mi. veya nasıl bir çözüm olabilir. saygılar

Muhtemelen 74164 clk pals sonunda ilgili satıra bilgi gönderiyorsundur ve bir clk pals sonunda bunu kesmiyorsundur. İşlem basamakları şeklinde yazacak olursam; 1-74164 clk palsi ver. 2- ilgili porttan satır bilgilerini ver 3- belli bir süre bekle. 4- Satır bilgilerini sil ( 0 yap söndür )  5. belli bir süre bekle 6-işlem 1 'e yeniden git... Burda kullanacağın belli bir süre bekle kısımlarını deneme yanılma ile bulabilrsin. Gözü rahatsız etmeyecek şekildeki titreşimleri ortadan kaldırmak ve bu oranda görüntü parlaklığı ile doğrudan ilişkilidir.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 05 Ocak 2006, 20:48:44
bilgi var porta.0   '74164 data giriş
clk var porta.1   '74164 clock giriş
sutun var portb

tarama:                      '16 sütunu göster
for ka=0 to 16
if ka=0 then sutun=sutun16
if ka=1 then sutun=sutun15
if ka=2 then sutun=sutun14
if ka=3 then sutun=sutun13
if ka=4 then sutun=sutun12
if ka=5 then sutun=sutun11
if ka=6 then sutun=sutun10
if ka=7 then sutun=sutun9
if ka=8 then sutun=sutun8
if ka=9 then sutun=sutun7
if ka=10 then sutun=sutun6
if ka=11 then sutun=sutun5
if ka=12 then sutun=sutun4
if ka=13 then sutun=sutun3
if ka=14 then sutun=sutun2
if ka=15 then sutun=sutun1
toggle clk
gosub bekle1
toggle clk
bilgi=0
next ka
bilgi=1
return


hocam tarama kısmı yukarıda. rica etsem dediklerini burada izah edebilir misin?
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: SpeedyX - 05 Ocak 2006, 21:22:36
Select Case diye birşey olması lazım, okadar çok if..then yerine onu kullanabilirsin daha güzel görünür.

SELECT CASE x
 CASE 1
   y = 10
 CASE 2, 3
   y = 20
 CASE IS > 5
   y = 100
 CASE ELSE
   y = 0
END SELECT
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 05 Ocak 2006, 21:30:23
haklısın. o şekilde yazmak aklıma gelmemişti.
mhk üstadın dediğini anladım fakat programa nasıl uyarlayacağımı tasarlayamadım.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: mhk - 05 Ocak 2006, 21:41:05

bilgi var porta.0   '74164 data giriş
clk var porta.1   '74164 clock giriş
sutun var portb



tarama:                      '16 sütunu göster

bilgi=1                         'Bilgiyi tarama için 74 ucuna girdik
clk=0:clk=1                  'clk ile ilerlettik
bilgi=0                         'her clk plaste bilgi bir kayacaktır.

for ka=0 to 16

if ka=0 then sutun=sutun16
if ka=1 then sutun=sutun15
if ka=2 then sutun=sutun14
if ka=3 then sutun=sutun13
if ka=4 then sutun=sutun12
if ka=5 then sutun=sutun11
if ka=6 then sutun=sutun10
if ka=7 then sutun=sutun9
if ka=8 then sutun=sutun8
if ka=9 then sutun=sutun7
if ka=10 then sutun=sutun6
if ka=11 then sutun=sutun5
if ka=12 then sutun=sutun4
if ka=13 then sutun=sutun3
if ka=14 then sutun=sutun2
if ka=15 then sutun=sutun1
gosub bekle1
sutun=0
gosub bekle2
clk=0:clk=1

next ka

return


Şeklinde olabilir. Denemediğim için yorum yapamam bekle1 ve bekle2 alt programlarındaki gecikmeleri deneyerek bulabilirsin. Gölge sorunu şu; port'a gösterilecek bilgiyi verdiğimizde görünür.( 74 bilgi girişinde sütun taramayı başlattığımızda) bu bilgiyi 0 yapmazsak, tarama 2.sütüna geçtiğinde bir önceki bilgi olduğundan yanacaktır. Bunun daha az parlak yanmasının ( Gölge gibi görünmesinin ) nedeni sütun taramasının hızlı değişmesi olacaktır.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 05 Ocak 2006, 21:44:12
hocam proteusta bir deneyeyim. gölgeyi göremem ama çalışıp çalışmadığına bakarım en azından. problem yoksa inşallah yarın devre üzerinde denerim.
ilgilendiğiniz için teşekkürler
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 05 Ocak 2006, 22:36:02
proteusta denedim olmadı fakat senin dediğini anladım.
örneğin birinci sütuna bilgiyi gönderiyoruz. ikinci sütuna geçmeden sütunu sıfırlıyoruz. sonra ikinci sütuna geçip 2. bilgiyi gönderiyoruz.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 05 Ocak 2006, 23:40:10
şu haliyle çalıştı.

tarama:                      '16 sütunu göster
clock=0
bilgi=1                                          
clock=1                
bilgi=0                        
 
for ka=0 to 16

if ka=0 then sutun=sutun16
if ka=1 then sutun=sutun15
if ka=2 then sutun=sutun14
if ka=3 then sutun=sutun13
if ka=4 then sutun=sutun12
if ka=5 then sutun=sutun11
if ka=6 then sutun=sutun10
if ka=7 then sutun=sutun9
if ka=8 then sutun=sutun8
if ka=9 then sutun=sutun7
if ka=10 then sutun=sutun6
if ka=11 then sutun=sutun5
if ka=12 then sutun=sutun4
if ka=13 then sutun=sutun3
if ka=14 then sutun=sutun2
if ka=15 then sutun=sutun1
gosub bekle1
sutun=%11111111
pauseus 50
clock=0:clock=1
next ka
return
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: Lütfi AYYILDIZ - 22 Ocak 2006, 04:07:07
Arkadaşlar proteus ta kayan yazının simülasyonunu çalıştıramıyorum. Simülasyon saati yavaş ilerliyor. acaba sorun bilgisayarımdamı. Bilgisayarım P4 1.8Ghz note book.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: zeren51 - 22 Ocak 2006, 11:37:42
evet arkadaşım bende calıştıramadım hata veriyor devreyi yeniden cizdim düzeldi...
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: Lütfi AYYILDIZ - 22 Ocak 2006, 16:36:19
benim devrede bir sorun yok satırlar çok yavaş taranıyor bunu görebiliyorum. Ayrıca alt köşedeki simülasyon saati çok yavaş ilerliyor 1 sn yi 5-6 sn de geçiyor.Devre çalışıyor bizzat denedim ama simülasyon çalışmıyor.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: e3 - 29 Ocak 2006, 00:55:52
Arkadaşlar valla Allah hepinizden razı olsun.İlaç gibi geldi bu konu valla..
Ödevim vardı ama yardım edenim yoktu. :lol: Şimdi yapcem artık.Yeni üye oldum ama çok memnun kaldım valla..Siz benim yüzümü güldürdünüz ya Allah'da sizin yüzünüzü güldürsün.Tekrar tekrar teşekkürler................ :arrow:  ;)  :idea:  :P  :)  :arrow:  ;)
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: zeren51 - 12 Şubat 2006, 02:02:54
arkadaşlar ben sheft register kaymalı kayan yazı yaptım ama istenmeyen led kırpmaları oluyor onu engelleyemedim 74HC164 kullandım ama ne denediysem olmadı mesela nokta gecerken üstündeki ledler göz kırpıyor ne yapabilirim acaba clock tan olabilirmi yardımcı olursanınz sevinirim şimdiden tekekkürler....
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: mhk - 12 Şubat 2006, 16:39:03
bunu her led üzerinde mi yapıyor? Yani tüm ledlerde. Eğer bazı ledlerde yapıyorsa , o ledlerin bağlı olduğu sütunlardaki ledleri değiştirmeyi dene. Bazı ledler yanık olabilip, üzerindeki sinyali diğer sütun yada satırlara taşıyabiliyor. Bunu denemende yarar var. Eğer tüm ledler üzerinde böyle bir durum varsa başka kısımlara bakman gerekir.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: zeren51 - 12 Şubat 2006, 17:00:24
bütün ledler üzerinde oluyor cözüm bulamadım...
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: mhk - 12 Şubat 2006, 18:37:21
Çalışan projeyi göremediğimiz için yorum yapmakta çok zor. Satırdan verdiğin sinyallere bir göz at. Nokta geçerken üzerindeki ledlerin kırpışması;
* Beslemeden
* Satır sinyallerinden
* 74164 entegresinden ( özellikle yüksek akımda kullanıyorsan )
* Yazılımda porta satır sinyali gönderirken 2 satıra birden sinyal gönderilmş olabilir ( şu şekilde ; 3 satır olduğunu varsayarsak ve portd ise bunlar;
portd.2=0:portd.1=0:portd.0=1
portd.2=0:portd.1=1:portd.0=0
portd.2=1:portd.1=0:portd.0=0
bu şekilde yazmak yerine;
portd=%00000001
portd=%00000010
portd=%00000100
şeklinde yazmak daha iyi olacaktır.

Bir çok neden olabilir aklıma gelenler bunlar iyi inceleme yap derim.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: zeren51 - 13 Şubat 2006, 15:08:01
aşyadaki resimde görüldügü gibi nokta kayıp gittikce o sütündaki ledler yanıp sönüyor resimde pek belli olmuyor...

(http://img375.imageshack.us/img375/443/adsz3jr.jpg)
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: mhk - 13 Şubat 2006, 15:19:49
Flaşsız karanlık ortamda resim çekmeyi dene, hatta basit kısa fotoğraf makinası ile video formatında hareketrli çekip gösterebilirsen daha mantıklı olur.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: zeren51 - 14 Şubat 2006, 16:42:23
Elimden geldigi kadar foto yakaladım umarım anlaşılır....


(http://img128.imageshack.us/img128/3548/adsz122sc.jpg)

(http://img454.imageshack.us/img454/9100/adsz5764552543pi.jpg)


(http://img454.imageshack.us/img454/4968/jktrdff6mw.jpg)


(http://img454.imageshack.us/img454/529/mugf61bx.jpg)
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: peko - 14 Şubat 2006, 17:22:16
biraz daha uzaktan çekseydin daha iyi olurdu gibime geliyor..
Bilmiyorum diğer arkadaşlarda benimle aynı düşüncedelermi..
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: zeren51 - 14 Şubat 2006, 17:27:19
eyer sorun anlaşıldıysa problem yok dedigim gibi her karekter cıkarken mutlaka istenmeyen led kıplamarı oluyor
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: mhk - 14 Şubat 2006, 21:32:40
Görüntüye göre cevap yaz dersen yazmak zor. Lakin ne şekilde bir tasarım yaptığını bilmiyorum. Satır yada sütun tarama mı? Eğer satır tarama yaptıysan ve bilgileri shift registerden geçirdikten sonra satır tarama sinyalini veriyorsan ve belli bir süre bekliyorsan ondan sonra shift registerleri resetleyip satır sinyalini 0 yaptıktan sonra diğer satırlara geçiyorsan problem olmamalı. Yazılım ve donanım hakkında biraz bilgiye ihtiyacımız var...
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: zeren51 - 15 Şubat 2006, 10:11:49
Pano sift register kaymalı 74hct164 kullandım ledler maximum parlaklıkta data kontrol devresinden data ve clk ucları geliyor 50 satır yani 50 tane 74hct164 var sorunu oldukca donanımda aradım ama bi sonuc bulamadım devre umut arkadaşımızın yaptıgı devre site aşagıda...

kayan yazı (http://www11.brinkster.com/eloumut/~akan_yazi)
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: mhk - 15 Şubat 2006, 19:07:58
Anladığım kadarıyla 2n3055 transistörü erken devreye sokuyorsun. Yazılımı bilmiyorum lakin, tüm bilgileri seri olarak 74164 lerden geçirdikten sonra 2n3055 transistörünü iletime geçirmen gerekir. Diğer bir husus bu tip bir tasarım biraz tuhaf, 50 adet 74164 ile satır yada sütun tarama mantığı ile 6-7 adet kullanman yeterli olurdu. Diğer bir husus 74164 üzerindeki bilgilerin bilgi güncellemeden önce resetlenmesi iyi olurdu.( Reset uçlarını kullanarak) 7404 entegresini hangi amaç için kullandığını da bir türlü anlamadım. Ledleri 74164 lerden hemen sonra dirençsiz sürmekte hata, bu entegrelerin dayanabilecekleri akım sınırlıdır zaten. İllede bununla uğraşacağım dersen , yazılımı iyi kontrol et. Gönderilecek tüm yazı bilgileri 74164'lere yerleştikten sonra 2n3055 'i iletime geçir. Yinede satır yada sütun taramayı tavsiye ederim. Buraya bir gözat;

http://picproje.com/index.php/topic,5371&start=15
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: arslan74 - 15 Şubat 2006, 21:36:20
Merhaba arkadaşlar,
Yeni başlayanlar için kolaylık olsun diye kendi cizdiğim ekran devresinin PCB'si yolluyorum. Her bir kart 5 adet 7x5 matix displayli. kac adet display isterseniz, o kadar kartı peş peşe bağlamanız yeterli. Displayler 74HC595 ile sürülmüştür.


(http://img110.imageshack.us/img110/1449/5limatrixekran4rv.th.jpg) (http://img110.imageshack.us/my.php?image=5limatrixekran4rv.jpg)


Bu plaketi yapmak isteyen arkadaşlara cizimide gönderiyorum.

http://www.hemenpaylas.com/download/201958/Kayan_yazi_ekran.cdr.html

Dosya Coreldraw formatındadır. Corelden direkt cıktı alacaksınız.

Selamlar,

Hasan ARSLAN
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: zeren51 - 16 Şubat 2006, 20:57:30
En sonunda bu devreden vazgececem bıktım artık sabır taşlarım eridi kırıp atacam plateti o naktaya geldi başka bir devre yapacam arslan74 hocamızın yaptıgı devre güzelmiş biraz daha devreye acıklama yazarsan vevinirim ....
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: arslan74 - 17 Şubat 2006, 01:16:56
(http://img140.imageshack.us/img140/621/kayanyazi9eq.th.jpg) (http://img140.imageshack.us/my.php?image=kayanyazi9eq.jpg)

Resimde basit bir örnek var. Bunula cok rahat ve sorunsuz çalışır. Resimde bir adet 16F877 kullanımıştır. Ama cok rahat 16F876 ilede çalışır.

Kendi yaptığım başka bir devre şeması.

(http://img118.imageshack.us/img118/5763/kontrol25yo.th.jpg) (http://img118.imageshack.us/my.php?image=kontrol25yo.jpg)

Ve devrenin PCB resmi tarih 09.03.2004.

(http://img131.imageshack.us/img131/382/kontrolpcb9md.th.jpg) (http://img131.imageshack.us/my.php?image=kontrolpcb9md.jpg)

Çalışmalarınızda başarılar,

Hasan ARSLAN
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: e3 - 18 Şubat 2006, 19:14:10
@arslan74

Sayın hocam çok teşekkür ederiz bize verdiğiniz devre şeması ve baskı devre için.Fakat devrenin kodlarını vermemişsiniz..Bu halde devreyi yapmak mümkün olmayacaktır....Bir de bir sorum olacak........
Bu matrislerin yerine 10 mmlik ledler kullansak devre şemasını nasıl değiştirmemiz gerekir??? Yani matris gibi ledlerle devreyi oluştururum ancak sürücü devresinin gücü buna yetmeyeceği için nasıl bir sürücü devresi yapmamı tavsiyr edersiniz....???????????????? Saygılarımla.Herkese iyi günler........
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: arslan74 - 18 Şubat 2006, 20:14:37
Alıntı YapBu matrislerin yerine 10 mmlik ledler kullansak devre şemasını nasıl değiştirmemiz gerekir??? Yani matris gibi ledlerle devreyi oluştururum ancak sürücü devresinin gücü buna yetmeyeceği için nasıl bir sürücü devresi yapmamı tavsiyr edersiniz....????????????????

74HC595 cıkşa uln2003 bağlarsın ve ledleri onunla sürersen sorun olmaz.
Örnek kod vermedim, cünkü ihtiyac duyacağınızı zannetmedim. Sizde devreyi önce yapıb bir çalıştırın, birkaç deneme yapın ve eğer o zaman ihiyac uyarsanız size örnek kod veririm.

Selamlar,

Hasan ARSLAN
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: e3 - 18 Şubat 2006, 22:07:26
@arslan74

Sayın hocam cevabınız için çok teşekkür ederim...Tabiki ULN 2003 aklıma geldi....Ancak ben transistör le ilgili bir uygulama düşünmüştüm...
Yorumlarınız ve devreleriniz için tekrar tekrar teşekkür ederim...Devre üzerinde çalışmaya başlayacağım..(Biraz acemilik var daha.. :lol: )
Eğer işin içinden çıkamazsam siz sevgili büyüklerimden yardım isterim.. ;)  Herkese iyi günler.....Saygılar.......  :lol:  :o  :)  :D  :P
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: sapkaliamca - 19 Şubat 2006, 13:29:32
Hasan hocam ellerine sağlık teşekkür ederiz uğraşlarını bizimle paylaştığın için biz acemiler için büyük fırsat verdiklerin teşekkürler.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: arslan74 - 19 Şubat 2006, 18:34:32
Yoğun istek üzerine Projenin kodlarını veriyorum. Kodlarda hiç bir sorun yok kesinlik çalışıyor. Çalıştıramayan arkadaşlarımızın proje üstünde biraz daha çalışmaları gerek.

http://www.hemenpaylas.com/download/222492/80_karakterlik_kayan_yazi_projesi__Ver2.1_.rar.html

Çalışmalarınızda başarılar,
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: e3 - 19 Şubat 2006, 20:19:48
@arslan74

Aslan hocam çok teşekkür ederim...Aslansınız valla.... :lol:  :lol: Kodlar için çok teşekkür ederim........Herkese iyi günler...Saygılarımla.... ;)  :lol:
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: bzirapli - 19 Şubat 2006, 20:26:57
arslan74 ve picman arkadaşlara sonsuz teşekkürler. Bu devreleri yapıp deneyeceğim. bu foruma uzun zamandır takip ediyorum ama böyle çalıştıkları söylenen kayan yazılar bunlar oldu. Bundan önce böyle devre linklerini ben görememiştim.
Başlık: teşekkkür
Gönderen: sapkaliamca - 20 Şubat 2006, 18:34:15
Aslan hocam kodlar için çok teşekkür ederiz. Allah yolunuzu açık etsin başarılar dilerim.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: bzirapli - 23 Şubat 2006, 17:28:01
_PICMAN_  Arkadaşımaıza PC KONTROLLÜ AKAN YAZI PROJESİ için  bir kaç sorum olacak;

1. Ledlerin bulunduğu devrede 74164'ün 13 nolu ayağında kondansatör semblolü var ama açık şemada bu yok. bu nedir.


2. "7414 Her 10 sıra için bir tane invert kullanacaksınız. " devrenizde bu kapılar paralel bağlanmış bu kapıların hepsini paralelmi bağlayacağız. yoksa her ontane için bir adet seri mi bağlanacak?

3. Baskılı devreyi gönderebilirmisiniz.
Başlık: yeni baslayanlara ilk yaptığım kayan yazı kodu +saat
Gönderen: gurhanmurat - 08 Mart 2006, 05:24:16
cpu:16f628
saat gösterme
umarım sizlere fikir verir.
'****************************************************************
'*  Name    : DAHİLİ KAYAN YAZI.BAS                                      *
'*  Author  : [select VIEW...EDITOR OPTIONS]                    *
'*  Notice  : Copyright (c) 2005 [select VIEW...EDITOR OPTIONS] *
'*          : All Rights Reserved                               *
'*  Date    : 17.04.2005                                        *
'*  Version : 1.0                                               *
'*  Notes   :74HC138 KULLANILDI                                                   *
'*          :                                                *
'****************************************************************
TrisA = %11111100
TrisB = 0
PortA = 0
PortB = 0
cmcon = 7
OPTION_REG = $55   
INTCON =$A0         

on interrupt goto kesme

buff       var byte[22]
ii         var byte
kk         var byte
aa          var byte
bb          var byte
cc          var byte
mm         var byte
oo          var byte
murat      var byte
ekran2     var byte
jj         var word

;;;;;; saat degiskenleri ;;;;;
ONE         var byte
TEN         var byte
HUND        var byte
saniye      var byte
dakika      var byte
dakika_1   var byte
saat      var byte
saat_1       var byte
dakika_h   var byte
dakika_l   var byte
saat_h      var byte
saat_l      var byte
ticks      var byte
hane      var byte
iki_nkt     var byte
mode      var bit
guncelle    var bit
;;;;;;;;;;; sabitler;;;;;;;;;;;;;;
T1CON.0=1


clear
guncelle = 1
mode = 1
gosub yukle

tekrar:
if PortA.3 = 0 then gosub art
if PortA.4 = 0 then gosub azal
if PortA.2=1 then
   for mm=0 to 11
       for kk=0 to 19
           for jj=0 to 75
               PortA.0 = 0
               For ii=0 to 15
                   portA.1=0
                   PortA.1=1
                   PortA.0=1
                   PortB = Buff[ii]
                   if PortA.2 = 0 then tekrar
                   pauseus 15
                   PortB = 0
               next    
           next
           gosub syf_blr      
       next
       cc=cc + 1
   next
   ekran2=ekran2 + 1
   if ekran2=2 then gosub saat_bas  ; if ekran2=2 OR ekran2=3 then gosub saat_bas
   if ekran2=2 then ekran2=0        ; kac ekran gosterirsen sifirla
cc=0
else
    gosub saat1
endif          
goto tekrar

saat1:
      for jj=0 to 150
          PortA.0 = 0
          For ii=0 to 15
              portA.1=0
              PortA.1=1
              PortA.0=1
              PortB = Buff[ii]
              pauseus 15
              PortB = 0
          next    
      next
   if guncelle = 1 then gosub saat_yaz
return

saat_bas:
   gosub saat_yaz
   for oo=0 to 150
      for jj=0 to 75
          PortA.0 = 0
          For ii=0 to 15
              portA.1=0
              PortA.1=1
              PortA.0=1
              PortB = Buff[ii]
              pauseus 15
              PortB = 0
          next    
      next
   if guncelle = 1 then gosub saat_yaz
   next
return
   
cevir:
asm
   CLRF   _TEN
   CLRF   _HUND      ; init registers

H1   
   MOVLW   0x64      ; 100
   SUBWF   _ONE,F      ; subtract 100 from number
   BTFSC   STATUS,C   ; negative result?
   GOTO   H2      ; no? goto H2
   GOTO   H3      ; yes? goto H3 (100's done)
H2   
   INCF   _HUND,F      ; increment HUND register
   GOTO   H1      ; & loop back for another test
H3   
   MOVLW   0x64      ; 100
   ADDWF   _ONE,F      ; add 100 back to number

TO1   
   MOVLW   0x0A      ; 10
   SUBWF   _ONE,F      ; subtract 10 from number
   BTFSC   STATUS,C   ; negative result?
   GOTO   TO2      ; no? goto T2
   GOTO   TO3      ; yes? goto T3 (10's done)
TO2   
   INCF   _TEN,F      ; increment TEN register
   GOTO   TO1      ; & loop back for another test
TO3   
   MOVLW   0x0A      ; 10
   ADDWF   _ONE,F      ; add 10 back to number
   MOVLW   0x00
endasm
return



syf_blr:
   select case ekran2
   case 0
      gosub yukle
   case 1
      gosub yukle_1
   ;case 2
;      gosub saat_bas   
   ;case 3
   ;   gosub yukle_3
;   case 4
   ;   gosub yukle_4
;   case 5
   ;   gosub yukle_5
   end SELECT
      
return

saat_yaz:
   ONE = saat
   gosub cevir
   saat_l = ONE
   saat_h = TEN
   
   ONE = dakika
   gosub cevir
   dakika_l = ONE
   dakika_h = TEN
   guncelle=0
   hane=0
   bb=saat_h * 6
   gosub saat_yukle
   hane=1
   bb=saat_l * 6
   gosub saat_yukle
   hane=2
   bb=dakika_h * 6
   gosub saat_yukle
   hane=3
   bb=dakika_l * 6
   gosub saat_yukle
return
saat_yukle:
   for aa=0 to 5
   lookup bb,[$3E,$51,$49,$45,$3E,$00,_    ;0
             $00,$01,$7F,$00,$00,$00,_   ;1
              $42,$61,$51,$49,$46,$00,_   ;2
             $22,$41,$49,$49,$36,$00,_   ;3
             $0F,$08,$08,$08,$7F,$00,_   ;4
             $67,$45,$45,$45,$7D,$00,_   ;5
             $3C,$4A,$49,$49,$38,$00,_   ;6
             $7E,$09,$09,$09,$7E,$00,_   ;7
             $36,$49,$49,$49,$36,$00,_   ;8
             $06,$49,$49,$29,$1E,$00],murat     ;9   
   if hane >=2 then
      if iki_nkt=0 then
      buff[aa+(hane*6)]=$00
      buff[aa+(hane*6)+1]=$14
      buff[aa+(hane*6)+2]=$00
      iki_nkt=1
   endif
      buff[aa+(hane*6)+3]=murat
   else                            
          buff[aa+(hane*6)]=murat                        
   endif
      bb=bb+1
     next
iki_nkt=0
return

art:
   dakika = dakika + 1
   if dakika >= 60 then
      dakika = 0
      saat = saat + 1
         if saat >= 24 then
            saat = 0
         endif
   endif
   guncelle = 1
return

azal:
   dakika=dakika-1
   if dakika >= 60 then
      dakika = 59
      saat=saat-1
         if saat >=24 then
            saat=23
         endif
   endif
   guncelle=1
return




yukle:

for aa=0 to 19
   bb=(aa+kk) + (cc * 20)
lookup bb,[$7F,$02,$0C,$02,$7F,$00,_
         $3F,$40,$40,$40,$3F,$00,_
         $7E,$09,$19,$29,$46,$00,_
         $7E,$09,$09,$09,$7E,$00,_
         $01,$01,$7F,$01,$01,$00,_
         $00,$00,$00,$00,$00,$00,_
         $7F,$08,$14,$22,$41,$00,_
         $3E,$41,$41,$41,$3E,$00,_
         $7F,$41,$41,$41,$63,$00,_
         $00,$00,$00,$00,$00,$00,_
         $42,$61,$51,$49,$46,$00,_
         $22,$41,$49,$49,$36,$00,_
          $00,$00,$03,$00,$00,$00,_
         $3E,$51,$49,$45,$3E,$00,_
         $0F,$08,$08,$08,$7F,$00,_
         $00,$00,$03,$00,$00,$00,_
         $42,$61,$51,$49,$46,$00,_
         $3E,$51,$49,$45,$3E,$00,_
         $3E,$51,$49,$45,$3E,$00,_
         $67,$45,$45,$45,$7D,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $7E,$09,$09,$09,$7E,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $7E,$09,$09,$09,$7E,$00,_
         $00,$00,$00,$00,$00,$00,_
         $7E,$09,$09,$09,$7E,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $7E,$09,$09,$09,$7E,$00,_
         $00,$00,$00,$00,$00,$00,_
         $7E,$09,$09,$09,$7E,$00,_
         $00,$00,$00,$00,$00,$00,_
          $00,$00,$00],murat   

          buff[aa]=murat                        
         next
return                          


yukle_1:

for aa=0 to 19
   bb=(aa+kk) + (cc * 20)
lookup bb,[$00,$00,$00,$00,$00,$00,_
         $00,$01,$7F,$00,$00,$00,_
         $00,$01,$7F,$00,$00,$00,_
         $01,$71,$09,$05,$03,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $7F,$49,$49,$49,$36,$00,_
         $00,$00,$00,$00,$00,$00,_
         $7F,$49,$49,$49,$36,$00,_
         $00,$00,$00,$00,$00,$00,_
         $7F,$49,$49,$49,$36,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $7F,$49,$49,$49,$36,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $7F,$49,$49,$49,$36,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $7F,$49,$49,$49,$36,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $7F,$49,$49,$49,$36,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $7F,$49,$49,$49,$36,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $00,$00,$00,$00,$00,$00,_
         $7F,$49,$49,$49,$36,$00,_
         $00,$00,$00,$00,$00,$00,_
          $00,$00,$00],murat   
          buff[aa]=murat                           
      next
return                          


;;;;;;;;;;;;;;;; KESME Programi ;;;;;;;;;;;;;;;;;;;;;;;;;
disable
kesme:
   ticks = ticks+1
   if ticks < 61 then cik
      ticks=0
      saniye = saniye+1
      if saniye >= 60 then
           saniye = 0
           dakika = dakika+1
           guncelle=1
           if dakika >= 60 then
              dakika=0
              saat=saat+1
                if saat >= 24 then
                  saat = 0
                endif
          endif
       endif
cik:
   INTCON.2 = 0
resume
ENABLE
end
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: microman - 20 Mart 2006, 17:09:51
Alıntı yapılan: "_PICMAN_"PC KONTROLLÜ AKAN YAZI PROJESİ

Tıklayın



bu şemada anlamadığım bir nokta var.

her bir sutün için bir tane 74hc164 shit register entegresi kullanılmış.
şimdi burada bütün 74hc164 entegrelerinin data ve clk pinleri bir biri ile bağlantılı peki nasıl oluyorda 1. sutüna farklı n. sutüna farklı bir data yazdırılabiliyor. yani data pininden seri olarak bir data gönderiliyor ve bütün 74hc164 entegreleri clock'lanıyor bu durumda bütün sutünlara aynı data yazılmış olmuyormu? acaba burada benim bilmediğim Qh ucunun farklı bir işlevimi var.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: zeren51 - 21 Mart 2006, 23:24:37
Sayın arkadaşım sen anlaşılan sift register mantıgını bilmiyorsun birbirine takip ederek gider yani bir tane data dirişi olur ve birde clk olur data ucundan seri olarak 74174 lere seri olarak gier 74164 ün qh yani enson led cıkışı birsonraki74164 ün data girişine baglanarak istedigin karar uzuata bilirsin normal olarak 50 satır yap devreyi dogru yap bi sorun cıkmaz
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 22 Mart 2006, 10:15:05
arkadaşlar. satır tarama işleminde satır bilgisi shift registerlere nasıl gönderiliyor. diyelim ki 40 sütunlu bir devrede bir satırda 40 hanelik bir bilgiyi göndermemiz gerekmez mi. öyleyse bunu nasıl yapacağız.
    sutün taramada parlaklık sorunu yaşadığım için satır tarama yapacağım. yardımlarınızı bekliyorum
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 23 Mart 2006, 12:36:39
yok mu buraya bakan.
arkadaşlar ben hazır devre ve program aramıyorum. kendim yapmak istiyorum.sütun tarama yöntemini çözdüm. hemde klavye kontrollü.satır tarama da yatay olarak shift registerlere karakterleri nasıl yükleyeceğiz .  üstelik registerler birbirine bağlı. bu kadar çok sütunlu bir bilgiyi yüklemeyi bilmiyorum. yoksa bir tanesine yükleyeceğiz de ondan sonra kendiliğinden kayacak mı.
her satırda yükleyeceğimiz bilgi değişiyor. yani her satır için bilgileri tekrar yüklemek gerekiyor. karakter tablosunu nasıl oluşturmam lazım ki her satır taramasında buradan sonuna eklensin.
yardımlarınızı bekliyorum.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: Lütfi AYYILDIZ - 27 Mart 2006, 20:03:25
Çok sütun yüklemene gerek yok zaten 74164 ler sen her karakter girdiğinde clk ile beraber bir önceki veriyi ötelemiş olacak.Aynı satır tarama prensibine göre verilerini gönderiyorsun, mantık aynı fakat satır tarama derdi yok.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 27 Mart 2006, 20:11:02
cevabınız için  teşekkür. mümkünse kısa bir örnek verebilir misiniz.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 28 Mart 2006, 12:11:23
satır tarama da 1. satırın 1. bitini shift registere yükledik ve satırı açtık. 2 satıra geçtiğimizde ve satır bilgisini yüklediğimizde az önce yüklemiş olduğumuz bilgi de ötelenmiş olarak 2 satıra yansımaz mı.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: Lütfi AYYILDIZ - 28 Mart 2006, 12:22:31
Zaten 1. bit bir sonraki satıra ötelenmiş olacak arkadan gelen ise baştan ötelenerek devam edecek yani gönderdiğin karakterler Q7 de son buluncaya kadar bir dizi halinde devam edecek. Örnek bir program olarak  elimde hali hazırda bir kod yok fakat ben tarama prensibine göre çalışan bir kayan yazı kullanıyorum bunu da 74164 ler ile yapıyorum baştan 1 gönderiyorum bu 1 satır ları baştan sona kadar tarıyor umarım yardımcı olabilmişimdir.

TARAMA:
PORTB=0  
HIGH PORTA.2
pulsout PORTA.3,1
PORTB=SUTUN5
PAUSE 1

PORTB=0
LOW PORTA.2
pulsout PORTA.3,1
PORTB=SUTUN4
PAUSE 1

PORTB=0
LOW PORTA.2  
pulsout PORTA.3,1
PORTB=SUTUN3
PAUSE 1

PORTB=0  
LOW PORTA.2
pulsout PORTA.3,1
PORTB=SUTUN2
PAUSE 1

PORTB=0  
LOW PORTA.2
pulsout PORTA.3,1
PORTB=SUTUN1
PAUSE 1
RETURN
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: SERRO EFE - 28 Mart 2006, 12:49:01
vatandas30  bende su an satır tarama üzerine çalışıyorum.Mantığı kendi anladığım kadarı ile paylaşayım.
ilk olarak karakter bilgisini tuttuğun ve gösterecegin degişkenleri hazırlıyorsun. karakter degişkeninin ilk bitini gösterecegin degişkene atıyorsun.shiftout komutu ile gönderiyorsun.7 satır için aynısını yaptıktan sonra gösterdigin değişkenlerin bitlerini 1bit kayma yönünde kaydırıyorsun . daha sonra karakter değişkeninin 2. bitini göstereceğin değişkenin ilk bitine atıyorsun.aynı işlemleri tekrarlıyorsun.  
NOT ; 164 lerde kalan bilgiyi reset hattını şaseye çekerek temize.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 28 Mart 2006, 13:23:21
cobra07
senin verdiğin sütun tarama değil mi. ben zaten onu yaptım. benim aradığım satır tarama. yinede verdiğin cevap için teşekkür.
serroefe
satır tarama da önce 1. satır , arkasından 2. satır........ taranmayacak mı.
şimdi 1. satırın en baştaki sütununun bitini gönderdik.ve satırı açtık.  buraya kadar tamam. hemen arkasından 2. satıra geçeceğiz. ikinci satırın bilgisini de gönderdik. 2. satırı açtığımızda 1. satırda yüklediğimiz bilgi otomatikmen bir kayacak. ve o da ikinci satırda gözükmez mi.
böyle olunca da yamuk yumuk birşey ortaya çıkmaz mı. yoksa 1. satırı açtıktan sonra resetleyip ondan sonra mı 2. satır bilgisini göndereceğiz.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: SERRO EFE - 28 Mart 2006, 13:28:13
Satırı  gösterdikten sonra   resetle diğer satıra o şekilde gec.Yada dataları göndemeden reset bilgisi gönder.(mantıklısı)
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 28 Mart 2006, 13:32:33
peki. zannedersem harflerin yazılış şekli de değişiyor. mesela A harfini sütun tarama için aşağıdaki şekilde kullanmıştım.
A:
sutun1=1
sutun2=238
sutun3=238
sutun4=238
sutun5=1
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: SERRO EFE - 28 Mart 2006, 13:51:39
karakter tablosunu değiştirmek gerekli ben:
aa:
SUTUN5=%01111100
SUTUN4=%00010010
SUTUN3=%00010001
SUTUN2=%00010010
SUTUN1=%01111100


aa:
satır1=%00100
satır2=%01010
satır3=%10001
satır4=%10001
satır5=%11111
satır6=%10001
satır7=%10001

şeklinde düzenleme yaptım
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 28 Mart 2006, 15:28:21
aşağıdaki şekilde A harfini yazdırdım. yalnız shifout komutuyla veriler byte olarak girildiğine göre bir sonraki adımda bir bit değilde bir byte kaymaz mı. veya buradan sonra bir bit kaydırmayı nasıl yapacağım.




@ DEVICE pic16F628, INTRC_OSC_NOCLKOUT, WDT_OFF  
cmcon=7


DATAPIN1 VAR PORTA.0
CLOCKPIN1 VAR PORTA.1
LATCH   VAR PORTA.2
TRISA=%000000
TRISB=%00000000
portb=%11111111
satir1 var byte
satir2 var byte
satir3 var byte
satir4 var byte
satir5 var byte
satir6 var byte
satir7 var byte
satir8 var byte


tarama:
gosub A
ShiftOut DATAPIN1,CLOCKPIN1,1,[satir1]
high latch
pauseus 10
low latch
PORTB=%01111111
PAUSE 1
PORTB=%11111111

ShiftOut DATAPIN1,CLOCKPIN1,1,[satir2]
high latch
pauseus 10
low latch
PORTB=%10111111
PAUSE 1
PORTB=%11111111

ShiftOut DATAPIN1,CLOCKPIN1,1,[satir3]
high latch
pauseus 10
low latch
PORTB=%11011111
PAUSE 1
PORTB=%11111111

ShiftOut DATAPIN1,CLOCKPIN1,1,[satir4]
high latch
pauseus 10
low latch
PORTB=%11101111
PAUSE 1
PORTB=%11111111

ShiftOut DATAPIN1,CLOCKPIN1,1,[satir5]
high latch
pauseus 10
low latch
PORTB=%11110111
PAUSE 1
PORTB=%11111111

ShiftOut DATAPIN1,CLOCKPIN1,1,[satir6]
high latch
pauseus 10
low latch
PORTB=%11111011
PAUSE 1
PORTB=%11111111

ShiftOut DATAPIN1,CLOCKPIN1,1,[satir7]
high latch
pauseus 10
low latch
PORTB=%11111101
PAUSE 1
PORTB=%11111111

ShiftOut DATAPIN1,CLOCKPIN1,1,[satir8]
high latch
pauseus 10
low latch
PORTB=%11101110
PAUSE 1
PORTB=%11111111

goto tarama

A:
satir1=%00100
satir2=%01010
satir3=%10001
satir4=%10001
satir5=%11111
satir6=%10001
satir7=%10001
satir8=%10001
return
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: Lütfi AYYILDIZ - 28 Mart 2006, 15:50:38
Pic ile74164 lerin bir bağlantısını göndersen belki daha iyi anlaşılır yapmak istediğin.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: SERRO EFE - 28 Mart 2006, 15:51:42
vatandas30 sen satır bilgilerini direk registerlere yüklemişsin. Benim anlatmak istedigim satır1 değişkeninin ilk bitini oluşturacağın farklı bir değişene atıyorsun .

"
satir1=%11001100
gsatir1=%00000000 = "gösterilecek satır"
                                                           
gsatır=gsatır>>1
gsatır.1  = satır1.1
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir1]
                                                               

NOT: 48 sütun olsa her satır için 48/8=6 değişken yapar toplamda
6*7=42 değişken ihtiyacın olur

yukarıdaki işlemleri tüm değişkenler için yapacaksın
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: Lütfi AYYILDIZ - 28 Mart 2006, 16:00:01
Sanırım bu site sana yardımcı olabilir.

www.antrak.org.tr/gazete/102002/metin.htm - 5k -
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 28 Mart 2006, 16:00:23
serroefe yardımların için teşekkür ederim. şimdi anladım sanırım. biraz geç oldu ama yaşlılık işte kusura bakma.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: SERRO EFE - 28 Mart 2006, 16:16:50
Estagfurullah yardımcı olabildiysem ne mutlu.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: bmutlu - 29 Mart 2006, 11:29:58
kayan yazı devrelerinde 74ls164 entegresi yerine 74hc595 ,74hc4094 veya bu tip çıkışı latch li entegreler kullanırsanız data gönderirken satırları karartmak zorunda kalmazsınız ledler daha parlak yakarsınız.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 29 Mart 2006, 12:14:19
satır tarama işini hallettim. eski pano devrem 74ls164 lü idi. değiştirmeme gerek kalmadı. parlaklıkda çok iyi.
yalnız tarama işinde bir problem var. yazı bir matrisden diğerine kayarken son sütunlar beraber yanıyor sonra düzeliyor. bu her matris geçişinde aynı. sanırım kaydırma kısmında bir hata yaptım.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 29 Mart 2006, 13:34:36
32 sütunlusunu çalıştırdım. ama programı 80 sütun için değiştirdiğimde derleme yaparken şöyle bir hata çıktı." [218] address limit of 7ffh exceeded"
kullanıdım pic 16f628. acaba picin hafızası mı yetmedi.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: SERRO EFE - 29 Mart 2006, 19:12:31
vatandas 30 628 in belleği dolu görünüyor. Bir de 877 ye göre derle.
ayrıca yazılımı verdiğim örneğe göre mi yaptın . hafta sonu bende bişeyler yazmaya başlamayı düşünüyorum.(satır tarama ile)
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 29 Mart 2006, 19:14:35
evet senin verdiğim ipucundan yola çıkarak yazdım.
şu an 877 ye uyarlamaya çalışıyorum ama program derlenirken hata veriyor.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 29 Mart 2006, 19:17:35
hata da şöyle yazıyor.
"code crosses boundary @800h"
programın tanımlama kısmında fazla bir değişiklik yapmadım. başa adcon1=7 ilave ettim o kadar.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: SERRO EFE - 29 Mart 2006, 19:17:39
picbasic ile mi yazıyorsun yoksa proton mu bende proton uzun kodlarda hata mesajı veriyorda.

edit:
başında error yazmıyorsa:

o mesaj bildiğim kadarı ile hata mesajı değil sadece picin hafızası banklardan oluştuğu için uyarı
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 29 Mart 2006, 19:18:07
pic basic ile yazıyorum
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: SERRO EFE - 29 Mart 2006, 19:25:21
başında error yazmıyorsa:

o mesaj bildiğim kadarı ile hata mesajı değil sadece picin hafızası banklardan oluştuğu için uyarı
Benim 50 sütunluk yazıda 877 için o mesajdan 3 adet aldım . pic e yüklediğimde hic problem çıkarmadan çalıştı.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 29 Mart 2006, 19:26:59
başında warning yazıyor. ama proteusta denediğimde çalışmıyor. 16f628 li olan çalıştı. gerçekte de çalıştı.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 29 Mart 2006, 19:31:05
pardon yanlış devreyi kullanmışım. pano devresi 74164 lü . ben 74hc595 li olanı kullanmışım.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: SERRO EFE - 29 Mart 2006, 19:40:17
çalıştımı +  karakterler karışıyor demişsin çözüme ulaştımı

efekt eklemeyi düşünüyormusun
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 29 Mart 2006, 19:43:07
evet çalıştı. yalnız bir sorun var. mesela A harfi en sağdaki matristen kaymaya başlıyor. bu matrisin son sütununa geldiğinden bir solundaki matrisin ilk sütunu da aktif oluyor. yani kaydırma işleminde bir hatam var.

efekt eklemeye gelince hele bir düzgün kaydırayım ondan sonra düşüneceğim. ben bunu klavye kontrollü yapıyorum. daha önce klavye kısmını hazırlamıştım.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: SERRO EFE - 29 Mart 2006, 20:02:37
son sütuna geldiginde data ve clk çıkışını 0 a çekip denesene
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 29 Mart 2006, 20:09:25
aynı sorun devam ediyor. sanırım burada bir hata var.

kaydir:
gsatir19=gsatir19<<1
gsatir18=gsatir18<<1
gsatir17=gsatir17<<1
gsatir16=gsatir16<<1
gsatir16=gsatir15<<1
gsatir14=gsatir14<<1
gsatir13=gsatir13<<1
gsatir12=gsatir12<<1
gsatir11=gsatir11<<1
gsatir10=gsatir10<<1

gsatir29=gsatir29<<1
gsatir28=gsatir28<<1
gsatir27=gsatir27<<1
gsatir26=gsatir26<<1
gsatir25=gsatir25<<1
gsatir24=gsatir24<<1
gsatir23=gsatir23<<1
gsatir22=gsatir22<<1
gsatir21=gsatir21<<1
gsatir20=gsatir20<<1

gsatir39=gsatir39<<1
gsatir38=gsatir38<<1
gsatir37=gsatir37<<1
gsatir36=gsatir36<<1
gsatir35=gsatir35<<1
gsatir34=gsatir34<<1
gsatir33=gsatir33<<1
gsatir32=gsatir32<<1
gsatir31=gsatir31<<1
gsatir30=gsatir30<<1

gsatir49=gsatir49<<1
gsatir48=gsatir48<<1
gsatir47=gsatir47<<1
gsatir46=gsatir46<<1
gsatir45=gsatir45<<1
gsatir44=gsatir44<<1
gsatir43=gsatir43<<1
gsatir42=gsatir42<<1
gsatir41=gsatir41<<1
gsatir40=gsatir40<<1

gsatir59=gsatir59<<1
gsatir58=gsatir58<<1
gsatir57=gsatir57<<1
gsatir56=gsatir56<<1
gsatir55=gsatir55<<1
gsatir54=gsatir54<<1
gsatir53=gsatir53<<1
gsatir52=gsatir52<<1
gsatir51=gsatir51<<1
gsatir50=gsatir50<<1

gsatir69=gsatir69<<1
gsatir68=gsatir68<<1
gsatir67=gsatir67<<1
gsatir66=gsatir66<<1
gsatir65=gsatir65<<1
gsatir64=gsatir64<<1
gsatir63=gsatir63<<1
gsatir62=gsatir62<<1
gsatir61=gsatir61<<1
gsatir60=gsatir60<<1

gsatir79=gsatir79<<1
gsatir78=gsatir78<<1
gsatir77=gsatir77<<1
gsatir76=gsatir76<<1
gsatir75=gsatir75<<1
gsatir74=gsatir74<<1
gsatir73=gsatir73<<1
gsatir72=gsatir72<<1
gsatir71=gsatir71<<1
gsatir70=gsatir70<<1

gsatir89=gsatir89<<1
gsatir88=gsatir88<<1
gsatir87=gsatir87<<1
gsatir86=gsatir86<<1
gsatir85=gsatir85<<1
gsatir84=gsatir84<<1
gsatir83=gsatir83<<1
gsatir82=gsatir82<<1
gsatir81=gsatir81<<1
gsatir80=gsatir80<<1

gsatir19.0=gsatir18.7
gsatir18.0=gsatir17.7
gsatir17.0=gsatir16.7
gsatir16.0=gsatir15.7
gsatir15.0=gsatir14.7
gsatir14.0=gsatir13.7
gsatir13.0=gsatir12.7
gsatir12.0=gsatir11.7
gsatir11.0=gsatir10.7

gsatir29.0=gsatir28.7
gsatir28.0=gsatir27.7
gsatir27.0=gsatir26.7
gsatir26.0=gsatir25.7
gsatir25.0=gsatir24.7
gsatir24.0=gsatir23.7
gsatir23.0=gsatir22.7
gsatir22.0=gsatir21.7
gsatir21.0=gsatir20.7

gsatir39.0=gsatir38.7
gsatir38.0=gsatir37.7
gsatir37.0=gsatir36.7
gsatir36.0=gsatir35.7
gsatir35.0=gsatir34.7
gsatir34.0=gsatir33.7
gsatir33.0=gsatir32.7
gsatir32.0=gsatir31.7
gsatir31.0=gsatir30.7

gsatir49.0=gsatir48.7
gsatir48.0=gsatir47.7
gsatir47.0=gsatir46.7
gsatir46.0=gsatir45.7
gsatir45.0=gsatir44.7
gsatir44.0=gsatir43.7
gsatir43.0=gsatir42.7
gsatir42.0=gsatir41.7
gsatir41.0=gsatir40.7

gsatir59.0=gsatir58.7
gsatir58.0=gsatir57.7
gsatir57.0=gsatir56.7
gsatir56.0=gsatir55.7
gsatir55.0=gsatir54.7
gsatir54.0=gsatir53.7
gsatir53.0=gsatir52.7
gsatir52.0=gsatir51.7
gsatir51.0=gsatir50.7

gsatir69.0=gsatir68.7
gsatir68.0=gsatir67.7
gsatir67.0=gsatir66.7
gsatir66.0=gsatir65.7
gsatir65.0=gsatir64.7
gsatir64.0=gsatir63.7
gsatir63.0=gsatir62.7
gsatir62.0=gsatir61.7
gsatir61.0=gsatir60.7

gsatir79.0=gsatir78.7
gsatir78.0=gsatir77.7
gsatir77.0=gsatir76.7
gsatir76.0=gsatir75.7
gsatir75.0=gsatir74.7
gsatir74.0=gsatir73.7
gsatir73.0=gsatir72.7
gsatir72.0=gsatir71.7
gsatir71.0=gsatir70.7

gsatir89.0=gsatir88.7
gsatir88.0=gsatir87.7
gsatir87.0=gsatir86.7
gsatir86.0=gsatir85.7
gsatir85.0=gsatir84.7
gsatir84.0=gsatir83.7
gsatir83.0=gsatir82.7
gsatir82.0=gsatir81.7
gsatir81.0=gsatir80.7

 

if kb=0 then
gsatir10.0 = satir1.7
gsatir20.0 = satir2.7
gsatir30.0 = satir3.7
gsatir40.0 = satir4.7
gsatir50.0 = satir5.7
gsatir60.0 = satir6.7
gsatir70.0 = satir7.7
gsatir80.0 = satir8.7
endif

if kb=1 then
gsatir10.0 = satir1.6
gsatir20.0 = satir2.6
gsatir30.0 = satir3.6
gsatir40.0 = satir4.6
gsatir50.0 = satir5.6
gsatir60.0 = satir6.6
gsatir70.0 = satir7.6
gsatir80.0 = satir8.6
endif

if kb=2 then
gsatir10.0 = satir1.5
gsatir20.0 = satir2.5
gsatir30.0 = satir3.5
gsatir40.0 = satir4.5
gsatir50.0 = satir5.5
gsatir60.0 = satir6.5
gsatir70.0 = satir7.5
gsatir80.0 = satir8.5
endif

if kb=3 then
gsatir10.0 = satir1.4
gsatir20.0 = satir2.4
gsatir30.0 = satir3.4
gsatir40.0 = satir4.4
gsatir50.0 = satir5.4
gsatir60.0 = satir6.4
gsatir70.0 = satir7.4
gsatir80.0 = satir8.4
endif

if kb=4 then
gsatir10.0 = satir1.3
gsatir20.0 = satir2.3
gsatir30.0 = satir3.3
gsatir40.0 = satir4.3
gsatir50.0 = satir5.3
gsatir60.0 = satir6.3
gsatir70.0 = satir7.3
gsatir80.0 = satir8.3
endif

if kb=5 then
gsatir10.0 = satir1.2
gsatir20.0 = satir2.2
gsatir30.0 = satir3.2
gsatir40.0 = satir4.2
gsatir50.0 = satir5.2
gsatir60.0 = satir6.2
gsatir70.0 = satir7.2
gsatir80.0 = satir8.2
endif

if kb=6 then
gsatir10.0 = satir1.1
gsatir20.0 = satir2.1
gsatir30.0 = satir3.1
gsatir40.0 = satir4.1
gsatir50.0 = satir5.1
gsatir60.0 = satir6.1
gsatir70.0 = satir7.1
gsatir80.0 = satir8.1
endif

if kb=7 then
gsatir10.0 = satir1.0
gsatir20.0 = satir2.0
gsatir30.0 = satir3.0
gsatir40.0 = satir4.0
gsatir50.0 = satir5.0
gsatir60.0 = satir6.0
gsatir70.0 = satir7.0
gsatir80.0 = satir8.0
endif
return
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: SERRO EFE - 29 Mart 2006, 20:31:30
benim kastım shiftout komutlarından sonra data ve clk uçlarını şaseye çekmen.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 29 Mart 2006, 20:57:31
onu yaptım zaten
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 29 Mart 2006, 21:58:18
sorunu çözdüm. ben kaydırmaları toptan yapmıştım.
gsatir14=gsatir14<<1
gsatir14.0=gsatir13.7
gsatir13=gsatir13<<1
gsatir13.0=gsatir12.7
gsatir12=gsatir12<<1
gsatir12.0=gsatir11.7
gsatir11=gsatir11<<1

bu şekilde yazdığım zaman düzeldi.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: SERRO EFE - 30 Mart 2006, 09:03:18
bende kodlardaki uzunluğu görünce dün gece daha kısa bi kaydırma yazmıştım.

      include "MODEDEFS.BAS"
      define osc 4
 trisa=%00000000    
      sayi VAR byte
      gsayi var byte
      bsay var byte
       say var byte
       bsay =%00000000
     '  goto kay
      ss:
      pause 500
     
  sayi=%10000011
    gsayi = 0
    say=0
   
kay:
   low portb.2
   high portb.2
   if say = 8 then  ss
  gsayi = gsayi << 1
   gsayi.0 = sayi.7
  sayi = sayi<<1
       
  say=say+1  
' goto kay  
basla:      
     
shiftout porta.0,porta.1,0,[gsayi]
pause 500
low portb.2
high portb.2
'shiftout porta.0,porta.1,0,[bsay]
goto kay


şeklinde belki işe yarar diye.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 30 Mart 2006, 13:27:28
serro efe
yazdığın bu kaydırma kısmını denedin mi. evet benim yazdığım bayağı uzun oldu kısaltamadım. ayrıca ekrana gönderme kısmını da kısaltamadım. böyle olunca da her komut işlenişinde ciddi bir gecikme oluyor. neyse ben 16f877 yi programlayıp devreyi çalıştırdım. parlaklık sütun taramayla kıyaslanamayacak kadar iyi. biraz daha artırmak için tarama sayısını düşürdüm.(20 ye) bu seferde gözle bariz bir şekilde anlaşılır titreme oldu ama parlaklık arttı tabii.
aynı zamanda tarama sayısını düşürünce yazının kayma hızı da artıyor doğal olarak. ama titreşim olmasın dersen tarama 30 un altına düşmemeli . bu kez de yazı çok yavaş kayıyor.
son olarak malzemeyi getirtip şunları deneyeceğim. 10 Mhz yerine 20Mhz kristal takacağım. bir de 74ls164 ler yerine 74hc164 takacağım. herhalde bunları yapınca hem parlaklık iyi olur , hem de yazı hızlı kayar.

saygılar
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: SERRO EFE - 30 Mart 2006, 13:49:48
bu kodları isite simule ettim sağlıklı çalıştı.istiyosan sen de dene . üstteki sayi degişkeni sıra ile kayıp geliyor.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 30 Mart 2006, 15:04:42
nasıl uyarlayacağımı bilemiyorum. burası bir satır için mi. bir de shiftout komutundan sonra neden pause 500 kullandın?. shitout komutu bitmeden zaten bir sonraki satıra geçmez ki.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: SERRO EFE - 30 Mart 2006, 15:46:34
o pause komutunu öylesine yazmıştım.
kaydırma ise karakterin tutulduğu degişkenden sıra ile gösterilecek değişkenin içersine almak için yani tek karakterin üst satırı gibi düşünebilirsin.
Başlık: 74164 İLE KAYAN YAZI
Gönderen: akkuzu1969 - 01 Nisan 2006, 21:31:45
Alıntı yapılan: "vatandas30"evet senin verdiğim ipucundan yola çıkarak yazdım.
şu an 877 ye uyarlamaya çalışıyorum ama program derlenirken hata veriyor.

Vatandaş.. merhaba.
74164 shıft register ve pic kontrollü basit bir kayan yazı devresi konusunda yardımcı olabilirmisin? nezamandır 7 satır 16 sütun 74164 entegreli devre üzerinde çalışıyorum.ama başarılı olamadım.bu konu hakkında bilg verirseniz çok memnun olacağım.şimdiden teşekkür ediyorum.
Başlık: Re: 7x5 Matrix TEXT Sayı Display HAKKINDA
Gönderen: baykalll - 01 Nisan 2006, 21:33:47
COK TESEKKURLER :lol:  :lol:  :lol:  :lol:
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 01 Nisan 2006, 22:25:31
akkuzu.
devresi hakkında mı yoksa programı hakkında mı . ne tür bir bilgi istiyorsun.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: SERRO EFE - 02 Nisan 2006, 17:58:21
vatandas 30 yaptığın klevye okuma uygulamasının mantığını biraz anlatabilirmisin.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 02 Nisan 2006, 18:15:17
ben bunu aşağıda linkini verdiğim mhk üstadın programından aldım. ve kendi programına uyguladım. ama önce klavyede kodlar nasıl üretiliyor bunu epey bir inceledim. osiloskopla falan baktım ve ürettiği kodları buldum. link şu:
https://www.picproje.org/index.php/topic,4607&start=0&postdays=0&postorder=asc&highlight=

klavyede bir tuşa basılınca clock sinyali ile senkronize olacak şekilde kodlar üretiliyor. bırakıldığında da hem bırakma kodu ve arkasından da genelde yine basma anındaki kod üretiliyor. yapacağınız programda karakterler çift olmaması için bırakılma anındaki kodları gözardı etmeniz gerekiyor. mhk üstat da bunu çok güzel yazmış. programı incelerseniz anlarsınız. klavyenin tuşlarına ait kodları da aşağıda veriyorum.
http://rapidshare.de/files/16255361/Klavye.pdf.html

türkçe karakterler tabloda yok. ama klavye resminin üzerinde var.
kolay gelsin.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: SERRO EFE - 02 Nisan 2006, 18:44:28
Verdiğin bilgiler için teşekkür ederim.
Kaydirma kısmındaki kodları kısalta bildinmi. Ben bu gün daha önce verdiğim kaydırma üzerine biraz çalıştım.

kay:
   low portb.2
   high portb.2
   if say = 8 then  ss
  satir1 = satir1 << 1
   satir1.0 = sayi.7
  sayi = sayi<<1
goto göster

(bir karakterin ilk satırı için.)
ben bu şekilde kaydırdım.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 02 Nisan 2006, 18:48:52
senin verdiğin kodlar anladığım kadarı ile bir değişken için. 80 sütunda 10 tane değişken var bir satırda.yani bu işlemi hemen hemen tüm değişkenler için yapmak gerekiyor. biraz kısalttım ama daha fazla kısaltamadım. ekrana gönderme kısmında da her satır için 9 kere shiftout komutunu kullanmam gerekiyor. bunu da array değişken kullanarak kısaltmaya çalıştım. (bit) ama bu seferde çok titreme oluyor.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: SERRO EFE - 02 Nisan 2006, 18:56:43
Bende 56 sütun için 7 adet shiftout kullanıyorum.Bu kodları tüm değişkenler için uygulamak gerekiyor.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 02 Nisan 2006, 18:59:11
senin ekran kısmı da böyle mi. herhalde burası kısalmıyor. çok uğraştım ama kısaltamadım.

tarama:
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir19]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir18]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir17]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir16]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir15]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir14]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir13]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir12]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir11]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir10]  
PORTC=%01111111
PAUSE 1
PORTC=%11111111


ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir29]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir28]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir27]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir26]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir25]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir24]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir23]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir22]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir21]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir20]
PORTC=%10111111
PAUSE 1
PORTC=%11111111

ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir39]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir38]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir37]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir36]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir35]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir34]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir33]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir32]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir31]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir30]
PORTC=%11011111
PAUSE 1
PORTC=%11111111

ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir49]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir48]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir47]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir46]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir45]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir44]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir43]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir42]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir41]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir40]
PORTC=%11101111
PAUSE 1
PORTC=%11111111

ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir59]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir58]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir57]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir56]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir55]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir54]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir53]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir52]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir51]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir50]
PORTC=%11110111
PAUSE 1
PORTC=%11111111

ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir69]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir68]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir67]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir66]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir65]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir64]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir63]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir62]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir61]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir60]
PORTC=%11111011
PAUSE 1
PORTC=%11111111

ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir79]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir78]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir77]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir76]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir75]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir74]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir73]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir72]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir71]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir70]
PORTC=%11111101
PAUSE 1
PORTC=%11111111

ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir89]  
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir88]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir87]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir86]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir85]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir84]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir83]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir82]
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir81]  
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir80]
PORTC=%11111110
PAUSE 1
PORTC=%11111111

return

(bu arada birşey soracağım. sen bu kodları buraya nasıl yapıştırıyorsun?)
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: SERRO EFE - 02 Nisan 2006, 19:05:27
Evet bende de aynı şekilde. ama kısaltmak istersen bir lookup tablosu oluşturup değişkenleri sıra ile alıp.tek shiftout ile kullanabilirsin.kodları ise üstte diyez
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 02 Nisan 2006, 20:14:23
lookup tablosu olmuyor. bildiğim kadarıyla bu tablonun kullanılabilmesi için bu değişkenlerin bir etiket altında olması lazım. yani;
lookup i, [etiket1, etiket2.......], j
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: SERRO EFE - 03 Nisan 2006, 17:42:58
Vatandas 30 senin etiket dediğin branch komutu ile kullanılıyor.
Benim ilk tasarladığım yazıda karakterlerin hepsini ayrı değişkenlere alarak lookup2 tablosundan seçip göstermiştim.Tabi karakter sayımda sınırlı kalmıştı.

Lookup2 komutunun değer yerlerine değişken alabiliyorsun

lookup2 x,[sayi1,sayi2,sayi3],z  
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: Veli B. - 03 Nisan 2006, 19:35:39
ShiftOut DATAPIN1,CLOCKPIN1,1,[gsatir89,gsatir88,gsatir87,gsatir86.....gsatırn]

Bir de böyle  deneyin.Daha lezzetli olur. ;)
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 03 Nisan 2006, 19:38:05
teşekkür ederim sayın katana.
böyle daha kısa oldu.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: Veli B. - 03 Nisan 2006, 19:40:27
max değişkeni ifade etmek içindi.Bu şekilde max kaç değişken basılabiliyordu tam emin değilim ama aklımda 255 diye kalmış.Help' e bakmak lazım. Şu an ona imkanım yok.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: SERRO EFE - 04 Nisan 2006, 10:59:56
Sayın Katana böylesi gerçekten daha lezzetliymiş.
Elinize sağlık :o
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: akkuzu1969 - 04 Nisan 2006, 12:01:59
Alıntı yapılan: "vatandas30"akkuzu.
devresi hakkında mı yoksa programı hakkında mı . ne tür bir bilgi istiyorsun.

*********************************************
Vatandaş; ilgilendiğin için teşekkürler.benim istediğim mesela " E " harfini
adım adım nasıl kaydıracağız.74164 ve tabiki pic kullanarak.asm programı
ile anlatabilirsen ben ve konu ile ilgilenen tüm meraklı arkadaşlar istifade
eder diye düşünüyorum.şimdiden teşekkür ediyor,başarılar diliyorum.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 04 Nisan 2006, 12:40:14
akkuzu
ben programlarımı pic basic ile yazıyorum. o yüzden asm ile nasıl yazılır birşey diyemiyeceğim. ama pic basic ile yazarım diyorsan benim önceki mesajlarıma bir bak. oradan anlaşılır.
Başlık: Tamamen açık kaynaklı kayan yazı projesi bilgisayar ve p
Gönderen: bellek - 06 Mayıs 2006, 17:46:01
(http://static.instructables.com/pub/86/4b7fe7/e333df64cbd7ccdf3ba4917c.thumb.jpg)

(http://static.instructables.com/pub/eb/fa46c8/18e6e17ffba6f26395ef16ef.thumb.jpg)

Led Scrolling Marque (http://www.instructables.com/ex/i/CDDBE0821A0010299AD7001143E7E506/)  adresinde PIC16f876 veya 877 kullanılarak hazırlanmış 512 Led lik bir kayan yazı projesi matriksler 8*8 olarak planlanmış ve toplam 8 matrix yanyana getirilerek uzun bir platform oluşturulmuştur.


Ayrıca kayan yazı rs232 kullanılarak bilgisayardan veya palm dan programlanabilmektedir. link de gerekli açıklamalar ingilizce olarak mevcuttur.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 09 Haziran 2006, 11:37:38
arkadaşlar
30cmx100cm kayan yazı yapacağım. panoyu ledlerle mi, yoksa hazır 10cm lik 5x7 dot matrislerle mi oluşturayım. siz hangisini tavsiye edersiniz. (iç ortamda kullanılacak). tavsiyeleriniz bekliyorum. saygılar
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: e3 - 09 Haziran 2006, 12:30:37
Hocam bence bu kadar büyük bir kayan yazı için o kadar ledle uğraşmanıza gerek yok.Direk dot matrix alıp kullanın.Hem daha az akım çektiklerini de unutmayalım.Ledler 20 mA gibi akımlar çekerken bazı matrixler 3-5 mA çekmektedir.Size fayda sağlayacağı kanısındayım.Zaten dış ortamda da değil iç mekanda kullanacakmışsınız.O zaman piyasayı biraz gezip parlaklığı sizi tatmin eden matrix alıverin.İyi günler.Saygılar. :)
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 09 Haziran 2006, 13:41:58
keşifin sitesinde fym-40571 matris var. (5x7)  bunları daha önce kullanan var mı? işimi görür mü? ayrıca bu matrisin bir dotunda iki led seri. 5 V la bunları direkt yakabilir miyiz? yoksa uln serisi bir entegre ile daha yüksek bir gerilimle mi sürmek gerekiyor. (çok soru sordum ama kusura bakmayın) saygılar
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: e3 - 09 Haziran 2006, 13:48:20
Hocam ben yaptığım eski devrelerimde tampon kapısı kullanırdım.Ancak daha sonra ULN'leri duyunca onlara geçtim.Nedeni? ULN open collector- entegre yanınca girişler ve çıkışlara birşey olmuyor.İkincisi transistörler gibi çok yer kaplamıyor.Üçüncüsü siz ne olur ne olmaz bir ULN kullanın.Sürücü entegrenizden direk çıkış vermeniz kötü sonuçlar meydana getirebilir.Dediğiniz displaylerden hiç kullanmadım.Onlar için birşey söyleyemeyeceğim.İnternette datasheet gibi birşeyleri yok mu?

Ayrıca şimdi aklıma geldi.Sürücü entegresi olarak TPIC serisi entegreler var.Baya kuvvetli entegreler.Onları da bir inceleminizi tavsiye ederim.Ben TPIC6B595 kullanmıştım bir devrem için.Hem sürücü hem de ULN'nin birleşimi gibi düşünebilirsiniz.Bir araştırın.İyi günler.Kolay gelsin. :)
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: apoyirmi - 06 Temmuz 2006, 17:45:47
Kardeşler arkadaşlar ve hocalarım benim elimde 21*120 led ile yapılmış bir pano var bu panoya bir devre tasarlamak istiyorum sizlerden yardım almak istiyorum....
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: bmutlu - 11 Temmuz 2006, 19:24:26
Alıntı yapılan: "apoyirmi"Kardeşler arkadaşlar ve hocalarım benim elimde 21*120 led ile yapılmış bir pano var bu panoya bir devre tasarlamak istiyorum sizlerden yardım almak istiyorum....


Devreyi biraz açarmısın donsnımı nasıl ? 21*120 nasıl baglı bieaz devrenden bahset devre ne olarak düşünülmüş ?
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 21 Temmuz 2006, 23:21:43
arkadaşlar
100 mm lik 5x7 dotmatrislerle 50 sütun kayan yazı yaptım. hyperterminal ile istediğim metni (txt) formatında gönderebiliyorum. ama normal bir kullanıcı açısından hyperterminal kullanmak zor olabilir. buna göre hazır paket programı nasıl yaparım. fikri olanlara şimdiden teşekkürler.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: XX_CİHAN_XX - 22 Temmuz 2006, 08:12:33
İstediğin program Visual basic ile çok zor olmasa gerek.Yada C++ builder tavsiye ederim.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: ise - 22 Temmuz 2006, 15:56:32
bilgisayar programlama dilinin hangisi olduğu farketmez resim ikon yazı felan kullanacaksan richedit - richview tavsiyem olur
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 22 Temmuz 2006, 18:56:37
programlama dillerinden anlamıyorum. bu işi basitçe yapabileceğim paket program vardır belki. ilginize teşekkür ederim.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: ise - 22 Temmuz 2006, 20:42:21
arayüzü hangi platforma yapmayı düşünüyorsun ? yada yazan arkadaşların programını çözme yoluna gitmen lazım  seriporttan bilgi takibi vs.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: vatandas30 - 22 Temmuz 2006, 21:03:52
başkasının yaptığı programı kullanmak istemiyorum. ayrıca efektler için kendi gönderdiğim kodlar var. onlarınkinde mutlaka farklıdır. bu yüzden hazır olanları çözmem çok zamanımı alır.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: ayvalikli - 30 Ağustos 2006, 11:07:54
arkadaşlar merhaba ben bu işte yeniyim konuyu baştan sona okudum ama pic programlaması falan bilmediğim için hiç bi şey anlamadım ben kendi işyerime reklam amaçlı ve hazır almayıp kendim yapmak istiyorum el işi ve özellikle insanın kendi el işi gibisi yoktur http://www11.brinkster.com/eloumut/~akan_yazi/?sayfa=9  bu sitede bi devre buldum ama yine bu konuda okudum maliyeti yüksekmiş bana daha hesaplı yapımı kolay bir devre sunabilecek arkadaş varmı beni sakın bedavacı olarak görmeyin inanın picle ilgili fazla bi şey bilmediğim için hazır istiyorum aslında bilsen zaten onuda kendim yapmak isterim
Başlık: hangi Uln ?
Gönderen: ndogru - 14 Eylül 2006, 18:53:43
Selam , forum https://www.picproje.org/index.php/topic,11708&highlight=kayan+yaz%FD
deki kayan yazı devresini yapmak istiyorum , bundan önce 8x16 ve 8x32 kayan yazılar yapmıştım hepsi de katodları 74hc154 ile sürüyor , son yapacağım devrede fazla sayıda matrix olduğundan aynı anda yanacak sutun sayısı fazla ve 74 hc 154 lerin çıkışlarını yükseltmek gerekecek , 8x16 devreyi tasarlayan Yavuz Erol bey , PNP transistörlerle bu işlemi yapabileceğimizi yazıyordu ancak yüzlerce transistör ve direnç bağlamak zor iş , bunu uln 2803 gibi bir transistör entegresiyle yapabilirmiyim ? Çıkışı yine lojik 0 olmalı , hangi uln yi tavsiye edersiniz , direnç bağlamak gerekir mi ? Teşekkür ederim selamlar ...
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: teknikelektronikci - 29 Eylül 2006, 16:07:52
ndogru bende 74154 kullanıyorum ve bnde uln serisi entegreyle yapacam ama sütünleri direk bağlıyacam pic çıkışına uln koyacam yani bir adet olacak kolay gelsin
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: teknikelektronikci - 29 Eylül 2006, 16:13:10
üstadlar arkadaşlar benim bir problemim var 74154 ile amatör 2*8*8 matrislerle kayan yazı panosu nu yaptım ve entegre kısmının baskı devresini yapacam fakat bu 74154 ü nasıl bağlıyacağımı düşünüyorum aşağıdaki resimle ifade etmeye çalıştım eğer fikirlerinizi bildiririseiz sevinirim en çok düşündüren taraf seçenek 2 de sabit bir görüntü oluştururken problem çıkmaz ama bir kayan yazı yaparsam ileride (daha yapmadım) problem oluşurmu çünkü sonuçta yazı sağ taraftan itibaren kayacak ve for next döngüsüyle yapacak olursam seçenek 1 mantıklıymış gibi gelior ama bu konuda daha yeni olduğum için sizin fikirlerinize ihtiacım var teşekürler saygılar

http://img165.imageshack.us/img165/2966/denezn4.jpg
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: Cetinal - 03 Kasım 2006, 18:58:40
dostlarım ben C book indirmiştim bu siteden

tam kayan yazının yapımını anlatan kısmı yok

eğer sizin elinizde varsa C veya ASM

yardımcı olunuz

thx
Başlık: cevap doğru olursa silmek mi gerek?
Gönderen: gurhanmurat - 28 Kasım 2006, 16:37:16
pic proje ye kendi linkimi koyup kayan yazı projemi diğer merak eden
yapabilmek için çaba harcayan insanlarla paylaşmak istemiştim fakat birileri mesajı havaya uçurmuş. galiba bu forumu hazırlayan arkadaşlardan birileri de kayan  yazı işleri ile uğraşıyor. herkesin eline
geçmesin mi istiyorlar? oysa ki ben de bu forumdan çok bilgi edinen bir kişiyim. herkese saygılar sevgiler.

http://www.inter-led.com/ornek-projeler.htm
Başlık: Re: cevap doğru olursa silmek mi gerek?
Gönderen: XX_CİHAN_XX - 28 Kasım 2006, 17:05:07
Alıntı yapılan: "gurhanmurat"pic proje ye kendi linkimi koyup kayan yazı projemi diğer merak eden
yapabilmek için çaba harcayan insanlarla paylaşmak istemiştim fakat birileri mesajı havaya uçurmuş. galiba bu forumu hazırlayan arkadaşlardan birileri de kayan  yazı işleri ile uğraşıyor. herkesin eline
geçmesin mi istiyorlar? oysa ki ben de bu forumdan çok bilgi edinen bir kişiyim. herkese saygılar sevgiler.

http://www.inter-led.com/ornek-projeler.htm
Böyle birşey olması mümkün değil.Forum kurallarına aykırı bir şekilde mesaj yazdıysan mesajın silinmiştir.Artniyet aramamak gerekir.
Saygılarımla.
Başlık: Re: cevap doğru olursa silmek mi gerek?
Gönderen: ground - 28 Kasım 2006, 18:06:18
Alıntı yapılan: "gurhanmurat"pic proje ye kendi linkimi koyup kayan yazı projemi diğer merak eden
yapabilmek için çaba harcayan insanlarla paylaşmak istemiştim fakat birileri mesajı havaya uçurmuş. galiba bu forumu hazırlayan arkadaşlardan birileri de kayan  yazı işleri ile uğraşıyor. herkesin eline
geçmesin mi istiyorlar? oysa ki ben de bu forumdan çok bilgi edinen bir kişiyim. herkese saygılar sevgiler.

http://www.inter-led.com/ornek-projeler.htm

Mesajlarınız her bölüme yazılmış.. Buna kısaca flood denir. Ve mesajlarınız reklam içerikli.

Art niyet diye birşey yoktur. Kurallar vardır.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: kafa1500 - 21 Aralık 2006, 22:04:09
selam arkadaşlar. elimde 16F84 le yapılöış 1 satır 4 karakter kayan yazı devresi var. 16F84'ün porta kısmı kullanılmış, portb boşta. acaba kodları değiştirerek port b'ye buton taksak, kayan metni değiştirmek için bilgisayara gerek kalmasa, bu yapılabilir mi? yada elinde böyle devre olan var mı?

devrenin dosya download linki;

http://www.transferbigfiles.com/Download.aspx?id=4413b0f1-6c85-4d80-b640-b61aef50710c
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: alabora - 30 Nisan 2007, 17:25:33
Yazdığım mesajı başka biyere yazdım ve bunun silmek istedim ama silemedim.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: XX_CİHAN_XX - 30 Nisan 2007, 20:49:04
mesajının içeriğini değiştirebilirsin(edit) ancak tümünü site yetkilileri (admin,mod) dışındakiler silemez.
Başlık: 18F452 ile 60 Sütun Kayan Yazı
Gönderen: esmerim33 - 04 Mayıs 2007, 22:38:49
Herkese merhabalar uzun süredir üzerinde çalıştığım kayan yazımı bitirmiş olarak karşınızdayım. Öncelikle devre 60 sutun olup 5x7 dotmarix kullanılarak yapılmıştır. Devrenin baskı devresi tamamiyle bana aittir. Program Kısmı ise herkesinde tanıdığı sayın Logan arkadaşımıza aittir.Devre tek yüzlü plakete yapılmış olup atlamalar bulunmaktadır. Ben dotmatrix ve sürücü kısmını ayrı plaketlere yaptım çok hoş oldu bu benim pic kontrolllü ilk kayan yazı devrem devamlı geliştirmeye çalışıyorum.Ekte bulunan similasyon dosyası ile proje faklıdır çünkü İsiste cd4514 ile uln2803 sürme hatası alıyoruz bunun yerine tamamiyle aynı mantık ile çalışan 74154 ile similasyon etmeye karar verdim bildiğiniz üzere 4514 entegresi 74154 entegresinin invert edilmiş halidir bizde bu sayede uln ile sürerek dotmatrixlerde daha çok parlaklık elde etmiş olduk

Malzemeler ;

18F452    1 adet
Cd4514   4 adet
Uln2803  8 adet
10k Direnç 1 adet
4 mhz kristal 1 adet
22pf mercimek kondanstör 2 adet
7805 1 adet
12 adet 5x7 dotmatrix
50x10 tek yüzlü plaket 2 adet

Ekte Pcb+bas+hex+dsn+resim+vidyo  bulunuyor

http://rapidshare.com/files/28572731/18F452.rar.html
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: kouakif2 - 15 Temmuz 2007, 12:33:06
Arkadaşlar

http://s11.yousendit.com/d.aspx?id=96CB7146E102FB6AC36916148214052C

linkini yenileyebilir miyiz??

Dosya indirilemiyor..
Sunucu bulunamıyor sayfası açılıyor..
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: kouakif2 - 15 Temmuz 2007, 14:37:20
Bu linkide yenileyebilirsek çok iyi olur..

http://rapidshare.com/files/28572731/18F452.rar.html
Başlık: f 84 ile 7x16 yardım
Gönderen: keepclear - 09 Mayıs 2008, 21:40:07
bu projeyi yaptım fakat yeni başlayan biri olduğum için hazır asm kolarında değişiklik yapıp başka bir karakter dizini oluşturdum herşey güzel akıyor fakat karakterler kayıp geçtikten sonra abuk subuk şeyler çıkıyor bunun nedeni nedir birde kayma hızı nereden ayarlanır(program aşşağıdadır bu orjinali karakterleri değiştirdiğimde başka değişmesi gereken yerler varmıdır)



; PIC0504.ASM
; PIC16C84 ILE YAPILAN 7*16=112 LED LI KAYAN YAZI DEVRESI
; 32 KARAKTER KULLANILABILIR
   LIST    P = 16C84,  F = INHX8M, n = 66
       PIC84   equ     H'03FF'
;==========================================================================
;
;       Register Definitions
;
;==========================================================================
W                            EQU     H'0000'
F                            EQU     H'0001'
;----- Register Files------------------------------------------------------
INDF                         EQU     H'0000'
TMR0                         EQU     H'0001'
PCL                          EQU     H'0002'
STATUS                       EQU     H'0003'
FSR                          EQU     H'0004'
PORTA                        EQU     H'0005'
PORTB                        EQU     H'0006'
EEDATA                       EQU     H'0008'
EEADR                        EQU     H'0009'
PCLATH                       EQU     H'000A'
INTCON                       EQU     H'000B'
OPTION_REG                   EQU     H'0081'
TRISA                        EQU     H'0085'
TRISB                        EQU     H'0086'
EECON1                       EQU     H'0088'
EECON2                       EQU     H'0089'
;----- STATUS Bits --------------------------------------------------------
IRP                          EQU     H'0007'
RP1                          EQU     H'0006'
RP0                          EQU     H'0005'
NOT_TO                       EQU     H'0004'
NOT_PD                       EQU     H'0003'
Z                            EQU     H'0002'
DC                           EQU     H'0001'
C                            EQU     H'0000'
;----- INTCON Bits --------------------------------------------------------
GIE                          EQU     H'0007'
EEIE                         EQU     H'0006'
T0IE                         EQU     H'0005'
INTE                         EQU     H'0004'
RBIE                         EQU     H'0003'
T0IF                         EQU     H'0002'
INTF                         EQU     H'0001'
RBIF                         EQU     H'0000'
;----- OPTION Bits --------------------------------------------------------
NOT_RBPU                     EQU     H'0007'
INTEDG                       EQU     H'0006'
T0CS                         EQU     H'0005'
T0SE                         EQU     H'0004'
PSA                          EQU     H'0003'
PS2                          EQU     H'0002'
PS1                          EQU     H'0001'
PS0                          EQU     H'0000'
;----- EECON1 Bits --------------------------------------------------------
EEIF                         EQU     H'0004'
WRERR                        EQU     H'0003'
WREN                         EQU     H'0002'
WR                           EQU     H'0001'
RD                           EQU     H'0000'
;==========================================================================
;
;       RAM Definition
;
;==========================================================================
       __MAXRAM H'AF'
       __BADRAM H'07', H'30'-H'7F', H'87'
;==========================================================================
;
;       Configuration Bits
;
;==========================================================================
_CP_ON                       EQU     H'3FEF'
_CP_OFF                      EQU     H'3FFF'
_PWRTE_ON                    EQU     H'3FFF'
_PWRTE_OFF                   EQU     H'3FF7'
_WDT_ON                      EQU     H'3FFF'
_WDT_OFF                     EQU     H'3FFB'
_LP_OSC                      EQU     H'3FFC'
_XT_OSC                      EQU     H'3FFD'
_HS_OSC                      EQU     H'3FFE'
_RC_OSC                      EQU     H'3FFF'


;----------- USER REGISTERS ----------------------------------------------
POINTER                      EQU     H'000C'
HCOUNT                       equ     H'000D'
LCOUNT              equ     H'000E'               
TEMP1                        EQU     H'002B'
TEMP2                        EQU     H'002C'
TEMP3                        EQU     H'002D'
ZAMAN                        equ     H'002E'
DISP                         EQU     H'002F'
msb             equ     0x29            ;general delay register
lsb             equ     0x2A            ;general delay register
FLCOUNT         equ     H'0027'         ;flas counter
WAITC           equ     H'0026'         ;wait and run
SPECIAL         equ     H'0025'          ;special function register
COUNT1          equ     H'0022'         ;system timer counter
COUNT2          equ     H'0021'         ;system flas timer counter
SYSFUNC         equ     H'0020'         ;system control register
LINE1           EQU     H'0010'
LINE2           EQU     H'0011'
LINE3           EQU     H'0012'
LINE4           EQU     H'0013'
LINE5           EQU     H'0014'
LINE6           EQU     H'0015'
LINE7           EQU     H'0016'
LINE8           EQU     H'0017'
LINE9           EQU     H'0018'
LINE10          EQU     H'0019'
LINE11          EQU     H'001A'
LINE12          EQU     H'001B'
LINE13          EQU     H'001C'
LINE14          EQU     H'001D'
LINE15          EQU     H'001E'
LINE16          EQU     H'001F'
SATIRLAR        EQU     H'0023'
;
;
;
START
       call    SETCPUPORTSTATUS
       call    STEP_CLEAR
KAYANYAZI_1
        MOVLW  H'0000'
        MOVWF  SATIRLAR
KAYANYAZI_2
       INCFSZ  SATIRLAR
       GOTO    KAYANYAZI_3
       GOTO    KAYANYAZI_4
KAYANYAZI_3
       goto    KAYANYAZI_5
KAYANYAZI_4
       goto    KAYANYAZI_1
KAYANYAZI_5
       MOVLW   H'00'
       ADDWF   SATIRLAR,0
       CALL    FINDSHOW
       movwf   LINE1
       MOVLW   H'01'
       ADDWF   SATIRLAR,0
       CALL    FINDSHOW
       movwf   LINE2
       MOVLW   H'02'
       ADDWF   SATIRLAR,0
       CALL    FINDSHOW
       movwf   LINE3
       MOVLW   H'03'
       ADDWF   SATIRLAR,0
       CALL    FINDSHOW
       movwf   LINE4
       MOVLW   H'04'
       ADDWF   SATIRLAR,0
       CALL    FINDSHOW
       movwf   LINE5
       MOVLW   H'05'
       ADDWF   SATIRLAR,0
       CALL    FINDSHOW
       movwf   LINE6
       MOVLW   H'06'
       ADDWF   SATIRLAR,0
       CALL    FINDSHOW
       movwf   LINE7
       MOVLW   H'07'
       ADDWF   SATIRLAR,0
       CALL    FINDSHOW
       movwf   LINE8
       MOVLW   H'08'
       ADDWF   SATIRLAR,0
       CALL    FINDSHOW
       movwf   LINE9
       MOVLW   H'09'
       ADDWF   SATIRLAR,0
       CALL    FINDSHOW
       movwf   LINE10
       MOVLW   H'0A'
       ADDWF   SATIRLAR,0
       CALL    FINDSHOW
       movwf   LINE11
       MOVLW   H'0B'
       ADDWF   SATIRLAR,0
       CALL    FINDSHOW
       movwf   LINE12
       MOVLW   H'0C'
       ADDWF   SATIRLAR,0
       CALL    FINDSHOW
       movwf   LINE13
       MOVLW   H'0D'
       ADDWF   SATIRLAR,0
       CALL    FINDSHOW
       movwf   LINE14
       MOVLW   H'0E'
       ADDWF   SATIRLAR,0
       CALL    FINDSHOW
       movwf   LINE15
       MOVLW   H'0F'
       ADDWF   SATIRLAR,0
       CALL    FINDSHOW
       movwf   LINE16
       MOVLW   D'15'
       MOVWF   ZAMAN
       CALL    STEP_DELAY
       goto    KAYANYAZI_2
;****************************************************************************
;YAZILARINIZI ASAGIDAKI KOD'DA DEGISIKLIK YAPARAK HAZIRLAYINIZ
;****************************************************************************
FINDSHOW:
showdata:
       addwf   PCL,1
       retlw   B'00011111'     ;
       retlw   B'00010101'     ;
       retlw   B'00010101'     ;
       retlw   B'00010001'     ;
       retlw   B'00000000'     ;       E

       retlw   B'00011111'     ;
       retlw   B'00000010'     ;
       retlw   B'00000100'     ;
       retlw   B'00011111'     ;
       retlw   B'00000000'     ;       N

       retlw   B'00011111'     ;
       retlw   B'00010001'     ;
       retlw   B'00010001'     ;
       retlw   B'00001110'     ;
       retlw   B'00000000'     ;       D

       retlw   B'00001101'     ;
       retlw   B'00010000'     ;
       retlw   B'00010000'     ;
       retlw   B'00001101'     ;
       retlw   B'00000000'     ;       ü

       retlw   B'00010010'     ;
       retlw   B'00010101'     ;
       retlw   B'00001001'     ;
       retlw   B'00000000'     ;       S

       retlw   B'00000001'     ;
       retlw   B'00000001'     ;
       retlw   B'00011111'     ;
       retlw   B'00000001'     ;
       retlw   B'00000001'     ;
       retlw   B'00000000'     ;       T

       retlw   B'00011111'     ;
       retlw   B'00000101'     ;
       retlw   B'00001101'     ;
       retlw   B'00010010'     ;
       retlw   B'00000000'     ;       R

       retlw   B'00011101'     ;
       retlw   B'00000000'     ;       i

       retlw   B'00000001'     ;
       retlw   B'00000010'     ;
       retlw   B'00011100'     ;
       retlw   B'00000010'     ;
       retlw   B'00000001'     ;
       retlw   B'00000000'     ;       Y

       retlw   B'00011111'     ;
       retlw   B'00010101'     ;
       retlw   B'00010101'     ;
       retlw   B'00010001'     ;
       retlw   B'00000000'     ;       E

       retlw   B'00011111'     ;
       retlw   B'00010000'     ;
       retlw   B'00010000'     ;
       retlw   B'00010000'     ;
       retlw   B'00000000'     ;       L

       retlw   B'00000000'     ;
       retlw   B'00000000'     ;
       retlw   B'00000000'     ;
       retlw   B'00000000'     ;
       retlw   B'00000000'     ;



       retlw   B'00011111'     ;
       retlw   B'00010101'     ;
       retlw   B'00010101'     ;
       retlw   B'00010001'     ;
       retlw   B'00000000'     ;       E

       retlw   B'00011111'     ;
       retlw   B'00010000'     ;
       retlw   B'00010000'     ;
       retlw   B'00010000'     ;
       retlw   B'00000000'     ;       L

       retlw   B'00011111'     ;
       retlw   B'00010101'     ;
       retlw   B'00010101'     ;
       retlw   B'00010001'     ;       E
       retlw   B'00000000'     ;

       retlw   B'00011111'     ;
       retlw   B'00000100'     ;
       retlw   B'00001010'     ;
       retlw   B'00010001'     ;
       retlw   B'00000000'     ;       K

       retlw   B'00000001'     ;
       retlw   B'00000001'     ;
       retlw   B'00011111'     ;
       retlw   B'00000001'     ;
       retlw   B'00000001'     ;
       retlw   B'00000000'     ;       T

       retlw   B'00011111'     ;
       retlw   B'00000101'     ;
       retlw   B'00001101'     ;
       retlw   B'00010010'     ;
       retlw   B'00000000'     ;       R

       retlw   B'00001110'     ;
       retlw   B'00010001'     ;
       retlw   B'00010001'     ;
       retlw   B'00001110'     ;
       retlw   B'00000000'     ;       O

       retlw   B'00011111'     ;
       retlw   B'00000010'     ;
       retlw   B'00000100'     ;
       retlw   B'00011111'     ;
       retlw   B'00000000'     ;       N

       retlw   B'00011101'     ;
       retlw   B'00000000'     ;       i

       retlw   B'00011111'     ;
       retlw   B'00000100'     ;
       retlw   B'00001010'     ;
       retlw   B'00010001'     ;
       retlw   B'00000000'     ;       K

       retlw   B'00000000'     ;
       retlw   B'00000000'     ;
       retlw   B'00000000'     ;
       retlw   B'00000000'     ;
       retlw   B'00000000'     ;



       retlw   B'00011111'     ;
       retlw   B'00010101'     ;
       retlw   B'00010101'     ;
       retlw   B'00001010'     ;       B
       retlw   B'00000000'     ;

       retlw   B'00001101'     ;
       retlw   B'00010010'     ;
       retlw   B'00010010'     ;
       retlw   B'00001101'     ;
       retlw   B'00000000'     ;       ö

       retlw   B'00011111'     ;
       retlw   B'00010000'     ;
       retlw   B'00010000'     ;
       retlw   B'00010000'     ;
       retlw   B'00000000'     ;       L

       retlw   B'00001101'     ;
       retlw   B'00010000'     ;
       retlw   B'00010000'     ;
       retlw   B'00001101'     ;
       retlw   B'00000000'     ;       ü


       retlw   B'00011111'     ;
       retlw   B'00000010'     ;
       retlw   B'00000100'     ;
       retlw   B'00000010'     ;
       retlw   B'00011111'     ;
       retlw   B'00000000'     ;       M

       retlw   B'00001101'     ;
       retlw   B'00010000'     ;
       retlw   B'00010000'     ;
       retlw   B'00001101'     ;
       retlw   B'00000000'     ;       ü
       retlw   B'00000000'     ;186
       retlw   B'00000000'     ;187
       retlw   B'00000000'     ;188
       retlw   B'00000000'     ;189
       retlw   B'00000000'     ;190
       retlw   B'00000000'     ;191
       retlw   B'00000000'     ;192
       retlw   B'00000000'     ;193
       retlw   B'00000000'     ;194
       retlw   B'00000000'     ;195
       retlw   B'00000000'     ;196
       retlw   B'00000000'     ;197
       retlw   B'00000000'     ;198
       retlw   B'00000000'     ;199
       retlw   B'00000000'     ;200
       retlw   B'00000000'     ;201
       retlw   B'00000000'     ;202
       retlw   B'00000000'     ;203
       retlw   B'00000000'     ;204
       retlw   B'00000000'     ;205
       retlw   B'00000000'     ;206
       retlw   B'00000000'     ;207
       retlw   B'00000000'     ;208
return
;****************************************************************************
STEP_CLEAR
       movlw   B'00000000'
       movwf   LINE1
       movwf   LINE2
       movwf   LINE3
       movwf   LINE4
       movwf   LINE5
       movwf   LINE6
       movwf   LINE7
       movwf   LINE8
       movwf   LINE9
       movwf   LINE10
       movwf   LINE11
       movwf   LINE12
       movwf   LINE13
       movwf   LINE14
       movwf   LINE15
       movwf   LINE16
       MOVLW   D'50'
       MOVWF   ZAMAN
       CALL    STEP_DELAY
RETURN
;****************************************************************************
STEP_DELAY
       clrwdt
      ; call    DELAYSYS                        ;20 msec delay
       CALL    RUNTIME
       decfsz  ZAMAN
       goto    STEP_DELAY
return
;****************************************************************************
RUNTIME
WRITEDISP
       ;test
       ;call    delay20
       ;test
       clrwdt
       movlw   D'0'
       movwf   PORTA
       movf    LINE1,0
       movwf   PORTB
       call    delay1
       clrwdt
       movlw   D'1'
       movwf   PORTA
       movf    LINE2,0
       movwf   PORTB
       call    delay1
       clrwdt
       movlw   D'2'
       movwf   PORTA
       movf    LINE3,0
       movwf   PORTB
       call    delay1
       clrwdt
       movlw   D'3'
       movwf   PORTA
       movf    LINE4,0
       movwf   PORTB
       call    delay1
       clrwdt
       movlw   D'4'
       movwf   PORTA
       movf    LINE5,0
       movwf   PORTB
       call    delay1
       clrwdt
       movlw   D'5'
       movwf   PORTA
       movf    LINE6,0
       movwf   PORTB
       call    delay1
       clrwdt
       movlw   D'6'
       movwf   PORTA
       movf    LINE7,0
       movwf   PORTB
       call    delay1
       clrwdt
       movlw   D'7'
       movwf   PORTA
       movf    LINE8,0
       movwf   PORTB
       call    delay1
       clrwdt
       movlw   D'8'
       movwf   PORTA
       movf    LINE9,0
       movwf   PORTB
       call    delay1
       clrwdt
       movlw   D'9'
       movwf   PORTA
       movf    LINE10,0
       movwf   PORTB
       call    delay1
       clrwdt
       movlw   D'10'
       movwf   PORTA
       movf    LINE11,0
       movwf   PORTB
       call    delay1
       clrwdt
       movlw   D'11'
       movwf   PORTA
       movf    LINE12,0
       movwf   PORTB
       call    delay1
       clrwdt
       movlw   D'12'
       movwf   PORTA
       movf    LINE13,0
       movwf   PORTB
       call    delay1
       clrwdt
       movlw   D'13'
       movwf   PORTA
       movf    LINE14,0
       movwf   PORTB
       call    delay1
       clrwdt
       movlw   D'14'
       movwf   PORTA
       movf    LINE15,0
       movwf   PORTB
       call    delay1
       clrwdt
       movlw   D'15'
       movwf   PORTA
       movf    LINE16,0
       movwf   PORTB
       call    delay1
       movlw   H'00'
       movwf   PORTB
       RETURN
;***************************************************************************
SETCPUPORTSTATUS
       bsf     STATUS,RP0
       movlw   H'00'
       movwf   TRISB           ;PORTB pins : O-O-O-O-O-O-O-O
       movlw   B'00000000'
       movwf   TRISA           ;PORTA pins : X-X-X-O-O-O-O-O
       bcf     STATUS,RP0
       movlw   H'00'  
       movwf   PORTA
       movwf   PORTB
RETURN
;****************************************************************************
;*-     Delay Routines                                                     -*
;****************************************************************************
vlong  
   movlw   0xff            ;200msec
       movwf   msb
       goto    d1
DELAYSYS                        ;20 msec delay
       movlw   .26
       movwf   msb
       CLRWDT
       CALL    RUNTIME
       goto    d1
delay20                         ;20 msec delay
       movlw   .26
       movwf   msb
       goto    d1
delay16                         ;16 msec delay
       movlw   .21
       movwf   msb
       goto    d1
delay1                          ;750nsec delay
       movlw   .1      
       movwf   msb
d1      movlw   0xff
       movwf   lsb
d2      decfsz  lsb,F
       goto    d2
       decfsz  msb,F
       goto    d1
       return
;****************************************************************************
;FINISH
       goto    START
end
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: ilker_32 - 27 Mayıs 2008, 20:35:07
Kodların üzerinde iyi bir temizlik yapman gerek. Baş kısımları incele.

Aşağıdaki bölümden yazı hızını ayarlayabilirsin. < işareti koyduğum yerleri bir dene. Ama ilk önce d1 movlw 0xff'i dene.

Yazdığın kelimeyi harf olarak uzat gereğince. Abuk subuk şeyler gelmeyecektir.

;****************************************************************************
;*- Delay Routines -*
;****************************************************************************
vlong
movlw 0xff ;200msec
movwf msb
goto d1
DELAYSYS ;20 msec delay
movlw .26  ;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
movwf msb
CLRWDT
CALL RUNTIME
goto d1
delay20 ;20 msec delay
movlw .26 ;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
movwf msb
goto d1
delay16 ;16 msec delay
movlw .21 ;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
movwf msb
goto d1
delay1 ;750nsec delay
movlw .1
movwf msb
d1 movlw 0xff ;<<<<<<<<<<<<<<<<<<<<<<<<<<
movwf lsb
d2 decfsz lsb,F
goto d2
decfsz msb,F
goto d1
return
Başlık: kyn yazı
Gönderen: gokhangokcen - 31 Mayıs 2008, 01:40:53
slm arkadaslar bende sitede yeni sayılırım bende kendi yaptigim kayan yaziyı sizlerle paylaşmak istedim  bu yazıya vb de bide  pc programı yazmak istiyorum azda osla vb bilgim var yardımlarızla başarıcagima inaniyorum


   http://rapidshare.com/files/118945085/kayan_yazi.rar.html
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: ground - 01 Haziran 2008, 18:04:54
Paylaşımlarımızı
http://picproje.4shared.com a yaparsanız çalışmaların  kaybolmaması herkeze ulaşması açısından daha iyi olur.
Başlık: Kayan Yazı ve Mesaj Projeleri
Gönderen: mech - 16 Haziran 2008, 19:03:26
ya sütun taraması kolay ama benim bu sefer satır taraması yapmam lazım. Bu nasıl yapılıyor, kafam karıştı.
Başlık: Ynt: Kayan Yazı ve Mesaj Projeleri
Gönderen: djomerrr - 18 Nisan 2010, 14:39:15
ya kerdeşim bu verdiğiniz sitelerin hepsi kırık link hiç biri işe yaramıyor lütfen çalışan ve aktif olan site adresleri ekleyelim tşk ederiz...
Başlık: Ynt: Kayan Yazı ve Mesaj Projeleri
Gönderen: OG - 18 Nisan 2010, 16:37:09
Verilen linklerin tarihine baktınmı?
Başlık: Ynt: Kayan Yazı ve Mesaj Projeleri
Gönderen: ibo1973 - 10 Mayıs 2010, 15:18:59
proje verenlere çok teşşekür ediyorum yanlız verenlerin çoğu hep hex dosyasını vermiş hiç bir anlam veremiyorum hex dosyası kimin ne işine yarar projeyi vermiş yada vermemiş ne fark edicek program dosyası hex hiç bir işe yaramaz burada amaç nedir diye kendime soruyorum buraya gelenler balıkmı istiyor ? balık avlamayımı öğrenmek istiyor ? ben kendi şahşıma balık avlamayı öğrenmek isitiyorum bugünlerde elimde pek işim yok biraz kayan yazı ile uğraşıyım dedim ama çoğu proje de hep balık verilmiş balık avlamayı anlatan projelerdede çoğu asm ler pic basic proda yapılmış kaynak kodu olan bir tane proje dosyası göremedim bu projeleri veren arkadaşlardan ricam kaynak kodunada mutlaka yanına koyması
Başlık: Ynt: Kayan Yazı ve Mesaj Projeleri
Gönderen: ahmet2004 - 10 Mayıs 2010, 15:57:32
ibo1973

Alıntı Yapbu projeleri veren arkadaşlardan ricam kaynak kodunada mutlaka yanına koyması

Projeleri ekleyenlerden istersen bence daha iyi olur direkt muhatap olmuş olursun.
Başlık: Ynt: Kayan Yazı ve Mesaj Projeleri
Gönderen: orhanc - 10 Mayıs 2010, 16:14:45
mikroC ile gelen basit bir kaydırma örneği. En azından mantığı anlaman için faydalı olur

char txt1[] = "mikroElektronika";   
char txt2[] = "LV18FJ";
char txt3[] = "Lcd4bit";
char txt4[] = "example";

char i;                              // Loop variable

void Move_Delay() {                  // Function used for text moving
  Delay_ms(500);                     // You can change the moving speed here
}

void main(){
  ADCON1 |= 0x0F;                    // Configure AN pins as digital
  CMCON  |= 7;                       // Disable comparators

  Lcd_Init();                        // Initialize LCD

  Lcd_Cmd(_LCD_CLEAR);               // Clear display
  Lcd_Cmd(_LCD_CURSOR_OFF);          // Cursor off
  Lcd_Out(1,6,txt3);                 // Write text in first row

  Lcd_Out(2,6,txt4);                 // Write text in second row
  Delay_ms(2000);
  Lcd_Cmd(_LCD_CLEAR);               // Clear display

  Lcd_Out(1,1,txt1);                 // Write text in first row
  Lcd_Out(2,6,txt2);                 // Write text in second row

  Delay_ms(2000);

  // Moving text
  for(i=0; i<5; i++) {               // Move text to the right 4 times
    Lcd_Cmd(_LCD_SHIFT_RIGHT);
    Move_Delay();
  }

  while(1) {                         // Endless loop
    for(i=0; i<10; i++) {            // Move text to the left 7 times
      Lcd_Cmd(_LCD_SHIFT_LEFT);
      Move_Delay();
    }

    for(i=0; i<10; i++) {            // Move text to the right 7 times
      Lcd_Cmd(_LCD_SHIFT_RIGHT);
      Move_Delay();
    }
  }
Başlık: Ynt: Kayan Yazı ve Mesaj Projeleri
Gönderen: mhtekinci - 29 Mayıs 2010, 17:46:55
kayan yazıda dotmatrix yerine led kullanınca yazılar geçmiyor? sebebi ne olabilir??
proteustata denediğimde olmuyor????
dotmatrix in çalışma akımları ledlere göre dahamı düşük?????
datasheetlere bakmaktan kafayı yiyecem.
Başlık: Ynt: Kayan Yazı ve Mesaj Projeleri
Gönderen: EMG81 - 27 Ekim 2010, 00:23:48
Arkadaşlar konuyla ilgili bir sorum olucak. Hepimiz kayan yazı yapıyoruz öyle değilmi ?peki kayan yazılarda shift register yerine PWM enteregreleri kullansak? böyle yazıya koyudan açığa doğru veya tam tersi animasyonlar yada güneş ışığına göre parlaklıklarını değiştirse ? Varmı böyle bir şeyle uğraşan ?