Rangkaian lengkap Jam Digital ini terlihat pada gambar diatas, dilengkapi 6 buah seven segmen BCD untuk menampilkan waktu, terdiri atas angka-angka puluhan jam, satuan jam, puluhan menit, satuan menit, puluhan detik dan satuan detik. IC 74LS393 digunakan sebagai pewaktu Real Time Clock (RTC). Tombol SW1 dan SW2 dipakai untuk mengatur tampilan waktu, saat SW1 ditekan angka pada tampilan jam akan bertambah setiap detik, sedangkan SW2 dipakai untuk mengatur angka tampilan menit dengan cara yang sama. Kristal 11.0592MHz dan kapasitor C1 dan C2 membentuk rangkaian oscilator pembangkit frekuensi kerja ATmega8.
Perancangan Software
Perancangan software pada jam digital ini menggunakan bahasa C CodeVisionAVR. Yang perlu diperhatikan dalam pembuatan jam digital ini adalah bagaimana cara mensetting timer counter agar sesuai dengan kondisi waktu sebenarnya. Pada aplikasi ini memanfaatkan timer/counter1 mikrokontroler avr ATmega8.
Timer/counter1 (16bit)
Timer/counter 1 adalah sebuah timer/counter yang mempunyai kapasitas cacahan 16 bit (65535) baik pulsa internal maupun eksternal yang dilengkapi prescaler sumber clock hingga 10 bit (1024). Timer/counter 1 mempunyai 2 kelompok register :
1. Register Kerja
- TCNT1 = register pencacah/penghitung
- OCR1A = register pembanding A
- OCR1B = register pembanding B
- ICR1 = register penangkap isi TCNT1
2. Register Kontrol
Kombinasi TCCR1A dan TCCR1B untuk mengendalikan berbagai mode timertimer
Register-register timer/counter 1
Timer/Counter 1 Control Register A – TCCR1A
Timer/Counter 1 Control Register B – TCCR1B
Output Compare Register 1 A – OCR1A (OCR1AH dan OCR1AL)
Output Compare Register 1 B – OCR1B (OCR1BH dan OCR1BL)
Input Capture Register 1 – ICR1 (ICR1H dan ICR1L)
Timer/counter Interrupt Mask Register – TIMSK
Timer/Counter Interrupt Flag Register – TIFR
Pada dasarnya timer hanya menghitung pulsa clock. Frekuensi pulsa clock yang dihitung tersebut bisa sama dengan frekuensi crystal yang digunakan atau dapat diperlambat menggunakan prescaler dengan faktor 8, 64, 256 atau 1024.
Perhitungan waktu Timer/Counter 16 bit
Contoh :
Diinginkan sebuah timer 16 bit bekerja selama 0,5 detik, dengan frekuensi clock sebesar 11,0592 Mhz dan presecaller 1024. Tentukan nilai TCNT?
Jawab
Jadi, TCNT1H = EAh dan TCNT1L = E8h
Download : Source Code (CodeVisionAVR) | Skema Rangkaian Jam (Isis Proteus) | Layout PCB
Password WinRar : iarifw
mas, bisa di lampirkan ga source codenya :)
BalasHapussudah ada mas tinggal download
Hapusga paham mas aq...
BalasHapusdaftar komponennya di share dong mas :) makasi
BalasHapusmas ko dimintai password pas mau unrar nya? password nya apa?
BalasHapusterima kasih
tertulis di atas mas
HapusMas boleh minta bantuan gak? Sya punya program LED nyala di PORT B sesuai dengan tombol di PORT D
BalasHapusif(PIND.0 == 0)
PORTB = 0B00000001;
If(PIND.1 == 0)
PORTB = 0B00000010;
dst....
Pengen dimodifikasi supaya penekanan tombolnya berurutan.
1. PIND.0
2. PIND.1
3. PIND.2
dst.....
Jadi apabila PIND.1 ditekan maka gak aktif karena harus menekan dulu PIND.0 .
Program diatas kan sembarang tombol juga aktif. Saya minta bantuan supaya penekanan tombol bisa berurutan.
Saya masih belajar...
Terima kasih.
mas tolong kirimkan PCB file EAGLE nya mas ke rokhadinnopianto@yahoo.co.id
BalasHapusmas bisa minta tolong sebutin komponen yang dibutuhin apa aja gak mas?
BalasHapusterimakasih
mas tolong kirimkan juga PCB file EAGLE nya mas ke www.rahmadd@gmail.com
BalasHapusmas tolong kirimkan juga PCB file EAGLE nya mas ke abdulwaht73gmail.com
BalasHapusKomentar ini telah dihapus oleh pengarang.
BalasHapusmas ada yang pake bascom ?
BalasHapusklo ada kirim ke andriwiyana96@gmail.com
gan, kok detiknya sampai 80 detik, harusnya 60 terus ke 0 lg, mohon pencerahannya gan. kalo boleh minta source code code visionnya gan
BalasHapuskalo mau nyari komponen 7 segmennya gmn ya mas,kan 7 segment kaklinya 8 pin, disitu 4 pin?mohon pencerahannya
BalasHapusada file eagle brd dan sch rangkaian nya gak gan?gk sesuai komponen dgn letak jalurnya
BalasHapus