avatar_anlhlc

16f628a a.4 portunu cikis olarak kullanma

Başlatan anlhlc, 01 Temmuz 2013, 23:36:09

ete


M.A.A


M.A.A

Merhaba.
Hem son durumun bilgisini vermek hemde önerinizi almak istedim.
Yapmaya çalıştığım 8 giriş 8 çıkışlı devreyi SMD pcb üzerinde kurdum. 16f628a nın a4 portunu çıkış olarak kullandığım zaman kararsız çalıştı, o pinden verim olamadım. (Pull-up direncini farklı değerler kullanarak denedim)
Daha sonra aynı pcb yi 16f1826 ile kurdum. (1827 nin SMD si bulunduğum yerde yoktu) Aynı kod ile sorunsuz çalıştı. Şimdi senaryolu kodu yazıyorum.

Devreye başka versiyonu için 2 adet daha giriş eklemem gerek. Bunun için 18F1826/27 yerine pini daha fazla olan, kararlı çalışsan (OP olmayan), dahili osilatorlü ve bulunabilecek pic olarak neyi önerirsiniz.


MB_77

#48
bu mesaj tarafımdan silinmiştir.

İlyas KAYA

Öncelikle söylemeliyim ki bu kuru inat nedir ? Neden a.4 u çıkış olarak kullanmaya çalışıyorsunuz ki ?
Devredeki herhangi bir girişi a.4 e bağlayın kalan tüm portlar zaten çift yönlü.
A.4 u çıkış olarak kullanmaya çalışmak arabayı direksiyon ile değilde kaldırıp kaldırıp yönünü çevirmeye benzer. Çok da gereksizdir

Sorunuza gelince ; giriş olarak eksik kaldığı zaman hemen girişleri analog 'a çeviririm. Yani her giriş butonuna bir direnç bağlayıp tek kanaldan girerim.
Eğer aynı anda basılma durumu var ise 2 ser 2 ser adc kanallarına girerim böylece aynı anda en fazla 2 buton basılır ki buda herhangi bir sorun teşkil etmez .

Çok uzun zamandır 28 pinli pic den daha fazlasına ihtiyacım olmadi. Bütün işi tek bir pic 'e yaptırmak yerine devreyi modül modül tasarlarım. Bir çok iş donanımda zaten bitmiş olur. Daha da olmadı bir pic daha yanına eklerim.
Shift register kullanmayı pek tercih etmem çünkü pic ile nerede ise aynı fiyata mal oluyor.

28 pinli olarak 16f883 kullanıyorum ve hiç sorun yaşamadım. Fiyatı da uygundur. Yapi olarak 16f88 in aynısı diyebilirim.

Bence pic i büyütmek yerine daha sade tasarımlar yapmalısınız  :)
Göz odur ki dağ ardını görsün,
Akıl odur ki başa geleceği bilsin.!

M.A.A

#50
Merhaba
Sanırım bir yanlış anlaşılma oldu. 16f628a nın a.4 portu hem giriş hem çıkış olarak kullanılabiliyor.( Bidirectional I/O port) Ancak CMOS değil OD dir. Giriş olarak da çıkış olarak da kullansam Pull_Up direnci kullanmam gerekir. Siz galiba sadece giriş olarak kullanılan a.5 portunu düşünerek araba benzetmesini kullandınız.

Neden 16f628a yerine aynı kılıf başka pic kullandığımın açıklaması :
Yaptığım iş acil olduğu için 16f628a nin datasheet ini inceleyip devreyi ISIS de kurdum. Sorunsuz çalıştı. Sonra SMD PCB sini çizdim. Protatip için 15 adet sipariş verdim. PCB lerim gelene kadarda yazılımını bitirip delikli pcb üzerinde lehimleyerek devreyi kurdum. Daha önceki konularda bahsettiğim yüksek frekans gürültü ile karşılaştım. Diğer giriş çıkışlarda hiç sorun yaşamazken sadece bu çıkışta sorun yaşamam OD olmasından dolayı olduğu için devreyi büyütüp yeni eleman ekleyip tekrar PCB siparişi vermek yerine aynı kılıflı OD olmayan başka pic kullanmaya karar verdim. Ancak PCB lerim geldiği zamanda 16f628a yı lehimleyip denedim (Delikli PCB kullanarak yaptığım ile hazır PCB arasında bir fark olacak mı görmek isterdim). Bunun sonucunu da burada paylaştım ki kullanacak arkadaşlar dikkat etsin diye.


Neden tuşlara ADC kullanamadığımın açıklaması :
ADC kullanarak veya tarama yöntemi ile az pin ile çok tuş kullanılabilir. Daha önce birkaç yerde kullandım. Ancak kullanacağım sistemde girişler biraz farklı,bana 8 farklı kablo ile Lojik 1 veya Lojik 0 geliyor. Ben bunu test ederken tuş olarak düşünüyorum. Bu yüzden de ADC kullanmak yerine her girişe tek pin kullanmak istiyorum.

Neden soru sorarken bu kadar ayrıntı vermediğimin açıklaması :
Siz sormadan ben söyleyeyim neden çok ayrıntı vermediğimi. Girişte kablodan gelen Lojikler çıkışta da rolelerden önce ULN2803 var. Bunların dışında yazdığım kod ise biraz daha uzun ve bazı  süre hesapları var. Ben proje yaparken sorunla karşılaşırsam devreyi , yazılımı en aza indirgeyerek, sadece sorun yaşadığım bölgeye yoğunlaşırım. Aza indirgenmiş hali ile test ederim. Sorun devam ediyorsa burada paylaşarak sizlerden destek istiyorum. Bu durum hem sizlerin zamanınızı daha az almış olmamı sağlıyor ve çözümü bulmamızı kolaylaştırıyor. Ben devreyi ve yazılımı indirgemeden size yazmış olsaydım, Lojik gelen kablolarda parazit var mı sorusu akla gelecekti, epey uzun bir kod içerisinde hata ayıklamak baya zor olacaktı.

16f883 için teşekkür ederim.


Alıntı yapılan: İlyas KAYA - 10 Nisan 2018, 20:34:06
Öncelikle söylemeliyim ki bu kuru inat nedir ? Neden a.4 u çıkış olarak kullanmaya çalışıyorsunuz ki ?
Devredeki herhangi bir girişi a.4 e bağlayın kalan tüm portlar zaten çift yönlü.
A.4 u çıkış olarak kullanmaya çalışmak arabayı direksiyon ile değilde kaldırıp kaldırıp yönünü çevirmeye benzer. Çok da gereksizdir

Sorunuza gelince ; giriş olarak eksik kaldığı zaman hemen girişleri analog 'a çeviririm. Yani her giriş butonuna bir direnç bağlayıp tek kanaldan girerim.
Eğer aynı anda basılma durumu var ise 2 ser 2 ser adc kanallarına girerim böylece aynı anda en fazla 2 buton basılır ki buda herhangi bir sorun teşkil etmez .

Çok uzun zamandır 28 pinli pic den daha fazlasına ihtiyacım olmadi. Bütün işi tek bir pic 'e yaptırmak yerine devreyi modül modül tasarlarım. Bir çok iş donanımda zaten bitmiş olur. Daha da olmadı bir pic daha yanına eklerim.
Shift register kullanmayı pek tercih etmem çünkü pic ile nerede ise aynı fiyata mal oluyor.

28 pinli olarak 16f883 kullanıyorum ve hiç sorun yaşamadım. Fiyatı da uygundur. Yapi olarak 16f88 in aynısı diyebilirim.

Bence pic i büyütmek yerine daha sade tasarımlar yapmalısınız  :)

İlyas KAYA

Siz yazın sorun yok bi okuruz :)
Hayır a.5 den bahsetmiyorum a.4 öpen collector ve direk olarak çıkış yapamıyoruz. Ama direk olarak giriş yapabiliyoruz. Sadece devreyi tasarlarken bu pinlere dikkat ederek tasarlarsanız hiç bir sorun yaşamazsınız.
Umarım birdahaki tasarımda böyle bir hataya düşmezsiniz.

Az önce italyan bir kart geldi onda da 16f883 kullanmışlar. 16f883 ün fiyatı 16f1827 den daha ucuz :)
Tabi iç osilatoru 8 dir ama bir çok uygulama için fazlası ile yeterli.
Rica ederim  kolay gelsin.
Göz odur ki dağ ardını görsün,
Akıl odur ki başa geleceği bilsin.!

Powered by EzPortal