Merhaba
türkiye haritasın ait elimde devre var. bu tpicb595 ile yapılmış. ancak ben proteus similasyonuda denemek için 74hc 595 kullandım. basit bir yazılım yapmaya çalıştım. ledlerin tümü yanıyor. bir inceleyip bakabilirseniz hatam varsa kontrol edebilir misiniz. Mantığını öğrendikten sonra similasyon yapmaya başlayacağım.
(https://s4.postimg.cc/3yuwdfzdl/res.jpg) (https://postimg.cc/image/3yuwdfzdl/)
#include <18f452.h>
#fuses xt,nowdt,noprotect
# use delay(clock=4000000)
# define ds pin_c0 //595 in 14. nolu pini
# define st_cp pin_c1 //hafızadaki bilig çıkışa aktarılı. Ancak g= 0 olmalı.rck
# define sh_cp pin_c2 // seri indeki bili ff lere kataılır.srck
// bilgi=0x04 ==> 0000 0100
// maske=0x80 ==> 1000 0000
// maskenin 1 olan biti sağa kaydırılıp bilgi değişkeni ile AND işlemine tabi tutuluyor, böylece o bit 1 mi 0 mı anlaşılıyor.
unsigned int bilgi=4; // göndermek istediğimiz bilgi
unsigned int i; // döngü sayacı
unsigned int maske=0x80; // gönderilecek bilginin bitlerini öğrenmek için kullanılan maske bilgisi.
void main(){
while(true){
for (i=0;i<8;i++)
{
if(bilgi&maske) output_high(ds); //bilginin ilk biti 1 ise seri bilginin ilk biti olarak 1 ver.
else output_low(ds);
maske>>=1; //Maskeyi ikinci-üçüncü... bite ayarlamak için kaydır.
output_high(sh_cp); // shift register clock girişini ver.
delay_us(2);
output_low(sh_cp);
}
output_high(st_cp); //storage register clock girişini ver ve bilgiler portlarda görünsün.
delay_us(2);
output_low(st_cp);
maske=0x80; //maskeyi eski haline getir.
}}
74hc595 Normal çalışma modunda MR pini high olması gerek. Grounda bağlamışsın.
devreye ve koda cok bakmadim belki siz gerekli duzenlemeyi yapmissiniz dir yinede yazayim dedim
orjinal devre tpic595 ile yapilmis
ben 74hc595 ile yaptim yazmissiniz
fakat bildigim kadariyla tpic595 74hc595 in tersi calisir
tpic595 icin:
registira 255 yazarsaniz cikislari sifir olur
74hc595 icin:
regitira 255 yazarsaniz cikislari bir olur
Mr pinini 5 volta bağladım. 595 çıkışları aktif oldu. Bütün led lambalar yanıyor. Tam çalışmasını da bilmiyorum. Yanması gerekiyor mu?Ben animasyon şekilde çalıştırmak için uğraşıyorum.
(https://i.hizliresim.com/r2v4V1.jpg) (https://hizliresim.com/r2v4V1)
Basit bir animasyon yapacak şekilde bir program yazabilir misiniz?
@devre :
Mesajınızı "Türkçe Yazım Kuralları" na göre
yeniden düzenleyiniz...