Pic'te timer 1 kullanımı (16f877)

oguzmania

Üye
Katılım
21 Mar 2007
Mesajlar
2
Puanları
1
Yaş
39
Öncelikle selamlar bitirme projem için PIC'li bir devre yapıyorum.Temel düzeyde ASM bilgim vardı bunun yanında okuldan öğrendiğim C bilgimi de geliştirdim uzun bir aradan sonra bir kaç haftadır ciddi şekilde PIC'le çalışmaya başladım.Şu an yalnız ufak tefek programlar yazabiliyorum (Led yakma vb...)(CSS ile) projemin başlangıç aşaması olarak aşağıda anlatmaya çalıştığım projeyi yapmaya çalışıyorum.
Şu an programlamaya yeni başlamaya başlamış birisi olarak aşağıdaki yapmayı çalıştığım programı yazmam niçin nasıl algoritma izleyeceğim konusunda bana yardımcı olabilir misiniz? Elinizde varsa benzer örnekleri benimle paylaşabilir misiniz acaba?

Projeyi ana hatlarıyla anlatacak olursam;

16F877'in herhangi bir portunun 4 pin'ine 4 mikrofon bağlayacağım.Örnek verecek olursam;gönderdiğim ses sinyali 1.pin'e ulaştıktan 1.2 msn sonra 2. pine,2. pin'e ulaştıktan 1,4 msn sonra 3.pin'e 3.pin'den sonra 1,5msn sonra ise 4. pin'e ulaşacak.
Benim yapmak istediğim ise bu zamanları zamanlayıcının okuyup bir kenara kaydetmesi şunun gibi;
1. pin:X değeri
2. pin:X+1,2 msn
3. pin:X+2,6 msn
4. pin:X+4,1 msn

Ses 1. pine ulaşınca timer registeri başlayacak ve diğerlerinin değerlerini 1.pin'le arasındaki fark olarak hesaplayacak.Ve registerlere kaydedecek.(Yani X=0 kabul edilecek)

Yardımlarınız,görüş ve önerileriniz için şimdiden çok teşekkürler...(PIC C formatında örnekleriniz benim için daha faydalı olacaktır...)
 
Çok şey istediğinin farkındamısın...
 
Hala istiyormudur ?
 
sesin hangi yönden geleceğini algılayan robot yapıyorsun herhalde.

microfonları pice direk giremezsin malesef. öncelikle mikrofonları preamplifikatörlere bağlaman gerekli sonrada bunları dc ye çevirip digital portlara vermelisin.eğer analog portlara girip okuma yaparsan dediğin gibi 1.2 ms lik çevrme yapamazsın.

digitalere girersen gelen gecikmeleri okursun.

ama yinede çok şey istemişsin arkadaşların dediği gibi
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için onları kabul etmelisiniz. Daha fazla bilgi edin…