Picproje Elektronik Sitesi

DERLEYİCİLER => PICBasic => Konuyu başlatan: eub - 05 Mart 2015, 22:55:47

Başlık: HERHANGİ BİR PORTTAKİ DEĞİŞİMİ ALGILAMAK
Gönderen: eub - 05 Mart 2015, 22:55:47
Merhaba. LDR sensöründen gelen algılamaya göre iş yapacak PICBASIC kodu ne olabilir. Yani PORTA.1=1 olduğunda bir iş yaptıktan sonra tekrar sıfır olup tekrar 1 olduğunda iş yapacak. Yani PORT pinindeki değişim olursa iş yapması için gereken Picbasic kodu ne olabilir.
Başlık: Ynt: HERHANGİ BİR PORTTAKİ DEĞİŞİMİ ALGILAMAK
Gönderen: stm - 05 Mart 2015, 23:37:27
http://antrak.org.tr/index.php?option=com_content&view=article&id=1528:sensrler-ve-mikroilemciler-8&catid=90&Itemid=93 (http://antrak.org.tr/index.php?option=com_content&view=article&id=1528:sensrler-ve-mikroilemciler-8&catid=90&Itemid=93)
Başlık: Ynt: HERHANGİ BİR PORTTAKİ DEĞİŞİMİ ALGILAMAK
Gönderen: eub - 06 Mart 2015, 16:40:29
Yanıtınıza teşekkürler. Fakat kullandığım pic16f628 olduğundan ADC converter yapısı zannedersem yok. Benim için LDR'deki voltaj değişimini kademe kademe incelemeye gerek yok. Sadece LDR'nın bağlı olduğu pin'deki değer 1 olduğunda LCD display'e değer gidiyorken bu kontrolü değer 0 olup tekrar 1'e döndüğünde gerçekleştirmem gerekiyor. Aksi halde değer 1 oldukça Displaye yazdırmaya devam ediyor. Oysa bana 0'dan 1 e her döndüğünde komutun gerçekleşmesi gerekiyor. Bunun için IF'li komutlarla bazı denemeler yapıyorum ama şu anda yapamadım daha. Bunun kolay yoldan örneğin TOGGLE komutu çıkış olan bitin durumunu değiştirirken, giriş olan ve biz müdahele etmeden TOGGLE durumuna uğramış mı diye bir komut var mı? diye merak ediyorum.
Başlık: Ynt: HERHANGİ BİR PORTTAKİ DEĞİŞİMİ ALGILAMAK
Gönderen: stm - 06 Mart 2015, 20:50:24
sorunun ldr nin kararsız bölgede kalması ise eğer bunu bir zener diyoT ve bir transistör ile halledebilirsin.



+5V------LDR--|----DİRENÇ----EKSİ
                      |
                    3.2V
                      Z
                      E
                      N
                      E
                      R
                      ---------BC237----PİC

eğer liner olarak ölçmek istersen en basidinden PİC12F675 kullanabilirsin. analog olarak ölçüp istediğin seviyede lcd ye istediğin şeyi yazdırabilirsin v.s.




Başlık: Ynt: HERHANGİ BİR PORTTAKİ DEĞİŞİMİ ALGILAMAK
Gönderen: sadogan - 06 Mart 2015, 22:00:09
Alıntı yapılan: eub - 06 Mart 2015, 16:40:29
Yanıtınıza teşekkürler. Fakat kullandığım pic16f628 olduğundan ADC converter yapısı zannedersem yok. Benim için LDR'deki voltaj değişimini kademe kademe incelemeye gerek yok. Sadece LDR'nın bağlı olduğu pin'deki değer 1 olduğunda LCD display'e değer gidiyorken bu kontrolü değer 0 olup tekrar 1'e döndüğünde gerçekleştirmem gerekiyor. Aksi halde değer 1 oldukça Displaye yazdırmaya devam ediyor. Oysa bana 0'dan 1 e her döndüğünde komutun gerçekleşmesi gerekiyor. Bunun için IF'li komutlarla bazı denemeler yapıyorum ama şu anda yapamadım daha. Bunun kolay yoldan örneğin TOGGLE komutu çıkış olan bitin durumunu değiştirirken, giriş olan ve biz müdahele etmeden TOGGLE durumuna uğramış mı diye bir komut var mı? diye merak ediyorum.
Picbasic bilmiyorum
Söyle bir yol tavsiye edebilirim
LCD_YAZ gibi bir bayrak tanımlayın.
İlgili pininiz '0' olduğunda bu bayrağı 'set' edin ve ilgili pin ile LCD_YAZ bayrafını
ADN leyip sonuc '1' ise lcd nize yazacaklarınızı yazıp LCD_YAZ bayragını 'clr' edin
Böylece ilgili pininiz 0 dan 1 e döndüğünde LCD yazmış olursunuz.
Tekrar yazabilmek için ilgili pinininizin 0 dönmesini beklemiş olursunuz.

Başlık: Ynt: HERHANGİ BİR PORTTAKİ DEĞİŞİMİ ALGILAMAK
Gönderen: eub - 08 Mart 2015, 21:07:02
Cevaplarınıza teşekkürler. Ama bahsettiğniz çözümlerden ziyade bunu PICBASIC kodları ile çözebilmeyi istiyorum. IF'li komutlarla falan bir yolu olmalı diye düşünüyorum.
Başlık: Ynt: HERHANGİ BİR PORTTAKİ DEĞİŞİMİ ALGILAMAK
Gönderen: OG - 10 Mart 2015, 06:35:48
ADC olmayan pin ile LDR türü değişken dirençlerle elde edilecek LOW veya HIGH değerleri dışındaki voltaj bilgisine sahip olmak için ADC gibi yuksek dogruluklu olmasa da POT isimli komuttan yararlanılabilir. bu komut için kullanılacak port I/O olabilmelidir ve OD (open drain) yapıda olmamalıdır. LDR ye uygun değerli kapasite eklenmeli.

http://melabs.com/resources/pbcmanual/5/5-24.htm (http://melabs.com/resources/pbcmanual/5/5-24.htm)

https://www.picproje.org/index.php?topic=10074.0 (https://www.picproje.org/index.php?topic=10074.0)