16F628 TMR1 sayıcısı hakkında yardım!!

nazmi74

Üye
Katılım
12 Ocak 2007
Mesajlar
111
Puanları
1
Yaş
40
Yaptığım programda 16F628'ün TMR1 sayıcısını kullanıyorum. Sayıcıyı harici sinyal ile saydırıyorum. Program içerisinde TMR1H veTMR1L içeriğini okuyarak içirisindeki sayıları okuyabiliyorum. Benim sorunum TMR1 16 bitlik bir sayıcı olmasına rağmen 16 bitlik okuma yapamıyorum. Yani iki adet 255 değilde 16 bitlik sayı okumak istiyorum. Bu işe yeni başladım. yardımlarınızı bekliyorum.
Saygılarımla
 
derleyicinin dilini yazmamışsınız TMR1=52000 derseniz olur pic basic veya C++ dilinde eğer asm ise onunda çareleri var
 
Sayın gunerdr ilginize teşekkür ederim.
Programı pic basic ile yazdım. Bir motorun devrini ölçmek istiyorum. Aşağıda yazdığım program ile yapabiliyorum. İSİS'te denedim. TMR1 16 bit 65535'e kadar sayabiliyor. hesap yaptırmadan bir saniye bekletip TMR1 içerisindeki sayıyı Lcd ekrana yazmasını istiyorum. Ölçmeyi düşündüğüm devir max. 10000 devir. Öğrenmek istediğim TMR1 sayıcını H ve L olarak değilde 16 bit olarak okumak mümkünmü?
BASLA
TMR1H=0
TMR1L=0
PAUSE 1000
S3=TMR1_BITS 16
S1=TMR1H
S2=TMR1L
SAYI=S2*60
LCDOUT $FE,$80,"S1=",DEC3 S1," S2=",DEC3 S2
LCDOUT $FE,$C0,"SAYI=",DEC5 SAYI
GOTO BASLA
END
 
S3=TMR1_BITS 16 satırı hatalı. Bu satır silinmesi gerekiyor.
 
8 bitlik 2 sayıdan 16 bitlik sayı yapmak için aşağıdaki gibi yazılabilir.
S1=TMR1H<<8
S2=TMR1L
S=S1+S2...
 
Sayın musallim,
yardımların için teşekkür ederim. programı denedim çalışıyor.
 

Forum istatistikleri

Konular
129,877
Mesajlar
930,967
Kullanıcılar
452,747
Son üye
azad911

Yeni konular

Geri
Üst