Devrede ısı sensörü olarak LM35DZ kullanılmıştır. Bu sensör 0o ile 100o arası çıkış verebilmektedir. Mikrodenetleyici olarak 12F675 seçilmesinin sebebi hem jalv2 dilinde kullanımını göstermek hemde 12F675 gibi pin sayısı yetersiz olan bir denetleyici ile nasıl display kullanıldığını göstermektir.
Devre gerçekte yapılacağı zaman, sağ tarafta bulunan kırmızı çerçeve içerisindeki 3 adet direnç, Simülasyonun daha sağlıklı çalışmasını sağlamak için kullanıldığından dolayı kullanılmayacaktır.
Devrenin Çalışma Mantığı :
0 ile 99 derece arası ölçüm yapan devremizde display’ler tarama yöntemi ile kullanılmıştır. 12F675 gibi pin sayısı az olan işlemciler için Display kullanmak imkânsızdır.
Bu nedenle sadece 2 pin kullanarak 74HC164 ile port çoklama işlemi gerçekleştirilmiştir. 74HC164 entegresinin seçimindeki temel nokta işlemcinin 2 pinini kullanmasıdır. Bu sayede display seçmek için bize 2 adet pin geriye kalmıştır. Devre şemasında 3 adet display gözükmektedir. Ama 12F675 okunan dereceyi göstermek için sadece 2 display’i kullanmaktadır. En sondaki Display Sadece derece sembolünü göstermektedir.
Her Display’in çıkışında sadece 1 adet 330 ohm direnç kullanılmıştır. Eğer tarama yöntemi kullanmıyor olsaydık bu dirençler aşırı akım çekeceğinden dolayı ısınıp yanacaktı.
Tarama yöntemi sayesinde displayler saniyede yaklaşık olarak 230 Hz frekans ile yanıp sönmektedir. Bu sayede dirençlerde ısınma olmamaktadır.
Devrenin Çalışmasını Kısaca Açıklayacak olursak; 12F675 yaklaşık olarak her 1 sn aralıklarla ADC kanalını okumaktadır. Ve Sonucun daha stabil olması için 10 kez okuyup daha sonra ortalamasını almaktadır. Bu sayede salımlar minimuma indirilmiştir. Okunan ADC değerine karşılık gelen dereceyi hesaplamak programda derece_al alt programı kullanılmıştır.
1 procedure derece_al(byte out hane_10,byte out hane_1) is
2 var word temp_deger = 0
3 var byte basamaklar[] = {252,96,218,242,102,182,190,224,254,246}
4 for 10 loop
5 temp_deger = temp_deger + adc_read(0)
6 end loop
7 while (ADCON0_NDONE == 1) loop end loop
8 temp_deger = ((temp_deger/10) * 100)/204
9
10 if temp_deger > 99 then
11 hane_10 = 2 — “-”
12 hane_1 = 2 — “-”
13 else
14 hane_10 = basamaklar[(temp_deger / 10)]
15 hane_1 = basamaklar[(temp_deger % 10)]
16 end if
17 end procedure
Alt Programın Satır Satır İncelenmesi :
1.satır : Alt programın ismi ve 2 adet çıkış parametresi tanımlanmıştır.
2.satır : Geçici hesaplamalar için temp_deger isminde word tipinde değişken tanımlanmıştır.
3.satır : Ortak katot display’ler için her rakam dizi olarak tanımlanmıştır.
4.satır : 10 kez çalışacak for döngüsü oluşturulmuştur.
5.satır : Adc kanalı okunup geçici değişkenimize aktarılmıştır.
7.satır : While döngüsü ile ADCON0_NDONE == 1 Adc Çevrim Bayrağı 0 olana kadar bekleme yapılmıştır. Bu sayede olası adc çevrimi bitmeden formül işletilmeyecek ve daima doğru sonuç alınacaktır. Adc Çevrimi Başlatıldığında ADCON0_NDONE bayrağı, Çevrim Bitene Kadar 1 Olmaktadır. Bu sayede Çevrimin Bitip Bitmediği, bayrağın durumundan takip edilebilmektedir.
8.satır : Geçici değişkenine, okunan adc sayısının derece karşılığı aktarılmıştır.
10.satır : Eğer derece 99’dan fazla ise birler ve onlar hanesine “-“ sembolü aktarılmaktadır. Bu sayede sıcaklığın 99’dan büyük olduğu anlaşılmaktadır.
14.satırda : hesaplanan derecenin onlar hanesi çıkış parametresine aktarılmıştır.
15.satırda : hesaplanan derecenin birler hanesi çıkış parametresine aktarılmıştır.
Okunan ADC değerine Karşılık gelen Derecenin Hesaplanması :
LM35DZ sensörü maksimum 100 derece ölçmektedir ve 100 derecede çıkışı 1 Volt olmaktadır. 1 Volt ise Dijital olarak ~204 sayısına denk gelmektedir.(1023/5 = 204,6) Formülümüz; 100 derecede 204 sayısı okunuyor ise okunan_adc değerinde X derecesi okunur, orantısından yola çıkarak ; Derece = (okunan_Adc*100)/204 Olmaktadır. Okunan_Adc değerimiz burada temp_deger değişkeninin 10’a bölünmüş sonucudur.
Sonuç olarak Formülümüz 8.satırdaki Halini almıştır. Formülün sonucu normalde word tipinde çıktığı için byte() fonksiyonu ile byte tipine dönüştürülmüştür.
12F675 Konfigürasyon :
1 include 12f675
2 pragma target clock 4_000_000
3 pragma target OSC INTOSC_NOCLKOUT
4 pragma target WDT disabled
5 pragma target MCLR INTERNAL
6 enable_digital_io()
7 pin_A0_direction = input
8 pin_A1_direction = output
9 pin_A2_direction = output
10 pin_A3_direction = output
11 pin_A4_direction = output
12 pin_A5_direction = output
Devrenin çalışması için 12F675 işlemcisine ait adreslerin programa dahil edilmesi gerekmektedir. Bu adresleri tek tek yazılıma dahil etmek zor olacağından kütüphaneleri kullanarak bu adresleri dahil edebiliriz.
Bunun için 1. satırda olduğu gibi include 12f675 komutu kullanılmaktadır.
Gerekli adresler programa dâhil edildikten sonra sigorta ayarlarının da belirtilmesi gerekmektedir. İlgili sigorta ayarları dâhil edilen kütüphane dosyasında yer almaktadır. Bizim devremiz için gerekli sigorta ayarları aşağıdaki gibidir.
2.Satırda İşlemcinin Clock Frekansı 4Mhz olarak belirtilmiştir.
3.Satırda Clock Kaynağı olarak işlemcinin dahili kristali kullanılacağı belirtilmiştir.
4.Satırda WatchDog Timer’ın kapalı olduğu belirtilmiştir.
5.Satırda MCLR pininin kullanılmayacağı belirtilmiştir.
6.satırda ise tüm pinlerin dijital giriş çıkış olacağı hakkında işlemciye bilgi verilmiştir.
Diğer Satırlarda ise işlemcinin pinlerinin giriş veya çıkış olup olmayacağı ayarlanmıştır.
Programda sonsuz döngü oluşturularak yaklaşık olarak 1 sn’de bir kez derece hesaplanıp display’lerde saniyede 230 kez gösterilmektedir. Bu sayede gözümüz sürekli olarak ekranlarda rakamları görmektedir.
Malzeme Listesi:
7 Segmentli Display pinleri :
Devrenin Gerçekleştirilmiş Baskı Devresi
Gerçekleştirilen Devrenin Başka Bir Termometre ile Çekilmiş Fotoğrafı ve Çalışma Görüntüleri
Jalv2 Kaynak Kodu :
--------------------------------------------------------------- -- Programın Adı : 1' hassasiyetli LM35 Termometre Devresi -- (0..99) arası Ölçüm -- Yazan : Sercan TEK - Turkey/Tekirdağ -- Tarih : 19.12.2011 -- chip : 12F675 ve 74hc164 -- Derleyici : jal 2.4p-alpha --------------------------------------------------------------- -- ------------------------------------------------------------ include 12f675 pragma target clock 4_000_000 -- kristal 4 Mhz pragma target OSC INTOSC_NOCLKOUT -- dahili OSC pragma target WDT disabled -- watchdog Kapalı pragma target MCLR INTERNAL -- mclr kullanılmıyor enable_digital_io() pin_A0_direction = input pin_A1_direction = output pin_A2_direction = output pin_A3_direction = output pin_A4_direction = output pin_A5_direction = output alias birler is pin_a5 -- birler hanesi pin_a5 alias onlar is pin_a4 -- onlar hanesi pin_a4 ----------------------------- ADC İşlemleri --------------------------- const byte ADC_NVREF = ADC_NO_EXT_VREF -- Harici Referans Yok const ADC_HIGH_RESOLUTION = true -- Çözünürlük 10 bit include adc -- adc kütüphanesi Dahil adc_init() -- adc hazırlanıyor const byte ADC_CHANNEL = 0 -- 1 adet kanal kullanılacak (AN0) set_analog_pin(ADC_CHANNEL) -- AN0 analog pin yap -------------------- 74HC164 için pin tanımlamaları ------------------- var volatile bit clock_pin is pin_a1 var volatile bit data_pin is pin_a2 procedure display_yolla(byte in giris_bilgi) is var bit veri_biti at giris_bilgi : 0 for 8 loop data_pin = veri_biti giris_bilgi = giris_bilgi >> 1 clock_pin = high clock_pin = low end loop end procedure ----------------------------------------------------------------------- procedure derece_al(byte out hane_10,byte out hane_1) is var word temp_deger = 0 var byte basamaklar[] = {252,96,218,242,102,182,190,224,254,246} for 10 loop temp_deger = temp_deger + adc_read(0) end loop while (ADCON0_NDONE == 1) loop end loop temp_deger = ((temp_deger/10) * 100)/204 if temp_deger > 99 then hane_10 = 2 -- "-" hane_1 = 2 -- "-" else hane_10 = basamaklar[(temp_deger / 10)] hane_1 = basamaklar[(temp_deger % 10)] end if end procedure var byte onlar_hanesi,birler_hanesi forever loop derece_al(onlar_hanesi,birler_hanesi) for 5 loop for 50 loop onlar = false birler = false display_yolla(onlar_hanesi) onlar = true _usec_delay(2000) onlar = false display_yolla(birler_hanesi) birler = true _usec_delay(2000) end loop end loop end loop
PIC12F675 ve LM35 Sensörlü Termometre Devresi V2
Yenilikler :
- Transistörler BC547 yerine BC337 olarak değiştirildi.
- 330 Ohm dirençler transistörün emiteri yerine kollektörüne seri olarak bağlantı.
- Yukarıdaki nedenlerden dolayı baskı devresi yeniden düzenlendi.
- ilk Çalıştırmada Dİsplaylere animasyon eklendi.
- Hazır adc kütüphanesi yerine adc rutine yeniden yazıldı.Bu sayede harici kütüphane ihtiyacı, sadece adreslerin tanımlı olduğu
12F675.jal oldu.
NOT : Daha önce devreyi yapan arkadaşlar İsteğe Bağlı yeni yazılımı yükleyip kullanabilirler. Donanımsal olarakta sadece BC547 yerine BC337 takabilirler. Transistör Değiştirmedeki amaç ise Olası parlaklık sorununu engellemektir. Ayrıca BC337’nin yüksek güçlü olmasıdır.
Proteus 7.8 SP2 kullanılmıştır. Dosyalar 7 versiyonu ile uyumlu olarak kaydedilmiştir.
Termometre Devresine ait kaynak Jalv2 kodları proteus simülasyon ve ares pcb dosyaları:
Şifre-Pass: 320volt.com
Yayım tarihi: 2011/12/21 Etiketler: jal display, jal lm35, jal termometre, jalv2, jalv2 sample, microchip pic projeleri
Bu çalışma PIC uygulamasına, jal yazılımına ve 74hc164 kullanımına çok iyi bir örnek olacak şekilde hazırlanmış kaynak olmuş. eğemeğin için teşekkürler.
burada gördüğüm bazı sorunları bildirmek istedim.
1. sorun, ADC dönüşümü yaparken sabit bir referans voltajı gerekiyor. bunu ayrıca vermek istemediğimiz zaman 5v beslemeye dahil ediliyor ama bu beslememiz sürekli sabit kalmıyor. displeylerin harcadığı akıma göre ufak dalgalanmalar meydana geliyor ve adc dönüşüm sonucu bundan etkileyebiliyor.
2. sorun, 330 ohm dirençleri transistörlerin emiterine değilde kollektörüne bağlaman gerekirdi. bu hali ile tam anahtarlama yapmaz ve emiter kollektör direnci büyür. buda sadece ekran parlaklığını etkiler. ayrıca bc547 düşük güçlü bir transistördür. bc337 kullanman daha sağlıklı olurdu.
3. sorun, LM35 çıkış voltajını direk adc girişinden okumak sağlıklı olmuyor çünkü sensör voltajı çok düşüktür. en yüksek 100 derecede 1v veriyor. 0,3v altına inmek iyi olmaz. onun için sensör çıkışını opamp ile 4…5 kat arttırarak okumalısın.
bütün bu saydıklarım donanımla alaklıydı. jal bilmediğim için yazılımı sağlıklı inceleyemedim. devre bu hali ilde normal çalışır ama ayrıntıları bilgi edinmende fayda var. örnek uygulama bakımından çok güzel olmuş ancak termometrelerde doğruluk çok önemlidir.
tekrardan emeğine teşekkürler.
Merhaba Nazmi Bey..
Öncelikle ilginiz için teşekkür ederim.. basit bir açıklama yapmak istiyorum..
Devre okul ödevini karşılayacak şekilde tasarlandı.. çok ayrıntıya dikkat etmedim.. Hazır böyle bir devre yapmış iken örnek teşkil etmesi için yayımladım ve gerekli açıklamaları yazdım..
Eğer devre profesyonel olarak yapılsaydı tabiki adc referansı olabilecek en sağlam şekilde ayarlanırdı.
Elimin altından Bolca BC547 olduğundan dolayı onu kullandım..Dirençler konusunda dikkatli olmadım ama başka uygulamalarda mutlaka göz önünde bulunduracağım..
Devreyi minimum parça ile yapmak için opamp kullanmadım yoksa benimde aklımdaydı..Bu halde bırakmada bir sakınca görmedim..
Devreyi Bir kaç gün denedim ve elimin altında bulunan resimdeki termometre ile hemen hemen aynı ölçümü aldım.. açıkçası pek üzerinde durmadım..sonuçta ders geçmeye yönelik hazırlanmış bir devre aynı zamanda örnek olması için yayımladığımdan dolayı profesiyonel çalışmak isteyen arkadaşlar dediklerinizi göz önünde bulundurmalı..
İlginiz ve eleştiriniz için tekrar teşekkür ederim.. iyi çalışmalar..
toplam maliyeti ne kadar
Fatih bey Bulunduğunuz ile göre fiyatı değişecektir.. Ben sadece displayleri pahalıya aldım tanesi 1 tl idi.. Geri kalan malzemeler elimde vardı.. ama sanırım tas çatlasın 15 TL yi geçmez..
İnternetten baktığım Fiyatlar Aşağıdaki gibi :
1 x 12F675 = 4
1 x 74LS164 = 0.75
3 x BC547 veya BC337 =0.25
Dirençler = 0.50
1 x LM7805 = 0.50
3 x Ortak Katot Display = 1.50
1 x LM35 = 2.50
2 x 100nf = 0.25
Plaket = 0.50
Toplam = 10.75 TL
Satırları da shift register ile sürebilirsiniz. Bu durumda port sıkıntısı kalkar.
Shift register’ın
Ortak katot dörtlü display için data formatı şu şekilde olur:
abcdefgh1234
27 °C yazmak için mesela,
11011100111
111000001011
110001101101
100111001110
İlk 8 bitte rakam bilgisini kalan 4 bitte dijit bilgisini tutacaksın. Dijit bilgisini istenilen tarama frekansında sürekli değiştireceksin. Datayı shift register’dan her latch edişinde otomatik olarak tarama işlemi gerçekleşecektir. Tek shift register yetmeyebilir, iki tanesini kaskad bağlamak gerekebilir.
Eyvallah adaş eline koluna sağlık 😉
Arkadaşlar ilk çalışmama bu termometre olacak her şeyini temin ettim.Bir taraftan acemiyimde.Şimdi 12F675 e .hex dosyasını attım .Acaba .jal yazanı da atmamız gerekiyor mu?Özür diliyorum saçma olduysa…Acilen cevap bekliyorum.
Merhaba Djtur
12F675’e sadece hex dosyasını atacaksın.. Displayler özellikle belirtmek isterim ki ortak katot olacak.. aynı zamanda 3 ve 5 nolu pinleri baskı devrede yok.. kullanılmıyor yani kesebilirsin.. yada benim yaptığım gibi içe doğru bük ve atlamalar ile temas etmesin diye izole bant ile az birşey kapla..İnşallah herşey yolunda gider..
Çok teşekkür ederim bugün hallettim ve gayet güzel çalışıyor.Elinize sağlık.Gerçekten çok zevkliymiş.Kendin yapınca daha hoş oluyor.Tekrar teşekkürler.
Hayırlısı olsun Djtur..
Devrede bazı düzenlemeler yaptım.. hem yazılımsal hem donanımsal.. bu başlık altına eklenince yeni yazılımını 12F675’e yükleyebilirsin. Sizin yaptığınız devre ile uyumlu.. Kolay gelsin..
teşekkürler.Buraya mı eklenecek?
Evet buraya Eklenecek.. Düzenleme işlemi bittikten sonra bu başlık altına eklenecek..
Devreyi yapan Arkadaşlar Merhaba,
Devreyi güncelledim.. Gerekli düzenlemelerin yapıldığı dosyalar konunun en altına eklenmiştir.Gerekli açıklamalar yapılmıştır. Kolay gelsin..
İyi Çalışmalar..
Buradaki baskı devreyi tarayıcıdan çıkartacağım fakat plakete göre baskı devre büyük gözüküyor plakete çıkarılan baskı devrenin ölçekleri nedir ?
İyi çalışmalar 🙂
Merhaba Caner..
Devreyi aynen çıkart ve minimum 10cm x 4.5cm ebatındaki plakete bas.. Bir problem çıkmayacaktır. ben bu şekilde 3-4 tane bastım..hepside gayet iyidi.. 🙂
Emekleriniz ve bilgileriniz içinçok teşekkür ederim.
iyi günler Sercan. Plaketin ve tarayıcıdan çıkartılan devre şemasının boyutları nelerdir ??
Merhaba Barış..
Yazıcıdan 10cm x 4.5cm olarak çıkıyor.. Gerisi Lazer yazıcıdan yağlı kağıda çıktı alıp en az 10cm x 4.5cm ebadındaki bir plakete basmak kalıyor..
Tarayıcıdan taranılıp çıkarılan da aynı ebattadır.
iyi günler. Bu benim ilk yapacağım çalışma olacak. 12F675 e .hex dosyasını nasıl atılacak? Saçma soruysa özür dilerim
Merhaba Bekir..
İnternetten “pic programlayıcıları” araştırmalısın.. bir sürü programlayıcı var.. aradığın cevabı bulacağına inanıyorum..
başarılar dilerim..
iyi günler Sercan….
Bu .hex dosyası hangisi yardımcı olur musun ?
devreyi yaptım sorunsuz çalışıyor. emegi geçenlere teşekkür ederim
Merhabalar devreyi yaptım yalnız değerler sürekli değişkenlik gösteriyor sabit kalmıyor 2 versiyonunu yaptım acaba 2versiyonda problem olabilir mi 1.sini yapmadım henüz 2. devreyi yapan var mı acaba?
Merhaba Gazi
Ben her iki devreyi yaptım be beraber çalıştırmıştım.. sadece ilk açılışta 3-4 kez oynayıp sabitleniyordu..
Sürekli oynamasının nedenleri şunlardır :
1- Güç kaynağının kalitesiz oluşu.
2- LM35 ve filtre için kullanılan kondansatör ile Direncin kalitesiz oluşu(çıkma malzeme kullanımı mesela)
2- Lehimlerin iyi yapılmaması(soğuk lehim gibi..)
istersen 1. versiyonundaki yazılımıda indirip PIC’e yükle denemelerini öyle yap.. sonra malzemelere yoğunlaşırsın..
Sizin videodaki yaptınığınız plaket ölçekleri nedir ?
Yorumları okursanız gerekli ölçüleri görebilirsiniz.. bende aynı ebatları kullandım.. göremedi iseniz 4.5cm x 10cm..
Kolay gelsin..
Merhaba,
Çalışmanızdan dolayı sizi tebrik ediyorum Sercan Bey
Benim sorum devreyi (-) sıcaklık ölçer hale getirebilmeniz mümkün mü?
Malum havalar şu sıralar çok soğuk ve (-) sıcaklığı görmem lazım.
Bu mümkünse ve uygulamaya koyabilirseniz çok memnun olurum.
Merhaba Yasin
Devre bu hali ile malesef eksi sıcaklıklara inemez.. lm35’in bağlantı şekli değiştirilmeli displayler arttırılmalı veya değiştirilmeli.. tüm bunları sürebilmek için 12F675’in pinleri yetersiz kalabilir.. Kısacası farklı bir devrede istediğiniz şekilde ölçüm yapılabilir.. DS18B20 kullanılırsa -55 ve +125 arası sorunsuzca ölçülür.. ilerleyen zamanda DS18B20 kullanarak bir uygulama yayımlayacağım..
Kolay gelsin..
çalışma gerçekten güzel olmuş..size sormak istediğim yaptığım devre devamlı 1 derece yüksek gösteriyor..bunun bir çözümü varmı?teşekkürler
Sercan Bey,
Ben bir hekimim ve bu konuların çok ciddi cahiliyim. Sorum absürt olursa kusura bakmayın.
Bu sistemi şu şekilde uygulayabilir miyiz:
Rat(=sıçan (farenin büyüğü))’ların vücut sıcaklığını ölçümde kullanabilir miyim (ortalama sıcaklık yaklaşık 35-37 C arası)?
Ölçüm gerçekleşebilirse, 35 C’nin altına düştüğünde sistem devreye girip ratın altındaki rezistansı açıp ısı vermesini, sıcaklık yükseldiğinde de rezistansı kapatmasını sağlayacak şekle getirilebilir mi? Bu düzenek deney sırasında hayvanın vücut sıcaklığını korumak için önemli olabilir. Ayrıca sıcaklığın kendiliğinden, sistem kapalıyken, yükselmesi de olası değil.
Eğer mümkün ise çok fazla komplike hale getirmeden böyle bir sistemi kurma maliyeti ve malzemeler hazırsa süresi nedir?
İlginize teşekkürler
@Ömer Demir
Hocam söylediğiniz proje yapılmıştır. https://320volt.com/pic16f88-ds18b20-multi-termostat-devresi-yeni-ozellikler/ bu adresden ulaşabilirsiniz. Kendim de yapıp kullandım.
Merhaba devreyi yaptım her sey tamam çok güzel fakat displaylerin 2 ayaklarını sanırım plakete lehimlemiyeceğiz değil mi ? en sağdaki ayak ve ortadaki ayaklar demi ?
Teşekkür ederim , iyi çalışmalar…
Evet @Emre 3. ve 5. ayak Lehimlenmeyecek.. istersen kesebilirsin.. yada içe katlayıp üzerine bant yapıştırabilirsin..
Devredeki anahtarın (on/off) devrede bir etkisi olacakmı yani devrede işe yarıyacak mı ?
Teşekkür ederim.
Sayın @Caner
Sizce işe yaramayacak mı?
En üstteki devre şemasına ” Gerçek uygulamada kullanılmacayak ” yazıyor ?
@Caner
Onlar Direnç.. Açıklamada Belirtmiştim.
“Devre gerçekte yapılacağı zaman, sağ tarafta bulunan kırmızı çerçeve içerisindeki 3 adet direnç, Simülasyonun daha sağlıklı çalışmasını sağlamak için kullanıldığından dolayı kullanılmayacaktır.”
Selamün aleyküm Bu devrenin orjinal baskı boyutunu verebilirmisiniz. Bu görünen aşırı büyük çıkıyor
@volkan
1 numaralı yorum sayfasına bakınız
güzel paylaşım teşekkürler , devreyi bölüm dersim için İstanbul Üniversitesi Teknik Bilimler Meslek Yüksekokulu – Elektronik Haberleşme bölümünde kullanmayı düşünüyorum ve proteus da yeniyim +5 beslemeleri nasıl eklediğinizi merak ettim , teşekkürler
devrenin değişen halinin baskı devresini atabilir misiniz ?
Devreyi yaptım çok güzel oldu sorunsuz çalışıyor emekleriniz için teşekkür ederim…
Devreyi tamaladım fakat pıc entegreye nasıl yazlılım atılıyor bilmiyorum. Devre eksik gösteriyor ve sıcaklıktan etkilenmiyor
PIC’e yazılım atmayı bilmiyorsunuz ? ve Çalıştırdığınızda eksik gösteriyor.. Sizce bir anormallik yok mu ? PIC’e yazılımı yükleyin.
devre çok güzel çalıştı. 3.displeyi transistörle değil 330 ohm dirençle direk şaseye bağladım. diğer göstergelerin ortak uclarındaki direncleri kaldırıp göstergelerin girişlerine yani 74164 ile göstergelerin arasına 180 ohm luk 7 direnç bağladım. Emeği geçen arkadaşlara teşekkürler
Öncelikle devre çok güzel olmuş elinize sağlık.Ben devreyi yaptım fakat displayler 1.ve 2. display sönük yanıyor bu konu hakkında bilgi verirseniz sevinirim.Birde displayleri devreye takarken alttan 3.ve 5.bacağı iptal ediyoruz değil mi ?
Merhaba Görkem,
Displayler ile ilgili olabilir. imkanın varsa değiştirip deneyebilirsin.. besleme gerilimi zayıf olabilir. onuda kontrol edersin.. evet devrede kullanılmayan bacakları iptal ediyoruz.
Çok teşekkür ederim son olarak devredeki displayleri değiştirdim fakat çok sönük yanıyor bunun nedeni nedir? azda olsa belli oluyor fakat sönük yanıyor.
Sercan Allah senden razı olsun kardeşim devre çok süper oldu 2 tane 100 aldım sayende terkrardan Allah razı olsun..
Merhaba Sercan Arkadaş devreyi yaptım fakat 74HC164 ve 74LS164 piyasada bulamadım onun yerine HD74LS164P kullandım fakat devre faaliyet çalışma olmadı.
@Selo
Biraz geç gördüm kusura bakmayın.Kullanmış olduğunuz HD74LS164P 74LS164 ile aynıdır. Bu yönden bir sıkıntınızın olmaması gerekmektedir. Devrenizde diğer malzemelerde problem olabilir.
@Görkem
Kullanmış olduğunuz Displayler nedir ? özellikleri nelerdir.? sorun büyük ihtimal displaylerdedir.
sercan bu devre şeması ile baskı devre şeması birbirinden farklı … şemada olan elamanlar dan daha fazla eleman var baskı devrede ve isimleri okunmuyor
@Sinan
İsis çoğu şeyi varsaydığı için bazı elemanları şemaya koymak gereksizdir. temel gerekli olan elemanlar zaten şemada vardır. Dosyaları indirip Ares dosyasını açarsanız baskı devre üzerinden net olarak eleman listesini çıkartabilirsiniz.
sercan ben bu devreyi proje olarak yapıyorum jalv2 kodlamalarıyla ilgili aklıma bir kaç şey takıldı ben daha bu sene mplab ideprogramını kullanıyorum şimdi biz bu picler’e programı yüklerken ayrıca indirmemiz gereken bir program varmı yoksa mplab programına göre kodlar varmı bilgi verirsen sevinirim…
@fatih
hex kodunu vermiştim. herhangi bir PIC programlayıcı ile entegreye yükleyebilirsin. Ama jalv2 ile derlemek istiyorsan. o zaman Jaledit ve Jalv2 Compiler indirmelisin. birde tabi Jallib kütüphanelerini.
kardeşim ben 12f675` verdiğin hex dosyasını yüklemesi için arkadaşa verdim fakat arkadaşın yüklemek istediği yazılımda 12f675 yokmuş oda 579`a yükledim hata vermedi dedi devrenin çalışmasında bir sorun olurmu sence ?
@Fatih
12F675 ten başka olmaz. 12F675 alın ve ona yükleyin.
hayır anlamadın galiba pic’in modelini seçiyon ya bilgisayardaki program üzerinden orda 12f657 yoktu bende 579u seçip hex dosyasını ona yükledim oldu dedi yani devrede ben 12f675i kullanacağım..
@Fatih
sanırım 12F519 demek istedin zira 12F579 diye mikrodenetleyici yok. 12F675 için derlenmiş hex dosyasını vermiştim zaten. sigorta ayarları yazılımın içinde olduğu için harici yapmayın. yazılımı derlemeye filan gerek yok. düzenleme yapacaksanız derlersiniz.
Jallib içerisinde 12F675.jal var onu kullanın. Ama isis programı için diyorsanız 12F675 muhakkak var vardır. olmadı yeniden yükleyin.
arkadaş bana sadece 579 vardı onu yükledim dedi oda oldu zaten .hex dosyasını yüklemiş içine ama sadece 12F675 yoktu onun yerine 579’u seçip onu yükledim dedi yani hex dosyasının yüklenmesinde bir sorun yok sadece dediğim gibi pic e hex dosyasını atmadan önce sornuş 675 olmadığı için 579 u yüklemiş ve bu devrenin çalışmasını etkilermi tek sorun bu…
Kardeşim ben sana olayı tekrardan anlatayım benim devrede kullandığım pıc,12F675 bu pıce yazılımı yüklemeden önce bu pıc’e yazılım atmak için kullandığımız devrenin bilgisayardaki yazılımında soruyormuş ve ordada bizim devrede kullandığımız 12675 olmadığından 579 u seçip öyle yüklemiş hex dosyasını ve yükleme başarılı olmuş benim tek merak ettiğim bu şekilde devrenin çalışmasında bir sorun olurmu başka bir sorun yok devreyi teslim etmemede az kaldı
Denemeden cevap veremem. Deneyin ve sonucu paylaşın.
Selam Sercan kardeş Baskı devreyi PDF formatında yapılmış dosyayı direkt Bakır plakete aktarılacak mı yada ters çevirecek mi? Şimdiden teşekkürler.
merhaba devrede donanımsal(fiziksel) değişiklik yapmadan sadece yazılımı değiştirerek -9 ile 99 arası sıcaklık görebilirmiyiz böyle bir imkanımız varsa yardımcı olurmusunuz??
@cevat maalesef mümkün değildir.
merhaba sercan. devrede 30 45 arası ölçüm yapmak istiyorum. yazılım ve donanım olarak ne gibi değişiklikler yapmam gerekir? yardımcı olursan sevinirim. şimdiden teşekkürler.
devredeki kullanılmayacak alanı anlayamadım biraz acıklayabilir misiniz?
arkadaşım bir sorum olcaktı malzemelere yazmamışsın baskı devrede var tristör galiba onun kodunu(yani ürün adı) yazar mısınız?
teşekkür ederim devre sorunsuz çalışıyor performan ödevi olarak yaptım 100 aldım elinize sağlık..
chok teshekur…. Bulgaristandan…. elinize saglik.
serkan kardeş projeyi ödev projesi olarak aldım. Fakat baskı devreyi pdf formatındaki şeklinde mi bakır plaket basılacak yoksa ters olarak mı basılacak. Yardımınız teşekkürler.
sercan kardeş projeyi ödev projesi olarak aldım. Fakat baskı devreyi pdf
formatındaki şeklinde mi bakır plaket basılacak yoksa ters olarak mı
basılacak. Yardımınız teşekkürler.
Merhaba PIC12F675 ve LM35 Sensörlü Termometre Devresi Versiyon2 yaptım. Fakat devreye enerji +5v verdim. Fakat Displaylerde yanma olmadı ve pic düzgün bir şekilde programlandı ve besleme gerilimi ölçüldü +5 volt olduğu gözlemlendi. Ama devrede 7 segmentli displaylerde yanma olmadı ve Transistör olarak devre BC547 mont edildi. Yardımız için teşekkürler.
Anahtar arızalıdır.Anahtar kullanmadan yap öyle dene bence.
Yukarıdaki baskı devre doğrumu son halimi
doğru
Devreyi ikinci defa yaptım.Gayet güzel ama 2. yaptığım devrede sıcaklık değerleri örneğin 21-35-22-21-22-19 gibi sürekli değişiyor.Ne yapmalıyım?
kaç dc volt ile çalıştığını yazmamısnız ben yaptım kaç volt vermeliyim 🤔🤔🤔