72681707 jam-digital-at-mega-16

23
PROPOSAL PERENCANAAN DAN FABRIKASI RANGKAIAN ELEKTRONIKA Pemanfaatan mcu atmega sebagai jam digital dengan fasilitas alarmDisusun oleh: ANAS AMINULLAH (02) CAMELIA ARIZONA (08) DICHA DESI ANINDA (09) GANJAR GANDHI S (10) 2A / KELOMPOK 4 PROGRAM STUDI TEKNIK TELEKOMUNIKASI POLITEKNIK NEGERI MALANG 2011

Transcript of 72681707 jam-digital-at-mega-16

PROPOSAL

PERENCANAAN DAN FABRIKASI RANGKAIAN ELEKTRONIKA

”Pemanfaatan mcu atmega sebagai jam digital dengan fasilitas alarm”

Disusun oleh:

ANAS AMINULLAH (02)

CAMELIA ARIZONA (08)

DICHA DESI ANINDA (09)

GANJAR GANDHI S (10)

2A / KELOMPOK 4

PROGRAM STUDI TEKNIK TELEKOMUNIKASI

POLITEKNIK NEGERI MALANG

2011

ii

DAFTAR ISI

Daftar isi ii

BAB I PENDAHULUAN 1

1.1. Latar Belakang 1

1.2. Rumusan Masalah 1

1.3. Batasan Masalah 2

1.4. Manfaat 2

BAB II LANDASAN TEORI 3

2.1. JAM DIGITAL 3

2.2. COUNTER / PENCACAH DIGITAL 4

2.3. MIKROKONTROLLER 5

2.4. ATMEGA 16 6

2.5. SEVEN SEGMEN 8

2.6. ALARM 9

BAB III PERENCANAAN 10

3.1. Gambar rangkaian 10

3.2. Listing program 10

3.3. Perhitungan arus power supply 15

3.4. Pembuatan jalur rangkaian 16

3.5. Penyablonan 17

BAB IV METODOLOGI 18

4.1. Pengumpulan Teori 19

4.2. Pemahaman Teori 19

4.3. Perencanaan 19

4.4. Pembuatan Program 19

4.5. Simulasi 19

4.6. Fabrikasi 20

4.7. Pengetesan 20

DAFTAR PUSTAKA 21

1

BAB I

PENDAHULUAN

1.1. Latar Belakang

Pada era sekarang ini kebanyakan barang – barang elektronik dalam

penerapannya menggunakan prinsip – prinsip logika atau yang dinamakan prinsip

digital, dengan semakin maju cara berfikir kita, semakin bermacam - macam pula

variasi suatu barang elektronika yang memanfaatkan prinsip rangkaian logika atau

digital ini. Sehingga sekarang tidak menutup kemungkinan jika dimana – mana

menemukan bermacam – macam alat yang memanfaatkan fungsi tersebut.

Berdasarkan fakta diatas, maka kami ingin membuat suatu rangkaian

sederhana yang memanfaatkan prinsip kerja rangkaian logika atau digital, lebih

jelasnya kami mencoba mempraktekan teori yang sebelumnya telah kami dapatkan

kedalam bentuk sebuah rangkaian yaitu jam digital.

Jam digital merupakan perangkat elektronik yang sangat sederhana atau

sudah terlalu umum, tapi dari jam digital dapat dipelajari prinsip-prinsip dasar control

dengan mikrokontroler, antara lain sitem tampilan 7 ruas dan pemakaian timer.

Jam digital umumnya menggunakan 50 atau 60 hertz osilator AC atau kristal

osilator seperti dalam jam kuarsa untuk menjalankannya. Kebanyakan jam digital

menampilkan jam dalam format hari 24 jam, di Amerika dan beberapa negara lain

menggunakan pewaktu dalam format 12 jam dengan indikasi pembeda "AM" atau

"PM".

Jam elektronika digital yang terdiri dari pencacah yang merupakan komponen

terpenting dari sistem jam digital. Kebanyakan jam menggunakan daya frekuensi

jala-jala 60 Hz sebagai masukannya. Frekuensi ini dibagi menjadi detik, menit dan

jam oleh bagian pembagi frekuensi dari jam tersebut. Kemudian pulsa satu-per-detik,

satu-per-menit, dan satu-per-jam dihitung dan disimpan dalam akumulator pencacah

jam tersebut. Selanjutnya isi akumulator pencacah (detik, menit, jam) yang tersimpan

didekode, dan waktu yang tepat ditayangkan pada tayangan waktu keluaran. Jam

digital mempunyai elemen sistem khusus. Pengolahan terjadi pada pembagi

frekuensi, akumulator pencacah.

1.2. Rumusan Masalah

1.2.1. Bagaimana membuat jam digital dengan menggunakan mikrokontroler.

1.2.2. Bagaimana program mikrokontroler dalam pembuatan jam digital.

2

1.3. Batasan Masalah

1.3.1. Pembuatan dengan menggunakan IC mikrokontroler atmega.

1.3.2. Jam digital ditampilkan dengan seven segment.

1.4. Manfaat

Jam digital yang dibuat digunakan untuk menunjukkan waktu dalam

kehidupan sehari-hari.

3

BAB II

LANDASAN TEORI

2.1. JAM DIGITAL

Jam elektronika digital yang terdiri dari pencacah yang merupakan komponen

terpenting dari sistem jam digital. Gambar (1) merupakan diagram blok sederhana

suatu sistem jam digital. Kebanyakan jam menggunakan daya frekuensi jala-jala 60 Hz

sebagai masukannya. Frekuensi ini dibagi menjadi detik, menit dan jam oleh bagian

pembagi frekuensi dari jam tersebut. Kemudian pulsa satu-per-detik, satu-per-menit,

dan satu-per-jam dihitung dan disimpan dalam akumulator pencacah jam tersebut.

Selanjutnya isi akumulator pencacah (detik, menit, jam) yang tersimpan didekode, dan

waktu yang tepat ditayangkan pada tayangan waktu keluaran. Jam digital mempunyai

elemen sistem khusus. Masukannya berupa arus bolak-balik 60 Hz. Pengolahan

terjadi pada pembagi frekuensi, akumulator pencacah, dan bagian pendekode.

Gambar 1. Blok diagram jam digital

Gambar 2. Blok diagram cara kerja jam digital

4

Penyimpanan terjadi pada akumulator. Bagian kendali barupa kendali set-waktu

seperti pada gambar (2). Telah disebutkan bahwa semua sistem terdiri atas gerbang

logika, flip-flop, dan subsistem. Diagram pada gambar (2) memperlihatkan bagaiman

subsistem diorganisasikan sampai menampilkan waktu dalam jam, menit, detik. Ini

merupakan diagram jam digital yang lebih terinci. Masukan berupa sinyal 60 Hz. 60 Hz

dibagi 60 oleh pembagi frekuensi pertama. Keluaran rangkaian pembagi ini berupa

pulsa 1 per detik. Pulsa 1 per detik dimasukkan ke pencacah naik yang mencacah

naik dari 00 sampai 59 dan reset 00. Kemudian pencacah detik didekode dan

ditayangkan pada 7segmen.

Perhatikan rangkaian pembagi frekuensi tengah pada gambar (2). Masukan pada

rangkaian ini berupa pulsa1 per detik. Keluarannya berupa pulsa 1 per menit.

Keluaran pulsa 1 per menit dipindah ke pencacah menit 0 - 59. Pencacah naik ini

mengawasi jumlah menit dari 00 sampai 59 dan reset menjadi 00. Keluaran

akumulator pencacah menit didekode dan ditayangkan pada dua 7-segmen di sebelah

atas tengah gambar (2).

Memperhatikan rangkaian pembagi 60 di sebelah kanak gambar (2). Masukan pada

pembagi frekuensi ini adalah pulsa 1 per menit. Keluaran rangkaian ii adalah pulsa 1

per jam. Keluaran pulsa 1 per jam dipindah ke pencacah jam di sebelah kiri.

Akumulator pencacah jam ini mengawasi jumlah jam dari 0 sampai 23. keluaran

akumulator jam didekode dan dipindahkan kedua penayang 7-segmen pada kiri atas

gambar (2). Kita telah perhatikan bahwa rangkaian tersebut sudah berupa suatu jam

digital 24-jam. Rangkaian tersebut dapat diubah dengn mudah menjadi jam 12-jam

dengan menukar akumulator pencacah 0 sampai 23 menjadi pencacah 0 sampai 11.

2.2. COUNTER / PENCACAH DIGITAL

Pencacah digital adalah sekumpulan FF yang berubah keadaan keluarannya dalam

merespon pulsa-pulsa yang diberikan pada masukannya. Susunan beberapa FF

tersebut menghasilkan bilangan biner ekivalen dari jumlah pulsa total yang diberikan

pada saat itu.

Pencacah banyak digunakan pada sistem digital, diantaranya sebagai penghitung

pulsa, pembagi frekuensi, pewaktu, penunda waktu dan sebagainya. Berdasarkan

Clock yang diberikan pada FF, maka Pencacah dikelompokkan menjadi Pencacah

tidak serempak (Asynchronous) dan serempak (Synchronous).

2.2.1. Pencacah Tak Serempak (Asynchronous) / Ripple / Serial

Jenis Pencacah ini paling sederhana dan tersusun dari FF yang sejenis (SC, JK,

T atau D) yang keluarannya Q (atau Q) dihubungkan dengan masukan Clock FF

5

berikutnya, sehingga semua keluaran FF tidak berubah bersamaan dengan

adanya pulsa Clock. Perubahan keadaan keluaran tiap FF terjadi pada setiap

sisi naik (atau turun) dari masukan Clocknya.

Suatu Pencacah yang apabila perubahan hitungan keluarannya naik dari

hitungan awalnya (misalnya 0000) dinamakan Pencacah naik / maju (Up-

Counter). Sebaliknya, apabila perubahan hitungan keluarannya turun dari

hitungan awalnya (misalnya 1111) dinamakan Pencacah turun / mundur (Down-

Counter). Jumlah masukan pulsa Clock yang menyebabkan Pencacah kembali

ke hitungan awalnya dinamakan modulus Pencacah, yaitu jumlah total keadaan

keluaran yang berbeda (termasuk nol) dari Pencacah yang dinyatakan :

Jumlah Modulus Pencacah = 2N N = Jumlah FF

2.2.2. Pencacah Serempak (Synchronous) / Paralel

Pada Pencacah biner sinkron, Clocknya dihubungkan dengan setiap masukan

Clock FF, untuk itu setiap pemberian pulsa Clock akan menyebabkan semua

keluaran juga berubah secara serentak. Hitungan pada Pencacah sinkron tidak

hanya seperti Pencacah ripple yaitu berurutan, tetapi bisa melompat atau

bahkan hitungan acak. Dalam merancang rangkaian Pencacah sinkron dengan

hitungan tertentu harus mengetahui jenis FF yang digunakan, karena setiap FF

mempunyai keluaran yang berbeda terhadap adanya pulsa Clock. Untuk itu

harus mengetahui setiap perubahan keadaan keluaran FF sehubungan dengan

hitungan yang diinginkan.

2.3. MIKROKONTROLLER

Mikrokontroller adalah sistem mikroprosesor lengkap yang terkandung di dalam

sebuah chip. Mikrokontroler berbeda dari mikroprosesor serba guna yang digunakan

dalam sebuah PC, karena sebuah mikrokontroler umumnya telah berisi komponen

pendukung sistem minimal mikroprosesor, yakni memori dan antarmuka I/O.

Sistem komputer dewasa ini paling banyak justru terdapat di dalam peralatan lain,

seperti telepon, jam, perangkat rumah tangga, kendaraan, dan bangunan. Sistem

embedded biasanya mengandung syarat minimal sebuah sistem mikroprosesor yaitu

memori untuk data dan program, serta sistem antarmuka input/output yang sederhana.

Antarmuka semacam keyboard, tampilan, disket, atau printer yang umumnya ada

pada sebuah komputer pribadi justru tidak ada pada sistem mikrokontroler. Sistem

mikrokontroler lebih banyak melakukan pekerjaan-pekerjaan sederhana yang penting

seperti mengendalikan motor, saklar, resistor variabel, atau perangkat elektronis lain.

Seringkali satu-satunya bentuk antarmuka yang ada pada sebuah sistem

6

mikrokontroler hanyalah sebuah LED, bahkan ini pun bisa dihilangkan jika tuntutan

konsumsi daya listrik mengharuskan demikian.

Berbeda dengan CPU serba-guna, mikrokontroler tidak selalu memerlukan memori

eksternal, sehingga mikrokontroler dapat dibuat lebih murah dalam kemasan yang

lebih kecil dengan jumlah pin yang lebih sedikit.

Sebuah chip mikrokontroler umumnya memiliki fitur:

central processing unit - mulai dari prosesor 4-bit yang sederhana hingga prosesor

kinerja tinggi 64-bit.

input/output antarmuka jaringan seperti port serial (UART)

antarmuka komunikasi serial lain seperti I²C, Serial Peripheral Interface and

Controller Area Network untuk sambungan sistem

periferal seperti timer dan watchdog

RAM untuk penyimpanan data

ROM, EPROM, EEPROM atau Flash memory untuk menyimpan program komputer

pembangkit clock - biasanya berupa resonator rangkaian RC

pengubah analog-ke-digital

Sejarah mikrokontroller

Mikrokontroler populer yang pertama dibuat oleh Intel pada tahun 1976, yaitu

mikrokontroler 8-bit Intel 8748. Mikrokontroler tersebut adalah bagian dari keluarga

mikrokontroler MCS-48. Sebelumnya, Texas instruments telah memasarkan

mikrokontroler 4-bit pertama yaitu TMS 1000 pada tahun 1974. TMS 1000 yang mulai

dibuat sejak 1971 adalah mikrokomputer dalam sebuah chip, lengkap dengan RAM

dan ROM.

2.4. ATMEGA 16

AVR merupakan seri mikrokontroler CMOS 8-bit buatan Atmel, berbasis arsitektur

RISC (Reduced Instruction Set Computer). Hampir semua instruksi dieksekusi dalam

satu siklus clock. AVR mempunyai 32 register general-purpose, timer/counter fleksibel

dengan mode compare, interrupt internal dan eksternal, serial UART, programmable

Watchdog Timer, dan mode power saving, ADC dan PWM internal. AVR juga

mempunyai In-System Programmable Flash on-chip yang mengijinkan memori

program untuk diprogram ulang dalam sistem menggunakan hubungan serial SPI.

ATMega16. ATMega16 mempunyai throughput mendekati 1 MIPS per MHz membuat

disainer sistem untuk mengoptimasi konsumsi daya versus kecepatan proses.

7

Beberapa keistimewaan dari AVR ATMega16 antara lain:

1. Advanced RISC Architecture

130 Powerful Instructions – Most Single Clock Cycle Execution

32 x 8 General Purpose Fully Static Operation

Up to 16 MIPS Throughput at 16 MHz

On-chip 2-cycle Multiplier

2. Nonvolatile Program and Data Memories

8K Bytes of In-System Self-Programmable Flash

Optional Boot Code Section with Independent Lock Bits

512 Bytes EEPROM

512 Bytes Internal SRAM

Programming Lock for Software Security

3. Peripheral Features

Two 8-bit Timer/Counters with Separate Prescalers and Compare Mode

Two 8-bit Timer/Counters with Separate Prescalers and Compare Modes

One 16-bit Timer/Counter with Separate Prescaler, Compare Mode, and

Capture Mode

Real Time Counter with Separate Oscillator

Four PWM Channels

8-channel, 10-bit ADC

Byte-oriented Two-wire Serial Interface

Programmable Serial USART

4. Special Microcontroller Features

Power-on Reset and Programmable Brown-out Detection

Internal Calibrated RC Oscillator

External and Internal Interrupt Sources

Six Sleep Modes: Idle, ADC Noise Reduction, Power-save, Power-down,

Standby and Extended Standby

5. I/O and Package

32 Programmable I/O Lines

40-pin PDIP, 44-lead TQFP, 44-lead PLCC, and 44-pad MLF

6. Operating Voltages

2.7 - 5.5V for Atmega16L

4.5 - 5.5V for Atmega16

8

Gambar 3. Gambar pin- pin ATMega 16 kemasan 40 pin

Pin-pin pada ATMega16 dengan kemasan 40-pin DIP (dual in-line package)

ditunjukkan oleh gambar 1. Guna memaksimalkan performa, AVR menggunakan

arsitektur Harvard (dengan memori dan bus terpisah untuk program dan data).

2.5. SEVEN SEGMEN

2.5.1. Pengertian

Seven Segment adalah suatu segmen- segmen yang digunakan menampilkan

angka. Seven segmen ini tersusun atas 7 batang LED yang disusun

membentuk angka 8 dengan menggunakan huruf a-f yang disebut DOT

MATRIKS. Setiap segmen ini terdiri dari 1 atau 2 Light Emitting Diode ( LED ).

2.5.2. Jenis – jenis seven segment

2.5.2.1. Common Anoda

Disini, semua anoda dari diode disatukan secara parallel dan semua itu

dihubungkan ke VCC dan kemudian LED dihubungkan melalui tahanan

pembatas arus keluar dari penggerak. Karena dihubungkan ke VCC,

maka COMMON ANODA ini berada pada kondisi AKTIF HIGH.

2.5.2.2. Common Katoda

Disini semua katoda disatukan secara parallel dan dihubungkan ke

GROUND. Karena seluruh katoda dihubungkan ke GROUND, maka

COMMON KATODA ini berada pada kondisi AKTIF LOW.

2.5.3. Prinsip kerja

Prinsip kerja seven segmen ialah input biner pada switch dikonversikan masuk

ke dalam decoder, baru kemudian decoder mengkonversi bilangan biner

tersebut menjadi decimal, yang nantinya akan ditampilkan pada seven segment.

9

2.6. ALARM

Alarm secara umum dapat didefinisikan sebagai bunyi peringatan atau pemberitahuan.

Dalam istilah jaringan, alarm dapat juga didefinisikan sebagai pesan berisi

pemberitahuan ketika terjadi penurunan atau kegagalan dalam penyampaian sinyal

komunikasi data ataupun ada peralatan yang mengalami kerusakan (penurunan

kinerja). Pesan ini digunakan untuk memperingatkan operator atau administrator

mengenai adanya masalah (bahaya) pada jaringan. Alarm memberikan tanda bahaya

berupa sinyal, bunyi, ataupun sinar.

10

BAB III

PERENCANAAN

3.1. Gambar rangkaian

Gambar 4. Gambar rangkain jam digital dengan fasilitas alarm

3.2. Listing program

#include <mega16.h>

#include <delay.h>

int detik=0, menit=3, jam=12, temp_jam, temp_menit, ubah, indeks=4;

int menit_satuan, menit_puluhan, jam_satuan, jam_puluhan;

bit dot=0;

// Timer 1 overflow interrupt service routine

interrupt [TIM1_OVF] void timer1_ovf_isr(void)

{

// Reinitialize Timer 1 value

TCNT1H=0xD23A >> 8;

TCNT1L=0xD23A & 0xff;

detik++;

dot=dot^1; //logika menyalakan titik

}

void jam_digital()

{

if (detik==60)

PB0/T0/XCK1

PB1/T12

PB2/AIN0/INT23

PB3/AIN1/OC04

PB4/SS5

PB5/MOSI6

PB6/MISO7

PB7/SCK8

RESET9

XTAL212

XTAL113

PD0/RXD14

PD1/TXD15

PD2/INT016

PD3/INT117

PD4/OC1B18

PD5/OC1A19

PD6/ICP120

PD7/OC221

PC0/SCL22

PC1/SDA23

PC2/TCK24

PC3/TMS25

PC4/TDO26

PC5/TDI27

PC6/TOSC128

PC7/TOSC229

PA7/ADC733

PA6/ADC634

PA5/ADC535

PA4/ADC436

PA3/ADC337

PA2/ADC238

PA1/ADC139

PA0/ADC040

AREF32

AVCC30

PROGRAM=..\prg\Exe\jam.hex

X112MHZ

C4

22nF

C5

22nF

R71K

C310uF/16V

D1

D2

D3

D4

Q32N3702

Q42N3702

Q52N3702

Q62N3702

A

B

C

D

E

F

G

DOT

D1 D2 D3 D4

A

B

C

D

E

F

G

DOT

UP

MENU

DOWN

PB1

PB2

PB3

PB1

PB2

PB3

R1

100k

R2

330k

R3

1M

R410k

Q1

BC142

Q2

AC128

C10,1uF

R510

R61,5k

LS1

SPEAKER

C2

100uF

11

{

detik=0;

menit++;

}

if (menit==60)

{

menit=0;

jam++;

}

if (jam==24)

{

jam=0;

}

}

void ubah_ke_format7segment()//fungsi untuk mengubah kedalam format 7segment

{

if (ubah==0){ubah=0xc0;}

if (ubah==1){ubah=0xf9;}

if (ubah==2){ubah=0xa4;}

if (ubah==3){ubah=0xb0;}

if (ubah==4){ubah=0x99;}

if (ubah==5){ubah=0x92;}

if (ubah==6){ubah=0x82;}

if (ubah==7){ubah=0xf8;}

if (ubah==8){ubah=0x80;}

if (ubah==9){ubah=0x90;}

}

void data_7segmen()

{

temp_menit=menit;

menit_satuan=temp_menit%10;//sisa dari pembagian disimpan di variabel satuan

ubah=menit_satuan;

ubah_ke_format7segment();//panggil fungsi mengubah kedalam format 7segment

menit_satuan=ubah;

temp_menit=temp_menit/10;

menit_puluhan=temp_menit%10;

ubah=menit_puluhan;

ubah_ke_format7segment();

menit_puluhan=ubah;

temp_jam=jam;

jam_satuan=temp_jam%10;

ubah=jam_satuan;

ubah_ke_format7segment();

jam_satuan=ubah;

temp_jam=jam/10;

jam_puluhan=temp_jam%10;

ubah=jam_puluhan;

ubah_ke_format7segment();

jam_puluhan=ubah;

}

12

void tampil_7segment()

{

PORTC=jam_puluhan;//mengirimkan data kedigit5

PORTD=0b11110111;//menyalakan digit5

delay_ms(3);

PORTC=jam_satuan;//mengirimkan data kedigit6

PORTC.7=PORTC.7^dot;//indikator detik dengan menyalakan segment DOT pada digit

ke2

PORTD=0b11111011;//menyalakan digit6

delay_ms(3);

PORTC=menit_puluhan;//mengirimkan data kedigit7

PORTD=0b11111101;//menyalakan digit7

delay_ms(3);

PORTC=menit_satuan;//mengirimkan data kedigit8

PORTD=0b11111110;//menyalakan digit8

delay_ms(3);

//lamanya waktu scanning ditentukan oleh intruksi delay

}

void set_jam()

{

if (PINB.0==0 && indeks==4)

{

TIMSK=0x00; //stop LAGI TIMER

delay_ms(300);

indeks=3;

while (PINB.0==1 && indeks==3)

{

data_7segmen();

tampil_7segment();

if (PINB.1==0)

{

delay_ms(300);

menit=menit+1;

if (menit>=60)

{

menit=59;

}

}

if (PINB.2==0)

{

delay_ms(300);

menit=menit-1;

if (menit<0)

{

menit=0;

}

}

}

}

if (PINB.0==0 && indeks==3)

{

delay_ms(300);

13

indeks=2;

while (PINB.0==1 && indeks==2)

{

data_7segmen();

tampil_7segment();

if (PINB.1==0)

{

delay_ms(300);

menit=menit+10;

if (menit>=60)

{

menit=59;

}

}

if (PINB.2==0)

{

delay_ms(300);

menit=menit-10;

if (menit<0)

{

menit=0;

}

}

}

}

if (PINB.0==0 && indeks==2)

{

delay_ms(300);

indeks=1;

while (PINB.0==1 && indeks==1)

{

data_7segmen();

tampil_7segment();

if (PINB.1==0)

{

delay_ms(300);

jam=jam+1;

if (jam>=60)

{

jam=59;

}

}

if (PINB.2==0)

{

delay_ms(300);

jam=jam-1;

if (jam<0)

{

jam=0;

}

}

}

}

if (PINB.0==0 && indeks==1)

14

{

delay_ms(300);

indeks=0;

while (PINB.0==1 && indeks==0)

{

data_7segmen();

tampil_7segment();

if (PINB.1==0)

{

delay_ms(300);

jam=jam+1;

if (jam>=60)

{

jam=59;

}

}

if (PINB.2==0)

{

delay_ms(300);

jam=jam-1;

if (jam<0)

{

jam=0;

}

}

}

indeks=4;

TIMSK=0x04; //MEMULAI LAGI TIMER

delay_ms(300);

}

}

void alarm()

{

If (menit==15){PIND.4==1;}

else {PIND.4==0;}

if (menit==30){PIND.5==1;}

else {PIND.5==0;}

if (menit==0){PIND.5==1;}

else {PIND.5==0;}

}

void main(void)

{

PORTB=0xff;

DDRB=0x00;

PORTC=0xff;

DDRC=0xff;

PORTD=0xff;

DDRD=0xff;

// Timer/Counter 1 initialization

// Clock source: System Clock

15

// Clock value: 11.719 kHz

// Mode: Normal top=FFFFh

// OC1A output: Discon.

// OC1B output: Discon.

// Noise Canceler: Off

// Input Capture on Falling Edge

// Timer 1 Overflow Interrupt: On

// Input Capture Interrupt: Off

// Compare A Match Interrupt: Off

// Compare B Match Interrupt: Off

TCCR1A=0x00;

TCCR1B=0x05;

TCNT1H=0xD2;

TCNT1L=0x3A;

ICR1H=0x00;

ICR1L=0x00;

OCR1AH=0x00;

OCR1AL=0x00;

OCR1BH=0x00;

OCR1BL=0x00;

// Timer(s)/Counter(s) Interrupt(s) initialization

TIMSK=0x04;

// Analog Comparator initialization

// Analog Comparator: Off

// Analog Comparator Input Capture by Timer/Counter 1: Off

ACSR=0x80;

SFIOR=0x00;

// Global enable interrupts

#asm("sei")

while (1)

{

set_jam();

jam_digital();

data_7segmen();

tampil_7segment();

alarm();

};

}

3.3. Perhitungan arus power supply

3.3.1. Arus untuk seven segment

Sebuah seven segment membutuhkan arus sebesar 10 - 20 mA, sehingga

dengan menggunakan 4 seven segment maka arus yang diperlukan kurang

lebih 40 - 80 mA.

3.3.2. Arus mikrokontroller ATMega 16

Sebuah mikrokontroller atmega membuuhkan 20 mA

16

3.3.3. Arus total yang harus disediakan oleh power supply

Dengan arus seven segment yang 80 mA dan mcu ATMega 16 yang 20 mA,

maka powersupply yang digunakan harus mampu menyediakan arus sebesar

100 mA. Sehingga untuk lebih aman power supply yang digunakan

menghasilkan paling tidak 5X arus yang diperlukan.

3.4. Pembuatan jalur rangkaian

Pada perencanaan jalur rangkaian diatas bisa menggunakan bantuan softwere

seperti protel,visio dll.

Hal – hal yang perlu diperhatikan :

1. memperhatikan lebar jalur yang dibutuhkan guna meningkatkan efesiensi arus dan

tempat.

2. Disisi lain kita harus mempersiapkan komponen yang dibutuhkan sesuai rangkaian

yang telah kita rancang.

3. Mengecek keberadaan jalur,sehingga benar-benar sesuai dengan rangkaian diatas

Berikut gambar layout dan pictorial dari rangkaian gambar 12 diatas.

1. Layout (skala 1:2)

Gambar 5. Layout sisi atas (kiri), bawah (kanan)

17

2. Pictorial (skala 1:1)

Gambar 6. Pictorial rangkaian jam digital

3.5. Penyablonan

Setelah perencanaan selesai kita bisa memulai memindahkan jalur ke pcb,disini kita

mengunakan metode penyablonan yang dulu telah kita pelajari pada semester

sebelumnya,dengan memperhatikan langkah-langkah yang benar agar mendapatkan

hasil yang maksimal.

18

BAB IV

METODOLOGI

START

PENGUMPULAN

TEORI

PEMAHAMAN

TEORI

PERENCANAAN

PEMBUATAN

PROGRAM

SIMULASI

FABRIKASI

PENGETESAN

FINISH

TIDAK

TIDAK

YA

YA

19

Penjelasan Metodologi

4.1. Pengumpulan Teori

Mengumpulkan teori yang berhubungan dengan jam digital mikrokontroler, dan teori

yang berkaitan. Mencari teori yang berhubungan dari internet maupun dari buku yang

sesuai dan relevan.

4.2. Pemahaman Teori

Teori adalah sesuatu yang mendasar yang perlu dipelajari dalam melakukan suatu

kegiatan. Dimana disini, jika akan membuat jam digital mikrokontroler, maka harus

memahami teori sistem dasar jam digital, IC mikrokontroler dan system alarm jam

yang terkait terlebih dahulu. Bagaimana fungsi dari setiap blok serta komponen –

komponen di dalamnya. Terutama parameter yang digunakan untuk mengetahui hasil

yang kita inginkan.

4.3. Perencanaan

Melakukan perencanaan kita lakukan setelah kita memahami teori sistem. Dari teori

yang telah ada kita melakukan perencanaan apa. Mikrokontroler yang digunakan dan

penampil pada jam digital yang disertai alarm. Serta untuk mendapatkan karakteristik

tersebut diperlukan parameter untuk melakukan perhitungan nilai komponen –

komponen yang diperlukan.

4.4. Pembuatan Program

Pembuatan program yang dimaksud adalah pembuatan program yang berada pada IC

mikrokontroler untuk menjalankan jam digital yang ditampilkan pada seven segment

agar pada saat 15 menit, 30 menit, dan 60 menit alarmnya dapat berfungsi dengan

ketentuan yang sesuai yang telah ditentukan.

4.5. Simulasi

Darirencana yang sudah diperhitungkan, kita mencoba mensimulasikan dalam sebuah

software. Software yang digunakan yaitu Codevision dan Proteus. Tujuan dari simulasi

ini adalah untuk meminimalisir rusaknya komponen – komponen karena tidak

sesuainya nilai dari komponen tersebut. Dan dari Codevision dan Proteus kita bisa

mengetahui output dari rangkaian sudah sesuai dengan karakteristik yang diinginkan

atau tidak. Jika tidak maka harus mengulas kembali teori sistem yang ada serta

merencanakan perhitungan nilai komponen – komponennya lagi.

20

4.6. Fabrikasi

Fabrikasi adalah kegiatan aplikasi dari software dan benar – benar akan dipraktekan

untuk sebuah alat agar bisa berfungsi. Dimana jika dalam pembuatan program dan

simulasi sesuai maka kita memulai pembuatan PCB serta merangkai komponen jam

digital mikrokontroler.

Pembuatan jam digital mikrokontroler bisa dimulai dengan merancang program dalam

sebuah software seperti Codevision dan Proteus. Setelah program atmega didalam

software Codevision selesai kita bisa memindah file ke software Proteus untuk

memunculkan simulasi penjalanan program.

Kemudian jika pembuatan pembuatan program selesai dan simulasi sesuai dengan

perencanaan, kita bisa merangkai komponen – komponennya sesuai dengan letak

yang telah ditentukan dalam jalur tersebut. Setelah merangkai harus menyatukan kaki

– kaki komponen dengan jalur PCB dengan cara mensoldernya. Hasil solderan tidar

boleh mempengaruhi jalur PCB dan kaki – kaki komponen lainnya. Karena semua itu

bisa menghambat sistem kerja alat dan dapat mempercepat kerusakan komponen –

komponennya. Bahkan alat tersebut tidak bisa berfungsi atau mati.

4.7. Pengetesan

Setelah proses fabrikasi selesai, selanjutnya ialah proses pengetesan rangkaian

apakah sudah sesuai dengan hasil pada proses simulasi atau tidak.

21

DAFTAR PUSTAKA

1. http://elektro-kontrol.blogspot.com/2011/06/jam-digital-dengan-penampil-seven.html

2. http://elektro-kontrol.blogspot.com/2011/06/program-mengakses-seven-segment.html

3. http://elektro-kontrol.blogspot.com/2011/06/timer-dan-counter-avr.html

4. http://wahyusp.wordpress.com/2009/06/28/proyek-jam-digital-ii-ds1307/

5. http://tips-trik-8.blogspot.com/2009/11/jam-digital-dengan-mikrokontroler_23.html

6. http://wirkamdwyfebrian.blogspot.com/2010/03/bel-pintu.html