Haberler:

Forum kuralları güncellendi LÜTFEN  okuyunuz:  https://bit.ly/2IjR3ME

Ana Menü

Kayan Yazı - 256 Karakter

Başlatan Anakhin74, 15 Temmuz 2011, 22:26:03

SERRO EFE

çok oluyo forumdan biri paylaşmıştı indirmiştim bulabilirsem yükleyeyim biyerlere

t2

Bence de yapılır. Fakat lookup değil de ldata kullanılmalı. 500 karakter bile yapılır. sadece picin hafızasına bağlı

https://www.picproje.org/index.php/topic,16975.msg241403.html#msg241403

Gökhan BEKEN

Protonda 256 karakter yapmışsınız, ben ccs c ve 16f877 ile 32 karakteri geçemedim.
Eeprom kullanmam çözüm değil. Çünkü eepromdan alacağım bilgileri dizi değişkenlere kaydediyorum. Sorun zaten dizi değişkenlerin 32 den fazla değer alamaması.
Protonda dizi tanımlama sınırları nedir.

byte satir0[32]={};
byte satir1[32]={};
byte satir2[32]={};
byte satir3[32]={};
byte satir4[32]={};
byte satir5[32]={};
byte satir6[32]={};

7 adet 32 karakterlik dizi değişkenleri böyle tanımlıyorum. Sizde benimle aynı yöntemde mi yapıyorsunuz protonda?
Özel mesaj okumuyorum, lütfen göndermeyin.

t2

#18
Daha yapmadım ama bence yapılabilir
Bu sayfadaki yöntem  kullanılır. 
7 tane 32 bitlik tablon olsun diyelim index 1,

1. tablo 1. satırdan 32 bit oku
2. tablo 1. satırdan 32 bit oku
3. tablo 1. satırdan 32 bit oku
4. tablo 1. satırdan 32 bit oku
5. tablo 1. satırdan 32 bit oku
5. tablo 1. satırdan 32 bit oku
6 tablo 1. satırdan 32 bit oku
7. tablo1. satırdan 32 bit oku

index değiştikçe her defasında 7x32 bit okunmuş oluyor. bunun gibi çok sayıda tablo yaparsın. 
Dizi değişkeniyle işin yok zaten dizi yok. doğrudan hafızadan okuyorsun  dizi tanımlamakla uğraşırsan picin progrmaı şişer sınırlara takılırsın.

Displayde bir seferde görünecek yazı kaç bittir?  Kayan yazıyla uzun zamandır uğraşmadım. ama bu yöntemi keşfettikten sonra lazım olursa uğraşabilirim.

SERRO EFE

niye o şekilde yapıyosunuz ki ben epromdan okuduğum karakterin font bilgilerini alıyorum kaydırma işlemini yapıyorum işlem bittikten sonra yeni karakter okuyup aynı işlemleri tekrarlıyorum

drmp

eeproma sadece mesajınızı yazıp bütün efect ve deisplay bilgilerini program belleği içinde tanımlayabilirsiniz  aynı serro efenin dediği gibi

yamak

Şu an şirinevlerde oturuyorum tam metrobüsten indikten sonra köşede bi tane dönerci var onun kullandığı tabelaya hayran kaldım.Mükemmel animasyonlar var.Görsen direk lcd ekran falan zannedersin. Ben yazıların damlayarak indiği küçük basit bi kayan yazı yapmıştım breadboard üzerinde onda bile ne biçim algoritmalar düşündüm onda neler vardır Allah bilir.

Gökhan BEKEN

ilginiz için teşekkürler
eeproma 01 karakterlerin bilgilerini giriyorum yani a harfi için ledlerin yanan yerlerine 1 yanmayan yerlerine 0 giriyorum 1 harf için 5 bit gidiyor.
Sonra bunları okutup dizi değişkene aktarıp sürekli bu değişkenlerle çalışıyorum
Dediğiniz yöntem bu şekilde mi?
Özel mesaj okumuyorum, lütfen göndermeyin.

t2

bit ya da bayt ne istersen okursun. diziyle uğraşmadan topluca okursun. Bit olarak yazmak istersen  tabloları

%100011100100100110010011,%100011100100100110010011,%100011100100100110010011,

gibi doldurabilirsin. ister 32 bit ister 16 bit. ister bayt.

Gökhan BEKEN

#24
Hocam aşağıdaki bitler ile "GöKHAN" yazdırıyorum.

byte satir0[40]={0b01110010,0b10100011,0b00100010,0b01000100};
byte satir1[40]={0b10001000,0b00100101,0b00100101,0b01000100};
byte satir2[40]={0b10000011,0b10101001,0b00101000,0b11100100};
byte satir3[40]={0b10111100,0b01110001,0b11101111,0b11010100};
byte satir4[40]={0b10001100,0b01101001,0b00101000,0b11001100};
byte satir5[40]={0b10001100,0b01100101,0b00101000,0b11000100};
byte satir6[40]={0b01110011,0b10100011,0b00101000,0b11000100};


her bir satır 40 byte bilgi alabiliyor, 6 harfli "gökhan" yazısını 4 bitte hallettiğine göre 40 bit ile (40*6)/4=60 hesabına dayanarak tek seferde 60 adet harf kaydırabilirim. Şu an sadece 4 bitlik bir örneğimi yazdım.

panodaki görünümü şöyle oluyor(kırmızılar yanan ledleri temsil ediyor):

01110010,10100011,00100010,01000100
10001000,00100101,00100101,01000100
10000011,10101001,00101000,11100100
10111100,01110001,11101111,11010100
10001100,01101001,00101000,11001100
10001100,01100101,00101000,11000100
01110011,10100011,00101000,11000100

bunları eeproma kaydetmek için 7 satır kullanamayacağım için yanyana yazar sonra ayırırım o sorun değil. Okurken nasıl bir algoritma kullanmalıyım. Sürekli okuma yapsam yazıda titreme olur diye düşünüyorum çünkü eepromdan bilgi almak için mili saniye olarak biraz bekletir diye düşünüyorum. Siz sürekli mi okutma yapıyorsunuz?

Alıntı Yapdiziyle uğraşmadan topluca okursun
Ama asıl anlamadığım şey şu, eepromdan bütün değerleri dizi kullanmadan toplu olarak nasıl okutma yapıyorsunuz. Bir değişkenin alabileceği bit sayısı kaçtır ki? Bildiğim en fazla 32 bit değer alabiliyor.

Alıntı YapBit olarak yazmak istersen  tabloları
%100011100100100110010011,%100011100100100110010011,%100011100100100110010011,
gibi doldurabilirsin.
Hocam afedersiniz anlamadımda tablo derken ne kastettiniz anlayamadım.

Biraz uğraştırmış olacağım ama kusuruma bakmayınız, anlayışınıza sığınıyorum.
Özel mesaj okumuyorum, lütfen göndermeyin.

SERRO EFE

meftun siz font tablolarını eproma mı kaydetmeye çalışıyosunuz anlayamadım. font tablolarını mcu üzerinde tutarsanız eproma sadece kaydırmak yada göstermek istediğiniz metin bilgisini kaydedersiniz bu sayede epromdan her seferinde 1 byte data okursunuz hızınız artar sonra okuduğun karakter bilgisini mcu üzerindeki font tablosundan alıp igili kaydırma değişkenlerine yüklersin. t2 ninde dediği gibi ldata ile tablo işlemlerini yapabilirsin yada bütün font datalarını ayrı ayrı etiketle karakter olarak a aldığında şuraya git b aldığında şuraya git diyebilirsin ama çok uzun bi yöntem olur bu
a:
değişken1 = 0b00101010
değişken2 = 0b01101100
değişken3 = 0b10110110
b:
..
c:
..

t2

#26
Alıntı YapAma asıl anlamadığım şey şu, eepromdan bütün değerleri dizi kullanmadan toplu olarak nasıl okutma yapıyorsunuz. Bir değişkenin alabileceği bit sayısı kaçtır ki? Bildiğim en fazla 32 bit değer alabiliyor.

Alıntı
Bit olarak yazmak istersen  tabloları
%100011100100100110010011,%100011100100100110010011,%100011100100100110010011,
gibi doldurabilirsin.Hocam afedersiniz anlamadımda tablo derken ne kastettiniz anlayamadım.

Protondan bahsedecek olursak, değişken 32 bit fakat bundan 4 tane kullanırsan 128 bit yapar. 8 tane kullanırsan..
tablodan kastım bu başlıkta bahsedildi.
https://www.picproje.org/index.php/topic,16975.msg241403.html#msg241403

Okuma tamamlandıktan sonra kaydırma ve baytları ayırma işlemleri için ayrıca alt programlar olması gerektiği kesin.  harfler kaç tane diyelim 29  karakterden ibaret. kaydırılacak metni içeren tablo bu karakterleri ayrıca barındırmaz. sadece karakterin kodunu barındırır. mesela tabloda "qwerty"olarak yazılmıştır. bu sadece 6 bayt demektir.  256 karakter lazımsa tablonda sadece 256 bayt olur.


Kaydırma işine gelelim. Diyelim displaye 20 karakter sığıyor. 256 karakterlik metin kayacak.
Alt program tablonun başından itibaren okuyor 0 dan 19 a kadar  okudu bunlar 20 bayt. onu ekrana çizdi. sonra 1 den 20 ye kadar okudu, sonra 3 ten 21 e kadar okudu. her defasında 1 karakter kaymış olur. toplam yazı 256 bayt olmuş kime ne? Sadece sayılar değişiyor index değişiyor.

256 baytlık metni saklayan tabloda sadece bayt değişkenleri bulunur. 32 bitlik değişkene gerek yok.

Karakteri oluşturmak için hangi ledleri on off yapacağımız ise ayrı bir tablodadır. O tablodaki değişkenler de bayt olarak yorumlanır. Bu tabloyu işleyecek alt programa index ve karakter kodu girilince displayin istediğimiz noktasına istediğimiz karakteri yazıyor olsun. diyelim  index = 3  karakter= "A" ise   3 nolu konuma A harfi yazılır.  Tarama mantığını dikkate alarak her harf için 5 bayt yedecek gibi.

Burada önemli nokta tablodan okuyacağınız 20 baytı displaye nasıl çizeceğiniz. yok eğer display gerçekten 256 karakter alabilecek uzun bir displayse ozaman  titreme olabilir ince hesap gerekir. picin hızı artırılmalı.

SERRO EFE

serdararıkan projeyi logan hocam yapmış (eline sağlık güzelde yapmış)
linki..
https://www.picproje.org/index.php/topic,11772.0.html

serdararikan

Alıntı yapılan: SERRO EFE - 21 Temmuz 2011, 09:00:56
serdararıkan projeyi logan hocam yapmış (eline sağlık güzelde yapmış)
linki..
https://www.picproje.org/index.php/topic,11772.0.html

dosyalar rapid den silinmiş.elinde olan varsa tekrar yükleyebilirmi?