Pic lerde gürültü ??

Başlatan imcek, 08 Kasım 2008, 13:04:16

imcek

Selam arkadaşlar.Pic li bir devrenin tam üzerinde başka bir devre ve çok yakın olması şart(küçük olması açısından)Ancak devre devamlı çalışmıyor.Grafik lcd de görüntü donuyor.Bazen çalışmıyor.Bunun sebebi iki devrenin birbirine yakın olmasından kaynaklanıyor olabilirmi?yani gürültü vs?

18F452 li devrenin  üzerinde (tuştakımı ve grafik lcd li tek plaket) bulunuyor

krian

Pic in yanına yüksek akım çeken elemanlar yaklaştırma.bütün girişler çıkışları opto ile izole et. ilaa iki kartı üst üste koyman gerekiyorsa arasına boş bir bakır plaket koy ve toptaga bagla.ama en önemlisi programı yazarken reset olayı oluyormuş gibi programla yani programın calısması resetten etkilenmesin. donma olayını da WDT ile halledebilirsin.Bütün formlarda wdt korkulan bir sigorta ama devamlı calısması gereken cihazlar için wdt sigortası olmazsa olmaz.

remzi


imcek

Alıntı yapılan: "remzi"LVP açıksa kapat...

Kardes lvp nedir?

krian kardeş

WDT ı kapatmamız mı gerekiyor.tam anlayamadım

Tagli

LVP = Low Voltage Programming. Bir ayar bayrağı (yani Code Protect veya WDT gibi falan). Yanlış bilmiyorsam PIC'in normalde ihtiyaç duyduğundan daha düşük voltajla programlanabilmesini sağlıyor. Ama programlama bacağında voltajın bu değere ulaşması LVP açıkken PIC'in durup programlama moduna girmesine sebep olabilir belki. Yanlış anlamadıysam o yüzden kapatılması tavsiye edilmiş.

Benim de aklıma bir soru geldi: LVP açıkken dizüstü bilgisayarlardan USB-RS232 dönüştürücüsüyle (ve de JDM tabi) programlama yapabilir miyiz?
Gökçe Tağlıoğlu

teknikelektronikci

wdt bekci köpegi anlamina gelior watch dog timer diye bi aratin sanirim bazi durumlarda picin reset atmasini sagliyor
Ey Türk istikbalinin evlâdı! İşte, bu ahval ve şerâit içinde dahi, vazifen; Türk İstiklâl ve Cumhuriyetini kurtarmaktır! Muhtaç olduğun kudret, damarlarındaki asil kanda mevcuttur!

Tagli

Alıntı yapılan: "teknikelektronikci"wdt bekci köpegi anlamina gelior watch dog timer diye bi aratin sanirim bazi durumlarda picin reset atmasini sagliyor
Taştığı zaman reset atmasına sebep olur. Programın içinde düzenli olarak CLRWDT komutuyla sıfırlanır. Böylece program bir yerde takılıp kalmışsa sıfırlama yapılmadığından taşma gerçekleşir ve PIC resetlenerek tıkanıklık çözülmüş olur. Hızı OPTION_REG'deki katsayılarla PIC'in çalışma hızına bağlı olarak ayarlanabilir.
Gökçe Tağlıoğlu

teknikelektronikci

hocam bu bilgi icin cok tesekürelr sayenizde bende ögrenmis oldum güzel olaymis valla :D
Ey Türk istikbalinin evlâdı! İşte, bu ahval ve şerâit içinde dahi, vazifen; Türk İstiklâl ve Cumhuriyetini kurtarmaktır! Muhtaç olduğun kudret, damarlarındaki asil kanda mevcuttur!

Lütfi AYYILDIZ

Böyle bir sorunla uzun süre mücadele etmiştim.Wdt yi açmak bi işe yaramadı veya kartı uzaklaştırmak. Bu şebekedeki harmoniklerden kaynaklanan bir sorun. Besleme kısmında işi çözmen gerekir. Bunun için hazır satılan veya varistör, kondansatör,bobin gibi elemanlardan oluşan filtreler kullanabilirsin.Sorunun kesin çözülecektir.

imcek

Alıntı yapılan: "cobra07"Böyle bir sorunla uzun süre mücadele etmiştim.Wdt yi açmak bi işe yaramadı veya kartı uzaklaştırmak. Bu şebekedeki harmoniklerden kaynaklanan bir sorun. Besleme kısmında işi çözmen gerekir. Bunun için hazır satılan veya varistör, kondansatör,bobin gibi elemanlardan oluşan filtreler kullanabilirsin.Sorunun kesin çözülecektir.

teşekkürler kardeş

remzi

LVP sigortasını aktif ettiğin zaman( programlama esnasında) elini mikrodenetleyiciye yaklaştırdığın zaman ( 5-10mm civarında ) mikrodenetleyici kilitleniyor. Kilitlenmekteki kastım osilatör duruyor. Elinizi çekince kaldığı yerden devam ediyor. Bende USB programlayıcı olduğu için LVP yi sürekli olarak kapatırım.

Bootloader ı çalıştırmak için 1 haftamı harcadım. Sonuç LVP açıkmış ve portb çalışmıyordu...

Belki sizinde probleminiz bu olabilir. İlk önce bu sigortayı pasif yapın daha sonra diğer yöntemlere başvurursunuz...

Ayrıca besleme kaynağınız ani akımları karşılayabiliyormu onu kontrol edin.

imcek

Alıntı yapılan: "remzi"LVP sigortasını aktif ettiğin zaman( programlama esnasında) elini mikrodenetleyiciye yaklaştırdığın zaman ( 5-10mm civarında ) mikrodenetleyici kilitleniyor. Kilitlenmekteki kastım osilatör duruyor. Elinizi çekince kaldığı yerden devam ediyor. Bende USB programlayıcı olduğu için LVP yi sürekli olarak kapatırım.

Bootloader ı çalıştırmak için 1 haftamı harcadım. Sonuç LVP açıkmış ve portb çalışmıyordu...

Belki sizinde probleminiz bu olabilir. İlk önce bu sigortayı pasif yapın daha sonra diğer yöntemlere başvurursunuz...

Ayrıca besleme kaynağınız ani akımları karşılayabiliyormu onu kontrol edin.

Tanımlamalarım şu şekilde (Protona aittir)



 
@CONFIG_REQ
 @__CONFIG config1h, OSCS_OFF_1 & HS_OSC_1
 @__CONFIG config2l, BOR_off_2 & BORV_20_2 & PWRT_ON_2
 @__CONFIG config2h, WDT_OFF_2 & WDTPS_128_2
 @__CONFIG config3h, CCP2MX_ON_3
 @__CONFIG config4l, STVR_ON_4 & LVP_OFF_4 & DEBUG_OFF_4


bu şekilde programladım.olmadı.sorun yazılımsal değil galiba arkadaşlarında dediği gibi gürültü yada vs den kaynaklanıyor olabilir.bir sonuca ulaşınca burda sizinle paylaşıyor olacağım

bymrz

bir de brownout reseti kapatmayı dene  :lol:   ;)

628 için örnek:

@ device pic16f628a,bod_off

Artı: picin dibine 100nF
Artı: regülatörden önce diyottan sonra(varsa tabi) değeri büyük bi kapasitör
Artı: regülatörden sonra değeri büyük bi kapasitör...

imcek

Alıntı yapılan: "alone_lover"bir de brownout reseti kapatmayı dene  :lol:   ;)

628 için örnek:

@ device pic16f628a,bod_off

Artı: picin dibine 100nF
Artı: regülatörden önce diyottan sonra(varsa tabi) değeri büyük bi kapasitör
Artı: regülatörden sonra değeri büyük bi kapasitör...

Teşekkürler sağol