Merhaba arkadaşlar program konusuna pek hakim değilim ve kafamda bir senaryo oluşturamadım bu konuya hakim olan arkadaşlardan yardım rica ediyorum,
877a ile dışarıdan high low ve pals sayma işlemini yapabiliyorum benim istediğim tabi burda bu işlem olabilirmi onuda bilmiyorum, değişik frekansları tuşlar ile atama yaparak bu zamanlar içerisinde palsleri sayarak ekrana vermek bunu dışarıdan aşağıdaki şekilde yapabiliyorum,
BASLA:
LCDOUT $FE,$80:lcdout "High Time Low Time"
Pulsin PortC.1,1,HIGH1:LCDOUT $FE,$C0:lcdout "High Time: ",#HIGH1,"us"
Pulsin PortC.1,0,LOW1:LCDOUT $FE,$94:lcdout "Low Time: ",#LOW1,"us"
Count PortC.1,1000,PULSE1:lcdout $FE,$D4:LCDOUT "Pulse Sayisi:",#PULSE1
GOSUB BASLA
end
Fakat Bu işlemi mesela başla tuşuna basınca pic içinde devamlı sabit 200Hz kare dalga üretip ben dur tuşu na bastıgım anda kaç tane pals yakalamış isem onu ekrana vermek bu işlemi nasıl yapabilirim yardımlarınızı rica ediyorum.
Teşekkürler.
Araştırırken yanlış düşündüğümü fark ettim bu işlemi tmr1 ile saydırma işlemi yaparken tuşa bastığım anda ekranda kaç pals yakalamışım bu şekilde görebileceğimi düşünüyorum konuya hakim olanlardan yardımcı olacak yokmu acaba.?
Çokmu zor bir soru sormdum gene açaba yoksa kimse bilmiyormu? Göçük altında kalmışım gibi sanki:) sesimi duyan yokmu.
Zor birşey değil sorduğun ama saçma geldi bana,
kare dalgayı üreten pic ise zaten kaç pals ürettiğinide bilir,
basic kullanmadığım için program olarak yardımcı olamam ama algoritma olarak
birşeyler söyleyebilirim.
Öncelikle bunun için md. modüllerini nasıl kullanacağını belirlemelisin,
md. etliye sütlüye dokunmadan kare dalga üretmeliki bunu yine kendi sayabilsin,
pwm modülü ile kare dalga ürettirip,
butona basınca timer çalıştırırsın,
buton bırakılınca timer kaç saymış bakarsın,
(misal her milisaniyede 1 artan timer kurdun)
artık elinde misal 200 Hz i 100 milisaniye ürettim bilgisi var
bununla kaç pals ürettiğini hesaplayabilirsin
pals sayısı = frekans * süre
= 200 Hz * 0.1 saniye =20 pals
Bilgi için teşekkür ederim.
Kolaygelsin.