Friday, March 18, 2011

Termometer LED Digital Berbasis Interface I2C

Aplikasi ini digunakan untuk menampilkan suhu pada tampilan 3×7-segmen, suhu yang diukur antara -9,5 hingga 99 derajat Celsius dengan kenaikan 0,5 derajat Celcius, atau dari 0 hingga 210 derajat Fahrenheit dengan kenaikan 1,0 derajat. Aplikasi ini menggunakan 7-segmen agar bisa dilihat dalam kondisi gelap atau malam hari.

Emping TCN75 dari MicroChip digunakan sebagai sensor suhu. TCN75 menggunakan antaramuka serial 2 kabel (2-wire serial interface) atau yang lebih dikenal dengan I2C, yang merupakan bus dwi-arah dengan kecepatan hingga 400kbps, 8 (delapan) piranti yang sama bisa dikendalikan melalui bus ini. Pada artikel aplikasi ini hanya sebuah piranti saja yang terhubungkan ke mikrokontroler ATTiny2313. TCN75 juga memiliki termostat terprogram yang terintegrasi, yang dalam aplikasi ini tidak digunakan.


Perangkat Keras

MIkrokontroler ATTiny2313 digunakan untuk mengendalikan antarmuka I2C dengan TCN75 dan mengkonversi informasi suhu agar ditampilkan ke 3×7-segmen.Pembacaan suhu dari TCN75 dilakukan setiap 3 detik. Sebuah resonator keramik digunakan untuk memberikan detak mikrokontroler.

Tampilan 3×7-segmen yang digunakan adalah tipe common cathode atau komon katoda, masing-masing katoda dihubungkan ke sebuah transistor untuk menguatkan arus (lihat skemanya). Transistornya merupakan tipe NPN dan dikendalikan melalui mikrokontroler AVR ATTiny2313. Masing-masing segmen pada 7-segmen dihubungkan ke pin mikrokontroler melalui sebuah resistor 200 ohm untuk membatasi arus dari port ATTiny2313. Multipleks 3×7-segmen dilakukan melalui perangkat lunak. Masing-masing 7-segmen ditahan menyala selama 5mili-detik.

Berikut ini merupakan rangkaian termometer LED Digital.Rangkaian membutuhkan catu daya teregulasi 5 VDC dan membutuhkan arus sekitar 50mA. Anda bisa mengganti dengan baterei 1,5 volt, hanya saja kecerahan LED menjadi berukurang.

Perangkat Lunak

Program ditulis dalam bahasa pemrograman BASCOM-AVR. Programnya sendiri hanya berukuran sekitar 1kB (dari 2kB kapasitas memori flash-nya ATTiny2313). Ada dua program yang berbeda yang bisa Anda gunakan, untuk pembacaan Celcius dan untuk pembacaan Fahrenheit. BASCOM merupakan bahasa pemrograman mikrokontroler AVR yang berbasis pada bahasa BASIC. BASCOM memiliki perintah khusus yang digunakan untuk antarmuka I2C.

1 comment:

  1. sobat minta program nya dong,,,
    maklum masih awam ma yang beginian...
    dan skemanya tolong di perjelas dong,,,
    so masig bingung..


    e_mail
    stk4017@gmail.com

    ReplyDelete