16f876 yerine...

Başlatan ankyra, 12 Nisan 2017, 23:46:43

ankyra

Selamlar;
Geçen yıl bir kayan yazı devresi tasarladım. Tecrübesizlik, ileri görüşsüzlük vb.. nedenlerle Pic16F876 kullandım. Ancak şimdi hafıza problemi yaşıyorum. Bir cümleden fazla yazı kaydıramıyorum. Donanımı değiştirmeden hafızası daha büyük ve isis simülasyonu yapabileceğim bir mikrodenetleyici arıyorum.

Microchipin sitesinden baktım biraz ama o kadar seçenek, özellik arasında kendimi kaybettim. Yine de bir işlemci seçtim (PIC16(L)F18857).  Ancak isiste işlemciyi bulamadığım için deneyemiyorum.

Tavsiyelerinize açığım.

bdrhn9

Merhaba, bir aralar 16f877a yerine 18f46k20 kullanmıştım. Port çıkışları hatırladığım kadarıyla birebir aynıydı. 16f876 14kbyte hafızaya sahip imiş, benim önerdiğim çip ise 64 kbyte hafızaya sahip. Ayriyeten 64 MHz (16 MIPS) gibi üstün bir hızda çalışıyor. Araştır bakalım, umarım işine yarar. Eğer bu da yetersiz olacaksa size önerim eeprom kullanmanızdır. Eklemek gerekirse CCS C kullanıyordum ve sadece çipi tanımlayan headeri değiştirmek ve frekans ayarı yapmak yeterli olmuştu.

mehmet

Tersten gidip, Isis 'te olan uygun mcu seçiniz...
Olan olmuştur,
olacak olan da olmuştur.
Olacak bir şey yoktur.
---------------------------------------------
http://www.mehmetbilgi.net.tr
https://creativecommons.org/licenses/by/4.0/deed.tr "CC BY"

tekosis

tabiki mcu değiştirmek en pratik alternatif. ama bunun yerine yazılım algoritmanızı değiştirmeyi deneseniz nasıl olur? Acaba farklı bir algoritma ile daha uzun cümleler yazdırmak mümkün olmaz mı? Bunu başarabilirseniz çok faydalı olacaktır.


her harfi 5x8 piksel kodlarsanız harf başına 5 bayt, 29 harf  ve rakamlar için toplamda 195 byte yeterli olacaktır. bu mcu için geriye 173 byte ram kalır. kaydırma algoritması için 150 byte ayırsanız(aralarında bir sütun boşluk bırakarak 25 harfin sığacağı bir ekran eder ) geriye 23 byte kalır. bununla bir dünya yazı yazarsınız.
İlim ilim bilmektir, ilim kendin bilmektir, sen kendin bilmezsin, bu nice okumaktır.

ankyra

#4
Alıntı yapılan: tekosis - 13 Nisan 2017, 01:28:41
tabiki mcu değiştirmek en pratik alternatif. ama bunun yerine yazılım algoritmanızı değiştirmeyi deneseniz nasıl olur? Acaba farklı bir algoritma ile daha uzun cümleler yazdırmak mümkün olmaz mı? Bunu başarabilirseniz çok faydalı olacaktır.


her harfi 5x8 piksel kodlarsanız harf başına 5 bayt, 29 harf  ve rakamlar için toplamda 195 byte yeterli olacaktır. bu mcu için geriye 173 byte ram kalır. kaydırma algoritması için 150 byte ayırsanız(aralarında bir sütun boşluk bırakarak 25 harfin sığacağı bir ekran eder ) geriye 23 byte kalır. bununla bir dünya yazı yazarsınız.


Programda büyük/küçük harf, rakamlar, özel karakterler,  tarih, saat, sıcaklık gösterme, menü organizasyonları vb. bölümler var. Bunların içinde kaydırma algoritmasının görece çok yer işgal etmediğini düşünüyorum. Elbette daha kısası olabilir ancak şu haliyle yaklaşık 90 karakterlik bir yazı kaydırabiliyorum. Aradığım çözümün algoritma olmadığı kanaatindeyim.


Kaydırma kısmının dosyalarını yükleyeyim, bakmak isteyen olursa.

https://yadi.sk/d/-PvtqMiU3Gv39j buraya yükledim. isis ssimülasyonu ve ccs c kodları mevcut. Uğraşan arkadaşlara kaynak olabilir.

Bu arada PIC18F26K22 işimi görecek gibi. Cevaplayan arkadaşlara teşekkür ediyorum.

Maxim

18F25K22 de yeterli olur.

yasin_arsln

Merhaba,

18F4620 'nin hafızası büyük 64K idi. Bunu deneyebilirsin.

tekosis

tabi bu kadar işlem olacaksa bu mcu ile kasmaya gerek yok. bende bir çok işimde 18f46k22 kullandım, güzel mcu.
İlim ilim bilmektir, ilim kendin bilmektir, sen kendin bilmezsin, bu nice okumaktır.

ankyra

PIC18F26K22 ile devre çalıştı. Sadece ds18b20 yi okumuyor. Ds1307 yi okuyor. Ne yapmalıyım önerisi olan var mı?