de KITS
Application Note
AN34 – Jam Pasir Digital Oleh: Tim IE & Sandy Hosen (U.K. Petra)
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. De KITS Serial RTC & EEPROM
DT-51 MinSys ver 3.0
LED De KITS SPC Alphanumeric Display
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.
Page 1 of 11
Application Note AN34
Gambar 3. Skematik Jam Pasir Digital Page 2 of 11
Application Note AN34
Ke I2C Alphanumeric Ke Serial RTC & EEPROM
J2
J1
Ke DT-51 MinSys
Power Supply Alphanumeric Display Power Supply RTC Ke GND DT-51 MinSys 9V AC
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 SCL / Pin 15 SDA / Pin 16
Jam Pasir Digital J1 J1 - Pin 2 (SCL) J1 - Pin 1 (SDA)
Tabel 1. Hubungan Jam Pasir Digital dengan de KITS SPC Alphanumeric Display
Page 3 of 11
Application Note AN34
Hubungan antara Jam Pasir Digital dan de KITS Serial RTC & EEPROM sebagai berikut: de KITS Serial RTC & EEPROM CLK D CS
Jam Pasir Digital J2 J2 – Pin 3 (CLK) J2 – Pin 2 (D) 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 Header 8 x 2 Keterangan 1 J1 (Scan B1) 2 J1 (Scan B2) 3 J1 (Scan B3) 4 J1 (Scan B4) 5 J1 (Scan B5) 6 7 8 9 J1 (Scan B6) 10 J1 (Scan B7) 11 J1 (Scan B8) 12 J1 (Scan B9) 13 J1 (Scan B10) 14 15 16 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
J2 (Data 1) J2 (Data 2) J2 (Data 3) J2 (Data 4) J2 (Data 5) J2 (CLK) J2 (D) J2 (Tombol Enter) J2 (CS) J2 (Tombol Down) J2 (Tombol Up) J2 (SCL) J2 (SDA)
DT-51 MinSys Konektor & Pin Keterangan Port A & Port B Pin 1 PA0 Port A & Port B Pin 2 PA1 Port A & Port B Pin 3 PA2 Port A & Port B Pin 4 PA3 Port A & Port B Pin 5 PA4 Port A & Port B Pin 6 PA5 Port A & Port B Pin 7 PA6 Port A & Port B Pin 8 PA7 Port A & Port B Pin 9 PB0 Port A & Port B Pin 10 PB1 Port A & Port B Pin 11 PB2 Port A & Port B Pin 12 PB3 Port A & Port B Pin 13 PB4 Port A & Port B Pin 14 PB5 Port A & Port B Pin 15 PB6 Port A & Port B Pin 16 PB7 Port C & Port 1 Pin 1 Port C & Port 1 Pin 2 Port C & Port 1 Pin 3 Port C & Port 1 Pin 4 Port C & Port 1 Pin 5 Port C & Port 1 Pin 6 Port C & Port 1 Pin 7 Port C & Port 1 Pin 8 Port C & Port 1 Pin 9 Port C & Port 1 Pin 10 Port C & Port 1 Pin 11 Port C & Port 1 Pin 12 Port C & Port 1 Pin 13 Port C & Port 1 Pin 14 Port C & Port 1 Pin 15 Port C & Port 1 Pin 16
PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7 P10 P11 P12 P13 P14 P15 P16 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 4 of 11
Application Note AN34
Algoritma pemrograman Jam Pasir Digital dapat digambarkan dalam suatu flowchart, seperti pada gambar 5-10. Start
Init PPI Matikan Display Jam Pasir
ISR Timer 1
Init Timer 1 mode 1 Reset variabel yg digunakan
Reset RTC & EEPROM
B
Baca jam, menit, detik dari RTC
Tampilkan jam, menit, detik pd Alphanumeric Display F Sesuaikan posisi frame dgn detik sekarang
Set Timer 1
Y
Ada penekanan tombol enter utk setting jam ?
A N R6 = 100 ms ?
Y
Perbaharui nilai detik pd Alphanumeric Display
N Variabel www = 500 ms ?
Y
Perbaharui nilai menit pd Alphanumeric Display
Y
Perbaharui nilai jam pd Alphanumeric Display
N Variabel QQQ = 500 ms ? N
Gambar 5. Flowchart Program Utama Page 5 of 11
Application Note AN34
A
CLR Timer 1
Tampilan jam pd Alphanumeric Display bekedip
Ada penekanan tombol enter untuk setting menit?
Y
Sesuaikan nilai jam pd RTC dgn nilai jam pd Alphanumeric Display C
N
Ada penekanan tombol up?
Y Y
Tambahkan 1 pd variabel jam
Variabel jam = 24?
Jam = 00
N
Perbaharui jam pd Alphanumeric Display
N
Ada penekanan tombol down?
N
Y
Kurangkan 1 pd variabel jam
Variabel jam = 00? Y
N
Jam = 23
Gambar 6. Flowchart Pengaturan Jam
Page 6 of 11
Application Note AN34
C
Tampilan menit pd Alphanumeric Display bekedip
Ada penekanan tombol enter untuk setting detik?
Y
Sesuaikan nilai menit pd RTC dgn nilai menit pd Alphanumeric Display
N
Ada penekanan tombol up?
Y
Y
Tambahkan 1 pd variabel menit
Variabel menit = 60?
Menit = 00
N
Perbaharui menit pd Alphanumeric Display
N
Ada penekanan tombol down?
N
D
Y
Kurangkan 1 pd variabel menit
Variabel menit = 00?
Y
N
Menit = 59
Gambar 7. Flowchart Pengaturan Menit
Page 7 of 11
Application Note AN34
D
Tampilan detik pd Alphanumeric Display bekedip
Ada penekanan tombol enter untuk keluar setting?
Y
Sesuaikan nilai detik pd RTC dgn nilai detik pd Alphanumeric Display
N
Ada penekanan tombol up?
Y
Y
Tambahkan 1 pd variabel detik
Variabel detik = 60?
Detik = 00
N
Perbaharui detik pd Alphanumeric Display
N
Ada penekanan tombol down?
N
E
Y
Kurangkan 1 pd variabel detik
Variabel detik = 00?
Y
N
Detik = 59
Gambar 8. Flowchart Pengaturan Detik
Page 8 of 11
Application Note AN34
E
Variabel detik dibagi (div) dengan 3
R3 = sisa, Sisa waktu untuk 1 frame
Y
Hasil bagi = 5h/6h/7h/8h?
Kurangkan hasil bagi dengan 2
N
Kalikan hasil dengan 10
Variabel cek = hasil, untuk memilih posisi frame ke-n
F Y
Hasil bagi = Ah/Bh/Ch/Dh?
Kurangkan hasil bagi dengan 4
N
Hasil bagi = 10h/11h/12h /13h?
Y
Kurangkan hasil bagi dengan 6
Y
Kurangkan hasil bagi dengan 8
Y
Kurangkan hasil bagi dengan 10
N
Hasil bagi = 15h/16h/17h /18h?
N
Hasil bagi = 1Ah/1Bh/1C h/1Dh?
N
Gambar 9. Flowchart Penyesuaian antara Detik RTC dengan Frame Jam Pasir yang akan Ditampilkan pd Display
Page 9 of 11
Application Note AN34
B
CLR Timer 1
Posisi nyala dari jam pasir “0”?
N
Y
Matikan display jam pasir
Matikan display jam pasir
Scanning display jam pasir dari atas ke bawah
Scanning display jam pasir dari bawah ke atas
Apakah frame ke-n sudah tiga detik?
N
N
Y
Apakah frame ke-n sudah tiga detik?
Y
Masukkan frame ke (n+1)
Masukkan frame ke (n+1)
Apakah sudah frame terakhir?
N
N
Y
Apakah sudah frame terakhir?
Y
Set variabel TandaB, reset variabel yg bersangkutan
Set variabel TandaB, reset variabel yg bersangkutan
Isi ulang Timer 1
Set TR1
RETI
Gambar 10. Flowchart Interrupt Service Routine Timer 1 Page 10 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.
Listing program terdapat pada AN34.ZIP. Selamat berinovasi!
Page 11 of 11
Application Note AN34