Jam Pasir Digital dapat dibuat dengan berbagai macam model rangkaian elektronik. Salah satu model yang dapat digunakan untuk membuat Jam Pasir Digital adalah dengan DT-51 Minimum System Ver 3.0, de KITS Serial RTC & EEPROM (K2), de KITS Alphanumeric Display (K7) dan Jam Pasir Digital serta beberapa tombol untuk mengatur jam, menit, detik. Modul-modul yang digunakan adalah: - 1 buah DT-51 Minimum System Ver 3.0 - 1 buah de KITS SPC Serial RTC & EEPROM (K2) - 1 buah de KITS SPC Alphanumeric Display (K7) - 32 buah LED - 10 buah Transistor 9012 (PNP) - 5 buah Transistor 9013 (NPN) - 32 buah Resistor 150 ohm - 10 buah Resistor 2K2 ohm - 5 buah Resistor 10K oh - 1 buah Kapasitor 1000uF/16v - 1 buah Kapasitor 100uF/16v - 1 buah 7805CT - 4 buah diode IN4002
Adapun blok diagram sistem terdapat pada gambar 1 dengan rangkaian terdapat pada gambar 2 dan 3.
Gambar 1. Skematik Catu Daya
Gambar 2. Skematik Catu Daya
Adapun penggunaan catu daya adalah untuk menyediakan arus bagi rangkaian Jam Pasir Digital karena rangkaian tersebut tidak menggunakan catu daya pada DT-51 MinSys.
De KITS Serial RTC & EEPROM DT-51 MinSys ver 3.0 De KITS SPC Alphanumeric Display LED Page 2 of 11 Application Note AN34
Gambar 3. Skematik Jam Pasir Digital Page 3 of 11 Application Note AN34
Ke DT-51 MinSys Ke GND DT-51 MinSys Power Supply RTC Power Supply Alphanumeric Display Ke I2C Alphanumeric Ke Serial RTC & EEPROM 9V AC J2 J1
Gambar 4. Cara Menghubungkan Modul DT-51 MinSys, de KITS Serial RTC & EEPROM, de KITS SPC Alphanumeric Display dengan Jam Pasir Digital
Hubungan antara Jam Pasir Digital dan de KITS SPC Alphanumeric Display adalah sebagai berikut:
de KITS SPC Aplhanumeric Display Jam Pasir Digital J1 SCL / Pin 15 J1 - Pin 2 (SCL) SDA / Pin 16 J1 - Pin 1 (SDA)
Tabel 1. Hubungan Jam Pasir Digital dengan de KITS SPC Alphanumeric Display
Page 4 of 11 Application Note AN34
Hubungan antara Jam Pasir Digital dan de KITS Serial RTC & EEPROM sebagai berikut: de KITS Serial RTC & EEPROM Jam Pasir Digital J2 CLK J2 Pin 3 (CLK) D J2 Pin 2 (D) CS J2 Pin 1 (CS)
Tabel 2. Hubungan Jam Pasir Digital dengan de KITS Serial RTC & EEPROM
Hubungan antara DT-51 MinSys Ver 3.0 dan Jam Pasir Digital sebagai berikut: Jam Pasir Digital DT-51 MinSys Header 8 x 2 Keterangan Konektor & Pin Keterangan 1 J1 (Scan B1) Port A & Port B Pin 1 PA0 2 J1 (Scan B2) Port A & Port B Pin 2 PA1 3 J1 (Scan B3) Port A & Port B Pin 3 PA2 4 J1 (Scan B4) Port A & Port B Pin 4 PA3 5 J1 (Scan B5) Port A & Port B Pin 5 PA4 6 - Port A & Port B Pin 6 PA5 7 - Port A & Port B Pin 7 PA6 8 - Port A & Port B Pin 8 PA7 9 J1 (Scan B6) Port A & Port B Pin 9 PB0 10 J1 (Scan B7) Port A & Port B Pin 10 PB1 11 J1 (Scan B8) Port A & Port B Pin 11 PB2 12 J1 (Scan B9) Port A & Port B Pin 12 PB3 13 J1 (Scan B10) Port A & Port B Pin 13 PB4 14 - Port A & Port B Pin 14 PB5 15 - Port A & Port B Pin 15 PB6 16 - Port A & Port B Pin 16 PB7
1 J2 (Data 1) Port C & Port 1 Pin 1 PC0 2 J2 (Data 2) Port C & Port 1 Pin 2 PC1 3 J2 (Data 3) Port C & Port 1 Pin 3 PC2 4 J2 (Data 4) Port C & Port 1 Pin 4 PC3 5 J2 (Data 5) Port C & Port 1 Pin 5 PC4 6 - Port C & Port 1 Pin 6 PC5 7 - Port C & Port 1 Pin 7 PC6 8 - Port C & Port 1 Pin 8 PC7 9 J2 (CLK) Port C & Port 1 Pin 9 P10 10 J2 (D) Port C & Port 1 Pin 10 P11 11 J2 (Tombol Enter) Port C & Port 1 Pin 11 P12 12 J2 (CS) Port C & Port 1 Pin 12 P13 13 J2 (Tombol Down) Port C & Port 1 Pin 13 P14 14 J2 (Tombol Up) Port C & Port 1 Pin 14 P15 15 J2 (SCL) Port C & Port 1 Pin 15 P16 16 J2 (SDA) Port C & Port 1 Pin 16 P17 Tabel 3. Hubungan DT-51 MinSys dengan Jam Pasir Digital
Setelah semua modul saling terhubung dan diberi sumber tegangan, download-lah Pasir.HEX.
Page 5 of 11 Application Note AN34
Algoritma pemrograman Jam Pasir Digital dapat digambarkan dalam suatu flowchart, seperti pada gambar 5-10.
Gambar 5. Flowchart Program Utama Start Init PPI Matikan Display Jam Pasir Reset RTC & EEPROM Init Timer 1 mode 1 Reset variabel yg digunakan Baca jam, menit, detik dari RTC Tampilkan jam, menit, detik pd Alphanumeric Display Sesuaikan posisi frame dgn detik sekarang Set Timer 1 F Ada penekanan tombol enter utk setting jam ? A Y R6 = 100 ms ? N Y N Perbaharui nilai detik pd Alphanumeric Display Variabel www = 500 ms ? Y N Perbaharui nilai menit pd Alphanumeric Display Variabel QQQ = 500 ms ? Y N Perbaharui nilai jam pd Alphanumeric Display ISR Timer 1 B Page 6 of 11 Application Note AN34
A CLR Timer 1 Tampilan jam pd Alphanumeric Display bekedip Ada penekanan tombol enter untuk setting menit? Y N Sesuaikan nilai jam pd RTC dgn nilai jam pd Alphanumeric Display C Ada penekanan tombol up? Y N Tambahkan 1 pd variabel jam Variabel jam = 24? Jam = 00 Ada penekanan tombol down? Y N Kurangkan 1 pd variabel jam Variabel jam = 00? Jam = 23 Y N Y N Perbaharui jam pd Alphanumeric Display
Gambar 6. Flowchart Pengaturan Jam
Page 7 of 11 Application Note AN34
C Tampilan menit pd Alphanumeric Display bekedip Ada penekanan tombol enter untuk setting detik? Y N Sesuaikan nilai menit pd RTC dgn nilai menit pd Alphanumeric Display D Ada penekanan tombol up? Y N Tambahkan 1 pd variabel menit Variabel menit = 60? Menit = 00 Ada penekanan tombol down? Y N Kurangkan 1 pd variabel menit Variabel menit = 00? Menit = 59 Y N Y N Perbaharui menit pd Alphanumeric Display
Gambar 7. Flowchart Pengaturan Menit
Page 8 of 11 Application Note AN34
D Tampilan detik pd Alphanumeric Display bekedip Ada penekanan tombol enter untuk keluar setting? Y N Sesuaikan nilai detik pd RTC dgn nilai detik pd Alphanumeric Display E Ada penekanan tombol up? Y N Tambahkan 1 pd variabel detik Variabel detik = 60? Detik = 00 Ada penekanan tombol down? Y N Kurangkan 1 pd variabel detik Variabel detik = 00? Detik = 59 Y N Y N Perbaharui detik pd Alphanumeric Display
Gambar 8. Flowchart Pengaturan Detik
Page 9 of 11 Application Note AN34
Gambar 9. Flowchart Penyesuaian antara Detik RTC dengan Frame Jam Pasir yang akan Ditampilkan pd Display
E Variabel detik dibagi (div) dengan 3 R3 = sisa, Sisa waktu untuk 1 frame Hasil bagi = 5h/6h/7h/8h? Y N Hasil bagi = Ah/Bh/Ch/Dh? Y N Hasil bagi = 10h/11h/12h /13h? Y N Kurangkan hasil bagi dengan 2 Kalikan hasil dengan 10 Variabel cek = hasil, untuk memilih posisi frame ke-n F Kurangkan hasil bagi dengan 4 Kurangkan hasil bagi dengan 6 Hasil bagi = 15h/16h/17h /18h? Y N Kurangkan hasil bagi dengan 8 Hasil bagi = 1Ah/1Bh/1C h/1Dh? Y N Kurangkan hasil bagi dengan 10 Page 10 of 11 Application Note AN34
Gambar 10. Flowchart Interrupt Service Routine Timer 1 B CLR Timer 1 Posisi nyala dari jam pasir 0? Y N Matikan display jam pasir Scanning display jam pasir dari atas ke bawah Apakah frame ke-n sudah tiga detik? Y N Masukkan frame ke (n+1) Apakah sudah frame terakhir? Y N Set variabel TandaB, reset variabel yg bersangkutan Matikan display jam pasir Scanning display jam pasir dari bawah ke atas Apakah frame ke-n sudah tiga detik? Y N Masukkan frame ke (n+1) Apakah sudah frame terakhir? Y N Set variabel TandaB, reset variabel yg bersangkutan Isi ulang Timer 1 Set TR1 RETI Page 11 of 11 Application Note AN34
PENJELASAN SINGKAT
1. Scanning display Jam Pasir menggunakan teknik interrupt. 2. Pada Jam Pasir Display terdapat tiga tombol yang dapat digunakan untuk mengatur jam, menit, dan detik. Dimana masing-masing tombol mempunyai fungsi, yaitu: - Tombol Enter, penekanan tombol enter yang pertama kali akan membuat jam dapat diatur. Penekanan tombol enter kedua kalinya akan mencocokkan jam dengan RTC dan membuat menit dapat diatur. Penekanan tombol enter ketiga kalinya akan mencocokkan menit dengan RTC dan membuat detik dapat diatur. Penekanan tombol enter keempat kalinya maka detik di cocokkan dengan RTC. - Tombol UP, tombol up akan berfungsi pada saat jam, menit dan detik diatur. Jika ditekan maka tombol up akan membahkan satu nilai pada jam atau menit atau detik tergantung mana yang sedang diatur. - Tombol Down, tombol down akan berfungsi pada saat jam, menit dan detik diatur. Jika ditekan maka tombol down akan memgurangi satu nilai pada jam atau menit atau detik tergantung mana yang sedang diatur. 3. Jika terjadi pengaturan detik maka jam pasir display akan melakukan penyesuaian pada frame yang akan ditampilkan pada jam pasir display dengan waktu detik pada saat diatur.