Codexed kardeş hani başta diyordun ya tam kapatmak istiyorum. şöyle yapsan nasıl olur.anahtarlı potansiyometreler var.bunların anahtar kısmını fanın besleme yoluna koy.tamamen kesme imkanın olur.radyo düğmesi gibi. kolaygelsin
Buyrun beyler madem iş büyüdü 3 kanal pwm fan controller
- Bağımsız 3 kanal PWM çıkış - Her kanal için %0 ~ %100 hız kontrolu - Hız ayarlarını hafızaya alma özelliği
picbasic dosyasi , programlamaya hazır hex , isis simulasyon dosyası ve açık şema.Baskı devre için vakit bulamadım ama ilerde onuda veririm.. Dosyalar linkte http://r a p i d s h a r e.de/files/36469464/fancontroller.rar.html
< Bu mesaj bu kişi tarafından değiştirildi OzanGazi -- 12 Ekim 2006; 18:05:31 >
Dört tane.Arttırma tekniğinide gösterirsen istediğimiz kadar fan ekleriz. Birde BAS dosyasını PIC Basic'te açıp tekrar compile dediğimde hata veriyor. BAS dosyası sanki tam değil gibi. Mahzuru yoksa BAS dosyasını tekrar verir misin ? Dvereyi denedin mi ?
Çok Teşekkürler. PIC konusunda biraz bilgim var ama ileri derecede değil.
Yolladığın dosyada basic isimli klasörün içinde cont1.bas adlı dosyayı MicroCode Studio Plus'ta açıyorum. Programda çıkan kodlar bunlar.Sadece aşağıdakiler çıkıyor başka birşey yok.
device 16f628a declare xtal 4
dim fan1 as byte dim fan2 as byte dim fan3 as byte dim fan4 as byte
if fan4<255 and fan4up=0 then inc fan4 if fan4>0 and fan4down=0 then dec fan4
if fan3<255 and fan3up=0 then inc fan3 if fan3>0 and fan3down=0 then dec fan3
if fan2<255 and fan2up=0 then inc fan2 if fan2>0 and fan2down=0 then dec fan2
if fan1<255 and fan1up=0 then inc fan1 if fan1>0 and fan1down=0 then dec fan1
intcon.2=0
context restore
--------------------------------------------------------------------------------------------------- cont1.bas dosyasını MicroCode ile açıp tekrar compile dediğimde hata veriyor.Bu BAS PIC Basic Pro'nun dosyası değil mi ? Senin Proton ile yaptığından mı böyle oluyor ? Asıl öğrenmek istediğim Pic Basic Pro'da PWM kodları,fan sayısı falan nasıl yapılmış ? Dediğim gibi PIC konusunda çok ilerlemiş değilim yavaş yavaş giriyoruz.Daha fazla veya az fan için kodun neresini değiştirmem lazım onu öğrenmek istiyorum.
< Bu mesaj bu kişi tarafından değiştirildi silicon -- 12 Ekim 2006; 21:57:32 >
Hatayı proton oldugu için verdiğini sanmıyorum.komutlrın yazım şekli farklıdır belki mirco code ta.hiç kullanmadım bilmiyorum..
O zaman ben programın çalışma mantığını açıklayayım elimden geldiğince..
PWM sinyalleri oluşrutmak için pwm komutunu kullanamazdım çünkü aynı anda sadece 1 port a pwm üretilebilir bu şekilde.Ben de şöyle bir yol izledim:
timer2 yi saniye de yaklaşık 250 kez taşacak sekilde ayarladım.tmr2 nin (prescale) bölücü kayıtçısını ayarlayarak.Bu da bana 250 hz lik bir testere dişi sinyal oluşturmamı sağladı (tmr2 kayıtçısının değeri).Her fan için bir değişken atadım örn:
if fan1>tmr2 then
out.0=1
else
out.0=0
endif
yukarıdaki kod fan1 değişkeni ile tmr2 değişkenini sürekli karşılaştırıp fan1 değeri büyükse çıkış "1" , küçükse çıkış "0" yapar (klasik opamp pwm üreteci mantığı).
bu mantığı diğer 3 kayıtçı için de uygularsak 4 kanal pwm elde etmiş oluruz.Tabi program sürekli olarak bu karşılaştırmayı yapmak zorunda..
Tuşlara basınca ise yapılması gereken tek şey fan1 , fan2 , .. değişkenlerinin değerini artırıp azaltmak ve hemem pwm tarama bölümüne geri dönmek.
Umarım işi daha da karıştırmamışımdır
< Bu mesaj bu kişi tarafından değiştirildi OzanGazi -- 12 Ekim 2006; 22:50:37 >