Dijital sıcaklık Sensörü
Öncelikle onların genourous yardım için Electro Tech Forum gelen İngiliz göçmen ve Mike, K8LH teşekkür etmek istiyorum. Bu tarihe kadar en zorlu projesi olmuştur ve son derece yardımcı oldu. Onlar beni Assembly dili programlama hakkında çok değerli dersler öğretti var gerçekten bu proje kalkarken ve çalışan beni assitsted vardır.
Not: Ben kendi kod bazı pasajları bu programda kullanılan bir noktayı hatırlatmak istiyorum. Ben onların izniyle kullanmış ve kod yerleştirilen herhangi bir telif hakkı veya isim tanıma dikkat ediniz. Eğer kod onların parçacıklarını kullanmak isterseniz, Elektro-Teknik-Online forum aracılığıyla irtibata geçiniz.
Nasıl Çalışır
DS18B20 bir kontrol sinyali kullanılarak otobüs iletişim uygular Maxim özel 1-Wire otobüs protokolünü kullanarak sensör doğrudan-dijital sıcaklıktır. ilgili donanım için, bu özel sensör özellikle arayüz kolaydır. Sadece 1 harici pull-up direnci olarak muhtemelen direnç ve op-amp gibi birden fazla harici bileşenler gereken bir analog sensör karşı faaliyet gerektirir.
Mikroişlemci kurulum sonra, o DS18B20 Isı Sensörü ile iletişim başlar. Iletişim rutinleri program hafızası yarısından biraz azını kaplar. sıcaklık elde edildikten sonra ve RAM’de saklanan, Mikroişlemci 12-bit / fraksiyon tam sayı alır ve sonra RAM dört genel amaçlı yazmaç içinde depolayan bir ondalık sayı dönüştürür.
Örneğin, D’95 .8 ‘numara alır. Bu gibi saklanır:
Hunlar = 8 = 5 onda kayıt = 9 olanlar kayıt = 0 TENS, kayıt,
Bu kayıtlar daha sonra görüntü veri elde etmek için bir masa aramak için Interrupt Service Rutin içinde kullanılır.
Program biraz üzerinde bir kez 1 saniyede ekranda sıcaklık güncelleme, sürekli çalışır.
Özellikleri Özeti:
- Sıcaklık verileri birden fazla saniyede toplandı.
- TIMER 2 kesme sürülen görüntüler.
- Programı genişleyebilen aynı 1-Wire otobüste çoklu sensör dahil etmek.
- 127,9 Derece Santigrat – -55,0 Sıcaklık aralığı.
Cihaz hakkında ayrıntılı bilgi için DS18B20 Datasheet bakın.
Video
Parça Listesi
Miktar | Şematik Designator | |
Yarıiletkenlerde | ||
Dallas DS18B20 Dijital Sıcaklık Sensörü | 1 | U2 |
PIC16F628A (627A veya 648A kullanabilirsiniz) | 1 | U1 |
(Ortak Katot) 7 Segment LED | 4 | D1 – D4 |
BC548 NPN Transistör | 4 | Q1 – Q4 |
Dirençleri | ||
330Ω | 1 | R12 |
470Ω | 7 | R5 – R11 |
4.7KΩ | 1 | R13 |
10KΩ | 4 | R1 – R4 |
Kapasitörler | ||
0,1 μF Seramik Multilayer | 2 | C1 – C2 |
Donanım | ||
Breadboard | 1 | |
Jumper Teller | Sayısız |