SlideShare une entreprise Scribd logo
1  sur  31
Télécharger pour lire hors ligne
1
MAKALAH MIKROPROSESOR
JAM DIGITAL DENGAN LCD 16X2

SHERLY MELISA SEMBIRING

131421086

YOHANA BR SITEPU

131421087

LELY DAHLYANA

131421090

ABNER SORITUA SIDAURUK

131421096

KOM C EKSTENSI

PROGRAM STUDI S1 ILMU KOMPUTER
DEPARTEMEN ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS
SUMATERA UTARA
MEDAN
2014
2

BAB 1

PENDAHULUAN

1.1

Latar Belakang

Jam digital merupakan salah satu aplikasi dari mikrokontroler ATMega8, hal ini sangat
masuk akal karena harga dari mirokontroler cukup ekonomis apabila dijadikan sebuah jam
digital, masalah utama dalam pembuatannya adalah pada penyinkronan waktu dan bagaimana
mengendalikan display yang dalam hal ini digunakan lcd 16x2 melalui port serial yang
terdapat pada mikrokontroler, disini juga digunakan Shif Register untuk mengeser data pada
lcd 16x2, adapun pemogramannya disini digunakan bahasa pemograman assembly yang
sesuai dengan mata kuliah yang diajarkan.

1.2

Batasan Masalah

Pembuatan jam digital ini hanya sebatas menampilkan jam, menit dan detik.

1.3

Tujuan

Tujuan dari pembuatan makalah ini adalah untuk memenuhi tugas microprosesor serta untuk
menambah pengetahuan tentang microcontroler.
3

BAB 2

TINJAUAN PUSTAKA

2.1

Mikrokontroler AVR Atmega8

AVR merupakan salah satu jenis mikrokontroler yang di dalamnya terdapat berbagai macam
fungsi. Perbedaannya pada mikro yang pada umumnya digunakan seperti MCS51 adalah
pada AVR tidak perlu menggunakan oscillator eksternal karena di dalamnya sudah terdapat
internal oscillator. Selain itu kelebihan dari AVR adalah memiliki Power-On Reset, yaitu
tidak perlu ada tombol reset dari luar karena cukup hanya dengan mematikan supply, maka
secara otomatis AVR akan melakukan reset. Untuk beberapa jenis AVR terdapat beberapa
fungsi khusus seperti ADC, EEPROM sekitar 128 byte sampai dengan 512 byte.

AVR ATmega8 adalah mikrokontroler CMOS 8-bit berarsitektur AVR RISC yang
memiliki 8K byte in-System Programmable Flash. Mikrokontroler dengan konsumsi daya
rendah ini mampu mengeksekusi instruksi dengan kecepatan maksimum 16MIPS pada
frekuensi 16MHz. Jika dibandingkan dengan ATmega8L perbedaannya hanya terletak pada
besarnya tegangan yang diperlukan untuk bekerja. Untuk ATmega8 tipe L, mikrokontroler ini
dapat bekerja dengan tegangan antara 2,7 - 5,5 V sedangkan untuk ATmega8 hanya dapat
bekerja pada tegangan antara 4,5 – 5,5 V.

Gambar 2.1 Mikrokontroler ATMega8
4
2.1.1 Arsitektur ATMega8

Blok diagram dari mikrokontroler ATMega8 diperlihatkan pada gambar di bawah ini.

Gambar 2.2 Blok Diagram Mikrokontroler ATMega8
5
2.1.1.1 Peta Memori

ATmega8 memiliki dua ruang memori utama, yaitu memori data dan memori
program.Selain dua memori utama, ATmega8 juga memiliki fitur EEPROM yang dapat
digunakan sebagai penyimpan data.

2.1.1.2 Flash Memory

ATmega8 memiliki flash memory sebesar 8 Kbytes untuk memori program. Karena
semua instruksi AVR menggunakan 16 atau 32 bit, maka AVR memiliki organisasi memori 4
Kbyte x 16 bit dengan alamat dari $000 hingga $FFF. Untuk keamanan software, memori
flash dibagi mejadi dua bagian, yaitu Boot Program dan bagian Application program. AVR
tersebut memiliki 12 bit Program Counter (PC) sehingga mampu mengalamati isi flash
memori.

2.1.1.3 SRAM

ATmega8 memiliki 608 alamat memori data yang terbagi menjadi 3 bagian, yaitu 32
buah register file, 64 buah IO register dan 512 byte internal SRAM.

2.1.1.4 EEPROM

ATmega8 juga memiliki memori data berupa EEPROM 8 bit sebesar 512 byte.

2.1.1.5 Register (SREG)

Register SREG digunakan untuk menyimpan informasi dari hasil operasi aritmatika
yang terakhir. Informasi-informasi dari register SREG dapat digunakan untuk mengubah alur
program yang sedang dijalankan dengan menggunakan instruksi percabangan. Data SREG
akan selalu akan berubah setiap instruksi atau operasi pada ALU dan datanya tidak otomatis
tersimpan apabila terjadi instruksi percabangan baik karena interupsi maupun lompatan.
6
2.1.1.6 Status Register
Status register adalah register berisi status yang dihasilkan pada setiap operasi yang
dilakukan ketika suatu instruksi dieksekusi. SREG merupakan bagian dari inti CPU
mikrokontroler.

2.1.2 Konfigurasi Pin Atmega8

Gambar 2.3 Konfigurasi Pin Atmega8
ATmega8 memiliki 28 Pin, yang masing-masing pin nya memiliki fungsi yang berbeda-beda
baik sebagai port maupun fungsi yang lainnya. Berikut akan dijelaskan fungsi dari masingmasing kaki ATmega8 :
1. VCC
Merupakan supply tegangan digital.

2. GND
Merupakan ground untuk semua komponen yang membutuhkan grounding.

3. Port B (PB7...PB0)
Didalam Port B terdapat XTAL1, XTAL2, TOSC1, TOSC2. Jumlah Port B adalah 8
buah pin, mulai dari pin B.0 sampai dengan B.7. Tiap pin dapat digunakan sebagai
input maupun output. Port B merupakan sebuah 8-bit bi-directional I/O dengan
internal pull-up resistor. Sebagai input, pin-pin yang terdapat pada port B yang secara
7
eksternal diturunkan, maka akan mengeluarkan arus jika pull-up resistor diaktifkan.
Khusus PB6 dapat digunakan sebagai input Kristal (inverting oscillator amplifier) dan
input ke rangkaian clock internal, bergantung pada pengaturan Fuse bit yang
digunakan untuk memilih sumber clock. Sedangkan untuk PB7 dapat digunakan
sebagai output Kristal (output oscillator amplifier) bergantung pada pengaturan Fuse
bit yang digunakan untuk memilih sumber clock. Jika sumber clock yang dipilih dari
oscillator internal, PB7 dan PB6 dapat digunakan sebagai I/O atau jika menggunakan
Asyncronous Timer/Counter2 maka PB6 dan PB7 (TOSC2 dan TOSC1) digunakan
untuk saluran input
timer.

4. Port C (PC5…PC0)
Port C merupakan sebuah 7-bit bi-directional I/O port yang di dalam masing-masing
pin terdapat pull-up resistor. Jumlah pin nya hanya 7 buah mulai dari pin C.0 sampai
dengan pin C.6. Sebagai keluaran/output port C memiliki karakteristik yang sama
dalam hal menyerap arus (sink) ataupun mengeluarkan arus (source).

5. RESET/PC6
Jika RSTDISBL Fuse diprogram, maka PC6 akan berfungsi sebagai pin I/O. Pin ini
memiliki karakteristik yang berbeda dengan pin-pin yang terdapat pada port C
lainnya. Namun jika RSTDISBL Fuse tidak diprogram, maka pin ini akan berfungsi
sebagai input reset. Dan jika level tegangan yang masuk ke pin ini rendah dan pulsa
yang ada lebih pendek dari pulsa minimum, maka akan menghasilkan suatu kondisi
reset meskipun clock-nya tidak bekerja.

6. Port D (PD7…PD0)
Port D merupakan 8-bit bi-directional I/O dengan internal pull-up resistor. Fungsi dari
port ini sama dengan port-port yang lain. Hanya saja pada port ini tidak terdapat
kegunaan-kegunaan yang lain. Pada port ini hanya berfungsi sebagai masukan dan
keluaran saja atau biasa disebut dengan I/O.

7. Avcc
Pin ini berfungsi sebagai supply tegangan untuk ADC. Untuk pin ini harus
dihubungkan secara terpisah dengan VCC karena pin ini digunakan untuk analog saja.
8
Bahkan jika ADC pada AVR tidak digunakan tetap saja disarankan untuk
menghubungkannya secara terpisah dengan VCC. Jika ADC digunakan, maka AVcc
harus dihubungkan ke VCC melalui low pass filter.

8. AREF
Merupakan pin referensi jika menggunakan ADC.

Gambar 2.4 Blok Diagram ATmega8

Pada AVR status register mengandung beberapa informasi mengenai hasil dari
kebanyakan hasil eksekusi instruksi aritmatik. Informasi ini digunakan untuk altering
arus program sebagai kegunaan untuk meningkatkan performa pengoperasian.
Register ini di-update setelah operasi ALU (Arithmetic Logic Unit) hal tersebut
seperti yang tertulis dalam datasheet khususnya pada bagian Instruction Set
Reference. Dalam hal ini untuk beberapa kasus dapat membuang 10 penggunaan
kebutuhan instrukasi perbandingan yang telah didedikasikan serta
dapat menghasilkan peningkatan dalam hal kecepatan dan kode yang lebih sederhana
dan singkat. Register ini tidak secara otomatis tersimpan ketika memasuki sebuah
rutin interupsi dan juga ketika menjalankan sebuah perintah setelah kembali dari
interupsi. Namun hal tersebut harus dilakukan melalui software. Berikut adalah
gambar status register.

9. Bit 7(I)
Merupakan bit Global Interrupt Enable. Bit ini harus di-set agar semua perintah
interupsi dapat dijalankan. Untuk perintah interupsi individual akan di jelaskan pada
9
bagian yang lain. Jika bit ini di-reset, maka semua perintah interupsi baik yang
individual maupun yang secara umum akan di abaikan. Bit ini akan dibersihkan atau
cleared oleh hardware setelah sebuah interupsi di jalankan dan akan di-set kembali
oleh perintah RETI. Bit ini juga dapat diset dan di-reset melalui aplikasi dan intruksi
SEI dan CLL.

10. Bit 6(T)
Merupakan bit Copy Storage. Instruksi bit Copy Instructions BLD (Bit Load) and
BST (Bit Store) menggunakan bit ini sebagai asal atau tujuan untuk bit yang telah
dioperasikan. Sebuah bit dari sebuah register dalam Register File dapat disalin ke
dalam bit ini dengan menggunakan instruksi BST, dan sebuah bit di dalam bit ini
dapat disalin ke dalam bit di dalam register pada Register File dengan menggunakan
perintah BLD.

11. Bit 5(H)
Merupakan bit Half Carry Flag. Bit ini menandakan sebuah Half Carry dalam
beberapa operasi aritmatika. Bit ini berfungsi dalam aritmatika BCD.

12. Bit 4(S)
Merupakan Sign bit. Bit ini selalu merupakan sebuah ekslusif di antara Negative Flag
(N) dan two’s Complement Overflow Flag (V).

13. Bit 3(V)
Merupakan bit Two’s Complement Overflow Flag. Bit ini menyediakan fungsi
aritmatika dua komplemen.

14. Bit 2(N)
Merupakan bit Negative Flag. Bit ini mengindikasikan sebuah hasil negative di dalam
sebuah fungsi logika atai aritmatika.

15. Bit 1(Z)
Merupakan bit Zero Flag. Bit ini mengindikasikan sebuah jasil nol “0” dalan sebuah
fungsi aritmatika atau logika.
10
16. Bit 0(C)
Merupakan bit Carry Flag. Bit ini mengindikasikan sebuah Carry atau sisa dalam
sebuah aritmatika atau logika.

2.2

Kristal
Kristal umumnya digunakan untuk rangkaian osilator yang menuntutstabilitas

frekuensi yang tinggi dalam jangka waktu yang panjang. Alasan utamanya adalah karena
perubahan nilai frekuensi kristal seiring dengan waktu, atau disebut juga dengan istilah faktor
frequency aging, jauh lebih kecil daripadaosilator-osilator lain. Faktor frequency aging untuk
kristal berkisar pada angka±5ppm/tahun, jauh lebih baikdaripada faktor frequency aging
osilator RC ataupunosilator LC yang biasanya berada diatas±1%/tahun.
Kristal juga mempunyai stabilitas suhu yang sangat bagus. Padaumumnya, nilai
koefisien suhu kristal berada dikisaran ±50ppm direntangan suhuoperasi normal dari -20°C
sampai dengan +70°C. Untuk aplikasi yangmenuntut stabilitas suhu yang lebih tinggi, kristal
dapat dioperasikan didalamsebuah oven kecil yang dijaga agar suhunya selalu konstan.
Fungsi Kristal pada Sistem Minimum (Sismin) adalah sebagai pembangkit/pemompa
data yaitu bersifat timer (semacam clock)/pulsa digital. Oleh karena itu, kristal memiliki
sebuah frekuensi.
Kristal terbuat dari bahan alam yang menunjukkan efek piezoelektrik,sehingga sering
disebut Kristal Piezoelektrik. Bahan utama kristal yang dapatmenimbulkan efek piezoelektrik
adalah garam rachelle,tourmaline dan quarte.
Frekuensi, resonansi dan nilai Q – nya (Qualityfactor) tergantung pada dimensi
kristal, orientasi permukaan pada sumbu-sumbu kristal dan bagaimana komponen tersebut
dipasang ( Mounted) jangkauan frekuensinya dari beberapa KHz sampai beberapa MHz. Pada
hakikatnya, frekuensi dari suatu osilator kristal hanya ditentukan oleh kristal itu sendiri dan
tidak oleh komponen lainnya. Lambang kristal dapat dilihat pada gambar 2.6.

(a)

(b)

Gambar 2.5 (a) Simbol Kristal dan (b) Bentuk Fisik Kristal
11

Sesuai dengan simbolnya kristal dipasang diantara 2 buah elektroda logam dimana
elektroda tersebut merupakan kapasitas dan kristalnya sebagai dielektrik. Konstruksi kristal
digenggam dengan kuat oleh kedua elektroda tersebut, namun tidak menghalangi kristal
dalam getarannya.
Dalam beresonansi kristal mempunyai cara kerja yang sama dengan rangkaian LC,
karena mempunyai frekuensi resonansi (fs).

Gambar 2.6 Rangkaian Ekuivalen Kristal

L,R,C adalah ekuivalen listrik kristal, apabila sedang bergetar. Adapun bentuk
lengkung resonansi kristal dapat dilihat pada gambar 2.7.

Gambar 2.7 Lengkung Resonansi Kristal

Frekuensi resonansi deret (fs) dan frekuensi resonansi jajar (fp) sangat berdekatan,
jaraknya kira-kira 100Hz. Dari lengkungan fs dan fp bahwa rangkaian LC mempunyai faktor
Q yang sangat tinggi hingga mencapai 1.000.000. Karenanilai Q yang sangat tinggi tersebut
maka kristal dapat dipakai sebagai rangkaianLC konvensional.
12
2.3

Power Supply DC (Direct Current)
Catu

daya

merupakan

sesuatu

yang

sangat

penting

untuk

semua

rangkaianelektronika.Catu daya yang baik adalah catu daya yang dapat menyuplai
keseluruhan sistem dengan tegangan yang stabil terhadap konsumsi arus yang dibutuhkan
sistem.
2.3.1 Rangkaian Regulator
Regulator ini dimaksudkan untuk memberi kemampuan catu yang stabilpada
keseluruhan sistem dengan menggunakan sebuah integrasi regulatortegangan tetap yakni IC
Regulator.Dimana memiliki internal current limiting,thermal shutdown dan safe operation
area protection.Gambar rangkaian catudaya ini dapat dilihat pada gambar 2.8.

Gambar 2.8 Rangkaian Fixed Voltage Regulator Power Supply DC

Arus keluaran dari IC78XXdapatditambah (boosted)dengan adanya eksternal
transistor PNP pass. IC Regulatorakan menyuplai semua kebutuhanarus. Pada saat tegangan
jatuh tersebut berlangsung, maka transistor akan aktif.Dengan aktifnya transistor maka akan
menambah arus bagi beban.
Adapun blok rangkaian dalam IC Regulator 78XX dapat dilihat padagambar 2.9.
13

Gambar 2.9 Blok Rangkaian Dalam IC Regulator 78XX

Pada blok diagram dapat dilihat bahwa IC Regulator 78XX telah mempunyai sebuah
sistem regulasi tegangan yang lengkap dansistem pengamanan terhadap beban berlebih. Serta
pengamanan dari suhu yang melebihi jangkauan temperatur pada saat pengoperasian. Namun
idealnya sebuah regulator harus dipasangheat sink untuk pencegahan panas pada kemasaan
IC.

2.4

LCD ( Liquid Crystal Display )

LCD (Liquid Crystal Display) skrin adalah modul paparan elektronik yang digunakan secara
meluas dalam pelbagai aplikasi. Skrin LCD merupakan modul asas yang digunakan bersama
dengan peranti masukan atau keluaran elektronik yang lain. LCD skrin lebih diminati ramai
berbanding paparan 7 ruas (7 segment) kerana fungsinya yang pelbaai, mudah untuk
diprogramkan, tidak memiliki batasan untuk memaparkan aksara dan ianya juga boleh
diprogramkan untuk memaparkan animasi yang dikehendaki serta paparan yang lebih jelas.

LCD 16x2 seperti diatas boleh memaparkan 16 aksara per baris dan mempunyai 2 baris
paparan. Setiap aksara akan dipaparkan dalam 5x7 pixel matrix. LCD jenis ini mempunyai
dua register, iaitu arahan(command) dan data.
14
Register arahan berfugnsi menyimpan arahan yang diberikan kepada LCD. Command
adalah arahan yang diberikan untuk LCD bagi melakukan tugas yang telah ditetapkan seperti
manganalisis arahan, menulis dan memadam aksara, mengubah kedudukan cursor dan
pelbagai arahan lagi. kawalan paparan dll data register menyimpan data yang akan
dipaparkan pada LCD.Data register pula berfungsi untuk menyimpan data yang akan
dipaparkan pada paparan LCD. Data adalah nilai aksara bagi ASCII yang akan dipaparkan
pada LCD.

Gambar 2.10 LCD (Liquid Crystal Display)

2.5 Real Time Clock (RTC) DS1307

Real Time Clock merupakan suatu chip (IC) yang memiliki fungsi sebagai penyimpan waktu
dan tanggal. RTC DS1307 merupakan Real-time clock (RTC) yang dapat meyimpan datadata detik, menit, jam, tanggal, bulan, hari dalam seminggu, dan tahun valid hingga 2100. 56byte, battery-backed, RAM nonvolatile (NV) RAM untuk penyimpanan. RTC DS1307
merupakan Real-time clock (RTC) dengan jalur data parallel yang memiliki Antarmuka serial
Two-wire (I2C), Sinyal luaran gelombang-kotak terprogram (Programmable squarewave),
Deteksi otomatis kegagalan-daya (power-fail) dan rangkaian switch, Konsumsi daya kurang
dari 500nA menggunakan mode baterai cadangan dengan operasional osilator. Tersedia fitur
industri dengan ketahana suhu: -40°C hingga +85°C. Tersedia dalam kemasa 8-pin DIP atau
SOIC.
15

Gambar 2.11 RTC DS1307

Berikut Penjelasan Pin-Pin Pada IC RTC DS1307
1. X1

Merupakan pin yang digunakan untuk dihubungkan dengan kristal sebagai pembangkit clock.

2. X2

Berfungsi sebagai keluaran / output dari crystal yang digunakan. Trhubung juga dengan X1.

3. VBAT

Merupakan backup supply untuk RTC DS1307 dalam menjalankan fungsi waktu dan tanggal.
Besarnya adalah 3V dengan menggunakan jenis Lithium Cell atau sumber energy lain. Jika
pin ini tidak di gunakan maka harus terhubung dengan Ground. Sumber teganggan dengan
48mAH atau lebih besar dapat digunakan sebagai cadangan energy sampai lebih dar 10
tahun, namun dengan persyaratan untuk pengoprasian dalam suhu 25°C.

4. GND

Berfungsi sebagai Ground.

5. SDA

Barfungsi sebagai masukan / keluaran (I/O) untuk I2C serial interface. Pin ini bersifat open
drain, oleh sebab itu membutuhkan eksternal pull up resistor.
16
6. SCL

Berfungsi sebagai clock untuk input ke I2C dan digunakan untuk mensinkronisasi pergerakan
data dalam serial interface. bersifat open drain, oleh sebab itu membutuhkan eksternal pull up
resistor.

7. SWQ/OUT

Sebagai square wafe / Output Driver . jika di aktifkan, maka akan menjadi 4 frekuensi
gelombang kotak yaitu 1 Hz, 4kHz, 8kHz, 32kHz sifat dari pin ini sama dengan sifat pin
SDA dan SCL sehingga membutuhkan eksternal pull up resistor. Dapat dioprasikan dengan
VCC maupun dengan VBAT.

8. VCC

Merupakan sumber tegangan utama. Jika sumber tegangan terhubung dengan baik, maka
pengaksesan data dan pembacaan data dapat dilakukan dengan baik. Namun jika backup
supply terhubung juga dengan VCC, namun besar VCC di bawah VTP, maka pengaksesan
data tidak dapat dilakukan.

2.6

Sensor Suhu IC LM35

Untuk mendeteksi suhu digunakan sebuah sensor suhu LM35 yang dapat
dikalibrasikan langsung dalam satuan derajat Celcius.LM35 ini difungsikan sebagai basic
temperature sensor seperti pada gambar di bawah.

Gambar 2.12 LM35 basic temperature sensor
17
IC LM35 sebagai sensor suhu yang teliti dan terkemas dalam bentuk Integrated
Circuit (IC), dimana output tegangan keluaran sangat linear berpadanan dengan perubahan
suhu. Sensor ini berfungsi sebagai pengubah dari besaran fisis suhu ke besaran tegangan yang
memiliki koefisien sebesar 10 mV /°C yang berarti bahwakenaikan suhu 1° C maka akan
terjadi kenaikan tegangan sebesar 10 mV. IC LM35 ini tidak memerlukan pengkalibrasian
atau penyetelan dari luar karena ketelitiannya sampai lebih kurang seperempat derajat celcius
pada temperatureuang.Jangka sensor mulai dari – 55°C sampai dengan 150°C.IC
LM35penggunaannya sangat mudah, difungsikan sebagai kontrol dari indikator tampilan catu
daya terbelah.IC LM35 dapat dialiri arus 60 mA dari supply sehingga panas yang
ditimbulkan sendiri sangat rendah kurang dari 0 ° C di dalam suhu ruangan.

Gambar 2.13 Rangkaian Pengukur Suhu

LM35 ialah sensor temperatur paling banyak digunakan untuk praktikum, karena
selain harganya cukup murah, linearitasnya juga lumayan bagus. LM35 tidak membutuhkan
kalibrasi eksternal serta menyediakan akurasi ± ¼ °C pada temperatur ruangan dan ± ¾ °C
pada kisaran -55 °C to +150 °C. LM35 dimaksudkan untuk beroperasi pada -55 °C hingga
+150 °C, sedangkan LM35C pada -40 °C hingga +110 °C, dan LM35D pada kisran 0-100°C.
LM35D juga tersedia pada paket 8 kaki dan paket TO-220. Sensor LM35 umumnya akan
naik sebesar 10mV setiap kenaikan 1°C (300mV pada 30 °C).

Gambar 2.14 Bentuk Fisik LM35
18
Sensor suhu LM35 berfungsi untuk mengubah besaran fisis yang berupa suhu menjadi
besaran elektri tegangan. Sensor ini memiliki parameter bahwa setiap kenaikan 1°C tegangan
keluarannya naik sebesar 10mV dengan batas maksimal keluaran sensor adalah 1,5V pada
suhu 150°C. Pada perancangan kita tentukan keluaran ADC mencapai full scale pada saat
suhu 100°C, sehingga tegangan keluaran tranduser (10mV/°C x 100°C) = 1V. Pengukuran
secara langsung saat suhu ruang, keluaran LM35 adalah 0,3V (300mV). Tengan ini diolah
dengan mengunakan rangkaian pengkondisi sinyal agar sesuai dangan tahapan masukan
ADC.

LM35 memiliki karakteristik sebagai berikut:
1. Di kalibrasi langsung dalam Celsius.
2. Memiliki faktor skala linear + 10.0 mV/°C.
3. Memiliki ketetapan 0,5°C pada suhu 25°C.
4. Jangkauan maksimal suhu antara -55°C sampai 150°C.
5. Cocok untuk applikasi jarak jauh.
6. Harganya cukup murah.
7. Bekerja pada tegangan catu daya 4 sampai 30Volt.
8. Memiliki arus drain kurang dari 60 uA.
9. Pemanasan sendiri yang lambat ( low self-heating)0,08˚C diudara diam.
10. Ketidak linearanya hanya sekitar ±¼°C.
11. Memiliki Impedansi keluaran yang kecil yaitu 0,1 watt untuk beban 1 mA.

Sensor suhu tipe LM35 merupakan IC sensor temperatur yang akurat yang

tegangan

keluarannya linear dalam satuan celcius. Jadi LM35 memilik kelebihan dibandingkan sensor
temperatur linear dalam satuan kelvin, karena tidak

memerlukan pembagian dengan

konstanta tegangan yang besar dan keluarannya untuk mendapatkan nilai dalam satuan
celcius yang tepat. LM35 memiliki impedansi keluaran yang rendah, keluaran yang linear,
dan sifat ketepatan dalam pengujian membuat proses interface untuk membaca atau
mengotrol sirkuit lebuh mudah. Pin V+ dari LM35 dihubungkan kecatu daya, pin GND
dihubungkan ke Ground dan pin Vout- yang menghasilkan tegangan analog hasil pengindera
suhu dihubungkan ke vin (+) dan ADC 0840.
19
BAB 3

PERANCANGAN JAM DIGITAL DENGAN LCD 16X2

3.1

Komponen rangkaian jam digital dengan lcd 16x2

1. capacitor 10uf / 16 volt 2 Buah
2.

Xtall 16 Khz 1 Buah

3.

Xtall 32 Khz 1 Buah

4.

Baterai CMOS dan Soket 1 Buah

5.

RTC DS1307+socket 1 Buah

6.

ATmega8 + socket 1 Buah

7.

Push button (tombol) 3 Buah

8.

Regulator 7805 1 Buah

9.

LCD 16x2 1 Buah

10. LM35 1 Buah
11. resistor 1 K 1 Buah
12. resistor 10 K 2 Buah
20
3.2

Skematik Segment Jam Digital Dengan LCD 16X2
21
3.3

Tampilan Layout Jam Digital Dengan LCD 16x2
22

BAB 4

PENUTUP

4.1

Kesimpulan

Mikrokontroler ATMega8 dapat dirancang menjadi sebuah jam digital, Dengan rangkaian
sederhana dalam membuat sebuah rangkaian kita tentunya dituntut untuk paham dari dari
sebuah microcontroler yang kita gunakan. Pada program, waktu pertama dimulai jam
00.00.00, maka dalam awal pengoperasiannya perlu menunggu waktu tengah malam supaya
jam ini sesuai dengan waktu yang sebenarnya. Hai ni merupakan salah satu kelemahan jam
ini, namun jika kita tidak ingin menunggu waktu sampai tengah malam maka perlu ada
sedikit modifikasi pada awal program
23

LISTING PROGRAM

Jam.c

/*****************************************************
Chip type

: ATmega8

Program type

: Application

Clock frequency

: 12.000000 MHz

Memory model

: Small

External SRAM size

: 0

Data Stack size

: 256

*****************************************************/
#include <mega8.h>

#include <delay.h>
#include <stdio.h>
// I2C Bus functions
#include <i2c.h>

// DS1307 Real Time Clock functions
#include <ds1307.h>

// Alphanumeric LCD functions
#include <alcd.h>

#define ADC_VREF_TYPE 0x40
#define UP PINC.4
#define MENU PINC.5
#define DOWN PINC.3
unsigned char jam,menit,detik,ii,i,flag_detik;
int data_suhu;
int suhu;
24
unsigned

char

suhup,suhus,jamp,jams,menitp,menits,detikp,detiks;
char lcd_buffer[33];
unsigned int read_adc(unsigned char adc_input)
{
ADMUX=adc_input | (ADC_VREF_TYPE & 0xff);
// Delay needed for the stabilization of the ADC input voltage
delay_us(10);
// Start the AD conversion
ADCSRA|=0x40;
// Wait for the AD conversion to complete
while ((ADCSRA & 0x10)==0);
ADCSRA|=0x10;
return ADCW;
}

void konversi_suhu()
{suhup=data_suhu/10;
suhus=data_suhu%10;}

void konversi()
{jamp=jam/10;
jams=jam%10;
menitp=menit/10;
menits=menit%10;
detikp=detik/10;
detiks=detik%10;
}

void setting_menit()
{
lcd_clear();
while(i==1)
{
25
rtc_get_time(&jam,&menit,&detik);
konversi();
lcd_gotoxy(0,0);
lcd_putsf("Setting menit");
lcd_gotoxy(0,1);
sprintf(lcd_buffer,"Jam:
%d%d:%d%d:%d%d",jamp,jams,menitp,menits,detikp,detiks);
lcd_puts(lcd_buffer);
//UP=read_adc(4);
if(UP==0)
{delay_ms(500);
menit+=1;
if(menit==60)
{menit=0;}
rtc_set_time(jam,menit,detik);}
//DOWN=read_adc(3);
if(DOWN==0)
{delay_ms(500);
menit-=1;
if(menit==0xff)
{menit=59;}
rtc_set_time(jam,menit,detik);}
//MENU=read_adc(5);
if(MENU==0)
{delay_ms(500);
i=0;}}}

void setting_jam()
{i=1;
lcd_clear();
while(i==1)
{rtc_get_time(&jam,&menit,&detik);
konversi();
lcd_gotoxy(0,0);
26
lcd_putsf("Setting jam");
lcd_gotoxy(0,1);
sprintf(lcd_buffer,"Jam:
%d%d:%d%d:%d%d",jamp,jams,menitp,menits,detikp,detiks);
lcd_puts(lcd_buffer);
//UP=read_adc(4);
if(UP==0)
{delay_ms(500);
jam+=1;
if(jam==24)
{jam=0;}
rtc_set_time(jam,menit,detik);}
//DOWN=read_adc(3);
if(DOWN==0)
{delay_ms(500);
jam-=1;
if(jam==0xff)
{jam=23;}
rtc_set_time(jam,menit,detik);}
//MENU=read_adc(5);
if(MENU==0)
{delay_ms(500);
setting_menit();}}}

void main(void)
{
// Declare your local variables here

// Input/Output Ports initialization
// Port B initialization
//

Func7=In

Func6=In

Func5=In

Func4=In

Func3=In

Func2=In

State5=T

State4=T

State3=T

State2=T

Func1=In Func0=In
//

State7=T

State6=T

State1=T State0=T
27
PORTB=0x00;
DDRB=0x00;

// Port C initialization
//

Func6=In

Func5=In

Func4=In

Func3=In

Func2=In

Func1=In

State5=T

State4=T

State3=T

State2=T

State1=T

Func0=In
//

State6=T

State0=T
PORTC=0x38;
DDRC=0x00;

// Port D initialization
// Func7=Out Func6=Out Func5=Out Func4=Out Func3=Out Func2=Out
Func1=Out Func0=Out
//

State7=0

State6=0

State5=0

State1=0 State0=0
PORTD=0x00;
DDRD=0xFF;

// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
TCCR0=0x00;
TCNT0=0x00;

// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: Timer1 Stopped
// Mode: Normal top=0xFFFF
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer1 Overflow Interrupt: Off

State4=0

State3=0

State2=0
28
// Input Capture Interrupt: Off
// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;

// Timer/Counter 2 initialization
// Clock source: System Clock
// Clock value: Timer2 Stopped
// Mode: Normal top=0xFF
// OC2 output: Disconnected
ASSR=0x00;
TCCR2=0x00;
TCNT2=0x00;
OCR2=0x00;

// External Interrupt(s) initialization
// INT0: Off
// INT1: Off
MCUCR=0x00;

// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=0x00;

// USART initialization
// USART disabled
29
UCSRB=0x00;

// Analog Comparator initialization
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0x80;
SFIOR=0x00;

// ADC initialization
// ADC Clock frequency: 500,000 kHz
// ADC Voltage Reference: AVCC pin
ADMUX=ADC_VREF_TYPE & 0xff;
ADCSRA=0x81;

// SPI initialization
// SPI disabled
SPCR=0x00;

// TWI initialization
// TWI disabled
TWCR=0x00;

// I2C Bus initialization
// I2C Port: PORTB
// I2C SDA bit: 2
// I2C SCL bit: 1
// Bit Rate: 100 kHz
// Note: I2C settings are specified in the
// Project|Configure|C Compiler|Libraries|I2C menu.
i2c_init();

// DS1307 Real Time Clock initialization
// Square wave output on pin SQW/OUT: On
// Square wave frequency: 1Hz
30
rtc_init(0,1,0);

// Alphanumeric LCD initialization
// Connections are specified in the
//

Project|Configure|C

Compiler|Libraries|Alphanumeric

menu:
// RS - PORTD Bit 7
// RD - PORTD Bit 5
// EN - PORTD Bit 6
// D4 - PORTD Bit 3
// D5 - PORTD Bit 2
// D6 - PORTD Bit 1
// D7 - PORTD Bit 0
// Characters/line: 16
lcd_init(16);
rtc_get_time(&jam,&menit,&detik);
if(detik>59)
{rtc_set_time(jam,menit,0);}
ii=0;
suhu=read_adc(2);
while (1)
{
//program tapil suhu
if(detik==flag_detik)
{};
if(detik!=flag_detik)
{
ii+=1;
flag_detik=detik;
}
if(ii==3)
{
suhu=read_adc(2);
ii=0;

LCD
31
}
data_suhu=(suhu*5)/1.024;
data_suhu=(data_suhu/10);
konversi_suhu();
lcd_gotoxy(0,0);
sprintf(lcd_buffer,"Suhu Ruangan: %d%d C",suhup,suhus);
lcd_puts(lcd_buffer);
//program tampil jam
rtc_get_time(&jam,&menit,&detik);
konversi();
lcd_gotoxy(0,1);
sprintf(lcd_buffer,"Jam:
%d%d:%d%d:%d%d",jamp,jams,menitp,menits,detikp,detiks);
lcd_puts(lcd_buffer);
//program cek tombol
//MENU=read_adc(5);

if (MENU==0)
{
delay_ms(500);
setting_jam();
}

}
}

Contenu connexe

Tendances

Penyederhanaan Karnaugh Map
Penyederhanaan Karnaugh MapPenyederhanaan Karnaugh Map
Penyederhanaan Karnaugh MapCheria Asyifa
 
ALGORITMA MENARA HANOI MENGGUNAKAN FUNGSI REKURSIF
ALGORITMA MENARA HANOI MENGGUNAKAN FUNGSI REKURSIFALGORITMA MENARA HANOI MENGGUNAKAN FUNGSI REKURSIF
ALGORITMA MENARA HANOI MENGGUNAKAN FUNGSI REKURSIFcalonmayat
 
MAKALAH SISTEM KONVERTER KODE DAN ADDER
MAKALAH SISTEM KONVERTER KODE DAN ADDER MAKALAH SISTEM KONVERTER KODE DAN ADDER
MAKALAH SISTEM KONVERTER KODE DAN ADDER Dionisius Kristanto
 
Laporan praktikum Gerbang Logika
Laporan praktikum Gerbang LogikaLaporan praktikum Gerbang Logika
Laporan praktikum Gerbang LogikaA A
 
Pembahasan ujian teori pemrograman pascal bagian 1
Pembahasan ujian teori pemrograman pascal bagian 1Pembahasan ujian teori pemrograman pascal bagian 1
Pembahasan ujian teori pemrograman pascal bagian 1Damun Setiaji
 
Gerbang Universal NAND dan NOR
Gerbang Universal NAND dan NORGerbang Universal NAND dan NOR
Gerbang Universal NAND dan NORAnarstn
 
Gerbang logika
Gerbang logikaGerbang logika
Gerbang logikaIPA 2014
 
Laporan Praktikum Flip Flop
Laporan Praktikum Flip FlopLaporan Praktikum Flip Flop
Laporan Praktikum Flip FlopAnarstn
 
Elektronika Digital.pptx
Elektronika Digital.pptxElektronika Digital.pptx
Elektronika Digital.pptxJackWalter18
 
Shift register dan data direction
Shift register dan data directionShift register dan data direction
Shift register dan data directionrahardian24
 
Comparator laporan
Comparator laporanComparator laporan
Comparator laporanBrian Raafiu
 
Bab 6 rangkaian orde satu
Bab 6 rangkaian orde satuBab 6 rangkaian orde satu
Bab 6 rangkaian orde satuRumah Belajar
 
Arsitektur jaringan-ims
Arsitektur jaringan-imsArsitektur jaringan-ims
Arsitektur jaringan-imsMaulana Kharis
 
HALF AND FULL SUBTRACTOR
HALF AND FULL SUBTRACTOR HALF AND FULL SUBTRACTOR
HALF AND FULL SUBTRACTOR Delmaqo Delmaqo
 
Tutorial membuat project termometer dan jam digital menggunakan codevision av...
Tutorial membuat project termometer dan jam digital menggunakan codevision av...Tutorial membuat project termometer dan jam digital menggunakan codevision av...
Tutorial membuat project termometer dan jam digital menggunakan codevision av...Muhammad Kennedy Ginting
 
Makalah Proyek Rangkaian Flip-Flop
Makalah Proyek Rangkaian Flip-FlopMakalah Proyek Rangkaian Flip-Flop
Makalah Proyek Rangkaian Flip-FlopAlicya Putri
 
Ii Rangkaian Listrik Fasor
Ii Rangkaian Listrik FasorIi Rangkaian Listrik Fasor
Ii Rangkaian Listrik FasorFauzi Nugroho
 

Tendances (20)

Rangkaian penyearah
Rangkaian penyearahRangkaian penyearah
Rangkaian penyearah
 
Penyederhanaan Karnaugh Map
Penyederhanaan Karnaugh MapPenyederhanaan Karnaugh Map
Penyederhanaan Karnaugh Map
 
ALGORITMA MENARA HANOI MENGGUNAKAN FUNGSI REKURSIF
ALGORITMA MENARA HANOI MENGGUNAKAN FUNGSI REKURSIFALGORITMA MENARA HANOI MENGGUNAKAN FUNGSI REKURSIF
ALGORITMA MENARA HANOI MENGGUNAKAN FUNGSI REKURSIF
 
Jawaban Struktur data soal-latihan
Jawaban Struktur data soal-latihanJawaban Struktur data soal-latihan
Jawaban Struktur data soal-latihan
 
MAKALAH SISTEM KONVERTER KODE DAN ADDER
MAKALAH SISTEM KONVERTER KODE DAN ADDER MAKALAH SISTEM KONVERTER KODE DAN ADDER
MAKALAH SISTEM KONVERTER KODE DAN ADDER
 
Laporan praktikum Gerbang Logika
Laporan praktikum Gerbang LogikaLaporan praktikum Gerbang Logika
Laporan praktikum Gerbang Logika
 
Pembahasan ujian teori pemrograman pascal bagian 1
Pembahasan ujian teori pemrograman pascal bagian 1Pembahasan ujian teori pemrograman pascal bagian 1
Pembahasan ujian teori pemrograman pascal bagian 1
 
Gerbang Universal NAND dan NOR
Gerbang Universal NAND dan NORGerbang Universal NAND dan NOR
Gerbang Universal NAND dan NOR
 
Gerbang logika
Gerbang logikaGerbang logika
Gerbang logika
 
Rangkaian Adder
Rangkaian AdderRangkaian Adder
Rangkaian Adder
 
Laporan Praktikum Flip Flop
Laporan Praktikum Flip FlopLaporan Praktikum Flip Flop
Laporan Praktikum Flip Flop
 
Elektronika Digital.pptx
Elektronika Digital.pptxElektronika Digital.pptx
Elektronika Digital.pptx
 
Shift register dan data direction
Shift register dan data directionShift register dan data direction
Shift register dan data direction
 
Comparator laporan
Comparator laporanComparator laporan
Comparator laporan
 
Bab 6 rangkaian orde satu
Bab 6 rangkaian orde satuBab 6 rangkaian orde satu
Bab 6 rangkaian orde satu
 
Arsitektur jaringan-ims
Arsitektur jaringan-imsArsitektur jaringan-ims
Arsitektur jaringan-ims
 
HALF AND FULL SUBTRACTOR
HALF AND FULL SUBTRACTOR HALF AND FULL SUBTRACTOR
HALF AND FULL SUBTRACTOR
 
Tutorial membuat project termometer dan jam digital menggunakan codevision av...
Tutorial membuat project termometer dan jam digital menggunakan codevision av...Tutorial membuat project termometer dan jam digital menggunakan codevision av...
Tutorial membuat project termometer dan jam digital menggunakan codevision av...
 
Makalah Proyek Rangkaian Flip-Flop
Makalah Proyek Rangkaian Flip-FlopMakalah Proyek Rangkaian Flip-Flop
Makalah Proyek Rangkaian Flip-Flop
 
Ii Rangkaian Listrik Fasor
Ii Rangkaian Listrik FasorIi Rangkaian Listrik Fasor
Ii Rangkaian Listrik Fasor
 

Similaire à Makalah mikroprosesor jam digital dengan LCD16X2

Basic avr-microcontroller-tutorial v3
Basic avr-microcontroller-tutorial v3Basic avr-microcontroller-tutorial v3
Basic avr-microcontroller-tutorial v3Mabekni Yulianto
 
Basic avr-microcontroller-tutorial 8535
Basic avr-microcontroller-tutorial 8535Basic avr-microcontroller-tutorial 8535
Basic avr-microcontroller-tutorial 8535LAZY MAGICIAN
 
Laporan Praktikum konveyor maju mundur menggunakan atmega16
Laporan Praktikum konveyor maju mundur menggunakan atmega16Laporan Praktikum konveyor maju mundur menggunakan atmega16
Laporan Praktikum konveyor maju mundur menggunakan atmega16Sidiksetiyono17
 
Laporan Praktikum Robot Maju Mundur menggunakan ATMega16
Laporan Praktikum Robot Maju Mundur menggunakan ATMega16Laporan Praktikum Robot Maju Mundur menggunakan ATMega16
Laporan Praktikum Robot Maju Mundur menggunakan ATMega16Sidiksetiyono17
 
Traffic Light Berbasis ATMega32A
Traffic Light Berbasis ATMega32ATraffic Light Berbasis ATMega32A
Traffic Light Berbasis ATMega32AAmmazizzaky Tarigan
 
Mikroprosesor sttc
Mikroprosesor sttcMikroprosesor sttc
Mikroprosesor sttcBeni Putra
 
Pertemuan 14-sistem-embedded
Pertemuan 14-sistem-embeddedPertemuan 14-sistem-embedded
Pertemuan 14-sistem-embeddedFrance Rhezhek
 
Mikrokontroler io tombol dan led
Mikrokontroler io tombol dan ledMikrokontroler io tombol dan led
Mikrokontroler io tombol dan ledJodit Sulistyo
 
Dasar dasar mikrokontroler
Dasar dasar mikrokontrolerDasar dasar mikrokontroler
Dasar dasar mikrokontrolerTantriIrawan
 
Menerapkan dasar dasar mikrokontroler
Menerapkan dasar dasar mikrokontrolerMenerapkan dasar dasar mikrokontroler
Menerapkan dasar dasar mikrokontrolergixcznow
 
M I C R O C O N T R O L L E R 2009new
M I C R O C O N T R O L L E R 2009newM I C R O C O N T R O L L E R 2009new
M I C R O C O N T R O L L E R 2009newDeddy Susilo
 
Percobaan 12 led berbasis ATMega16 - BascomeAVR
Percobaan 12 led berbasis ATMega16 - BascomeAVRPercobaan 12 led berbasis ATMega16 - BascomeAVR
Percobaan 12 led berbasis ATMega16 - BascomeAVRMaesaroh9
 

Similaire à Makalah mikroprosesor jam digital dengan LCD16X2 (20)

Basic avr-microcontroller-tutorial v3
Basic avr-microcontroller-tutorial v3Basic avr-microcontroller-tutorial v3
Basic avr-microcontroller-tutorial v3
 
Basic avr-microcontroller-tutorial 8535
Basic avr-microcontroller-tutorial 8535Basic avr-microcontroller-tutorial 8535
Basic avr-microcontroller-tutorial 8535
 
Sensor suhu LM 35
Sensor suhu LM 35Sensor suhu LM 35
Sensor suhu LM 35
 
Bab ii atmega8
Bab ii atmega8Bab ii atmega8
Bab ii atmega8
 
Laporan Praktikum konveyor maju mundur menggunakan atmega16
Laporan Praktikum konveyor maju mundur menggunakan atmega16Laporan Praktikum konveyor maju mundur menggunakan atmega16
Laporan Praktikum konveyor maju mundur menggunakan atmega16
 
Laporan Praktikum Robot Maju Mundur menggunakan ATMega16
Laporan Praktikum Robot Maju Mundur menggunakan ATMega16Laporan Praktikum Robot Maju Mundur menggunakan ATMega16
Laporan Praktikum Robot Maju Mundur menggunakan ATMega16
 
Traffic Light Berbasis ATMega32A
Traffic Light Berbasis ATMega32ATraffic Light Berbasis ATMega32A
Traffic Light Berbasis ATMega32A
 
Mikroprosesor sttc
Mikroprosesor sttcMikroprosesor sttc
Mikroprosesor sttc
 
PROYEK1
PROYEK1PROYEK1
PROYEK1
 
Pertemuan 14-sistem-embedded
Pertemuan 14-sistem-embeddedPertemuan 14-sistem-embedded
Pertemuan 14-sistem-embedded
 
Mikrokontroler io tombol dan led
Mikrokontroler io tombol dan ledMikrokontroler io tombol dan led
Mikrokontroler io tombol dan led
 
Laporan led
Laporan ledLaporan led
Laporan led
 
Laporan Joystick
Laporan JoystickLaporan Joystick
Laporan Joystick
 
Dasar dasar mikrokontroler
Dasar dasar mikrokontrolerDasar dasar mikrokontroler
Dasar dasar mikrokontroler
 
Menerapkan dasar dasar mikrokontroler
Menerapkan dasar dasar mikrokontrolerMenerapkan dasar dasar mikrokontroler
Menerapkan dasar dasar mikrokontroler
 
1. Pengantar.pdf
1. Pengantar.pdf1. Pengantar.pdf
1. Pengantar.pdf
 
M I C R O C O N T R O L L E R 2009new
M I C R O C O N T R O L L E R 2009newM I C R O C O N T R O L L E R 2009new
M I C R O C O N T R O L L E R 2009new
 
Percobaan 12 led berbasis ATMega16 - BascomeAVR
Percobaan 12 led berbasis ATMega16 - BascomeAVRPercobaan 12 led berbasis ATMega16 - BascomeAVR
Percobaan 12 led berbasis ATMega16 - BascomeAVR
 
1 mikrokontroler-avr1
1  mikrokontroler-avr11  mikrokontroler-avr1
1 mikrokontroler-avr1
 
Mikrokontroler
MikrokontrolerMikrokontroler
Mikrokontroler
 

Dernier

Jaringan VOIP Ringkasan PTT Pertemuan Ke-1.pdf
Jaringan VOIP Ringkasan PTT Pertemuan Ke-1.pdfJaringan VOIP Ringkasan PTT Pertemuan Ke-1.pdf
Jaringan VOIP Ringkasan PTT Pertemuan Ke-1.pdfHendroGunawan8
 
Pembuktian rumus volume dan luas permukaan bangung ruang Tabung, Limas, Keruc...
Pembuktian rumus volume dan luas permukaan bangung ruang Tabung, Limas, Keruc...Pembuktian rumus volume dan luas permukaan bangung ruang Tabung, Limas, Keruc...
Pembuktian rumus volume dan luas permukaan bangung ruang Tabung, Limas, Keruc...NiswatuzZahroh
 
slide presentation bab 2 sain form 2.pdf
slide presentation bab 2 sain form 2.pdfslide presentation bab 2 sain form 2.pdf
slide presentation bab 2 sain form 2.pdfNURAFIFAHBINTIJAMALU
 
Perbaikan ekonomi zaman Habibie (Offering A - 4-6) Pertemuan - 10.pdf
Perbaikan ekonomi zaman Habibie (Offering A - 4-6) Pertemuan - 10.pdfPerbaikan ekonomi zaman Habibie (Offering A - 4-6) Pertemuan - 10.pdf
Perbaikan ekonomi zaman Habibie (Offering A - 4-6) Pertemuan - 10.pdfAgungNugroho932694
 
PLaN & INTERVENSI untuk sekolah yang memerlukan
PLaN & INTERVENSI untuk sekolah yang memerlukanPLaN & INTERVENSI untuk sekolah yang memerlukan
PLaN & INTERVENSI untuk sekolah yang memerlukanssuserc81826
 
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKA
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKAPPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKA
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKARenoMardhatillahS
 
Adab bjjkkkkkkk gggggggghhhhywq dede dulu ya itu yg kamu
Adab bjjkkkkkkk gggggggghhhhywq dede dulu ya itu yg kamuAdab bjjkkkkkkk gggggggghhhhywq dede dulu ya itu yg kamu
Adab bjjkkkkkkk gggggggghhhhywq dede dulu ya itu yg kamuKarticha
 
Asi Eksklusif Dong - buku untuk para ayah - Robin Lim
Asi Eksklusif Dong - buku untuk para ayah - Robin LimAsi Eksklusif Dong - buku untuk para ayah - Robin Lim
Asi Eksklusif Dong - buku untuk para ayah - Robin LimNodd Nittong
 
Workshop penulisan buku (Buku referensi, monograf, BUKU...
Workshop penulisan buku                       (Buku referensi, monograf, BUKU...Workshop penulisan buku                       (Buku referensi, monograf, BUKU...
Workshop penulisan buku (Buku referensi, monograf, BUKU...Riyan Hidayatullah
 
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptxSBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptxFardanassegaf
 
Gandum & Lalang (Matius......13_24-30).pptx
Gandum & Lalang (Matius......13_24-30).pptxGandum & Lalang (Matius......13_24-30).pptx
Gandum & Lalang (Matius......13_24-30).pptxHansTobing
 
rpp bangun-ruang-sisi-datar kelas 8 smp.pdf
rpp bangun-ruang-sisi-datar kelas 8 smp.pdfrpp bangun-ruang-sisi-datar kelas 8 smp.pdf
rpp bangun-ruang-sisi-datar kelas 8 smp.pdfGugunGunawan93
 
Sejarah Perkembangan Teori Manajemen.ppt
Sejarah Perkembangan Teori Manajemen.pptSejarah Perkembangan Teori Manajemen.ppt
Sejarah Perkembangan Teori Manajemen.pptssuser940815
 
Pelatihan Asesor 2024_KEBIJAKAN DAN MEKANISME AKREDITASI PAUD TAHUN 2024 .pdf
Pelatihan Asesor 2024_KEBIJAKAN DAN  MEKANISME AKREDITASI PAUD TAHUN 2024 .pdfPelatihan Asesor 2024_KEBIJAKAN DAN  MEKANISME AKREDITASI PAUD TAHUN 2024 .pdf
Pelatihan Asesor 2024_KEBIJAKAN DAN MEKANISME AKREDITASI PAUD TAHUN 2024 .pdfEmeldaSpd
 
Materi Kelas Online Ministry Learning Center - Bedah Kitab 1 Tesalonika
Materi Kelas Online Ministry Learning Center - Bedah Kitab 1 TesalonikaMateri Kelas Online Ministry Learning Center - Bedah Kitab 1 Tesalonika
Materi Kelas Online Ministry Learning Center - Bedah Kitab 1 TesalonikaSABDA
 
Estetika Humanisme Diskusi Video Sesi Ke-1.pdf
Estetika Humanisme Diskusi Video Sesi Ke-1.pdfEstetika Humanisme Diskusi Video Sesi Ke-1.pdf
Estetika Humanisme Diskusi Video Sesi Ke-1.pdfHendroGunawan8
 
Buku Saku Layanan Haji Ramah Lansia 2.pdf
Buku Saku Layanan Haji Ramah Lansia 2.pdfBuku Saku Layanan Haji Ramah Lansia 2.pdf
Buku Saku Layanan Haji Ramah Lansia 2.pdfWahyudinST
 
Modul persamaan perakaunan prinsip akaun
Modul persamaan perakaunan prinsip akaunModul persamaan perakaunan prinsip akaun
Modul persamaan perakaunan prinsip akaunnhsani2006
 
AKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pdf
AKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pdfAKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pdf
AKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pdfHeriyantoHeriyanto44
 
Product Knowledge Rapor Pendidikan - Satuan Pendidikan Dasmen&Vokasi.pptx
Product Knowledge Rapor Pendidikan - Satuan Pendidikan Dasmen&Vokasi.pptxProduct Knowledge Rapor Pendidikan - Satuan Pendidikan Dasmen&Vokasi.pptx
Product Knowledge Rapor Pendidikan - Satuan Pendidikan Dasmen&Vokasi.pptxKaista Glow
 

Dernier (20)

Jaringan VOIP Ringkasan PTT Pertemuan Ke-1.pdf
Jaringan VOIP Ringkasan PTT Pertemuan Ke-1.pdfJaringan VOIP Ringkasan PTT Pertemuan Ke-1.pdf
Jaringan VOIP Ringkasan PTT Pertemuan Ke-1.pdf
 
Pembuktian rumus volume dan luas permukaan bangung ruang Tabung, Limas, Keruc...
Pembuktian rumus volume dan luas permukaan bangung ruang Tabung, Limas, Keruc...Pembuktian rumus volume dan luas permukaan bangung ruang Tabung, Limas, Keruc...
Pembuktian rumus volume dan luas permukaan bangung ruang Tabung, Limas, Keruc...
 
slide presentation bab 2 sain form 2.pdf
slide presentation bab 2 sain form 2.pdfslide presentation bab 2 sain form 2.pdf
slide presentation bab 2 sain form 2.pdf
 
Perbaikan ekonomi zaman Habibie (Offering A - 4-6) Pertemuan - 10.pdf
Perbaikan ekonomi zaman Habibie (Offering A - 4-6) Pertemuan - 10.pdfPerbaikan ekonomi zaman Habibie (Offering A - 4-6) Pertemuan - 10.pdf
Perbaikan ekonomi zaman Habibie (Offering A - 4-6) Pertemuan - 10.pdf
 
PLaN & INTERVENSI untuk sekolah yang memerlukan
PLaN & INTERVENSI untuk sekolah yang memerlukanPLaN & INTERVENSI untuk sekolah yang memerlukan
PLaN & INTERVENSI untuk sekolah yang memerlukan
 
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKA
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKAPPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKA
PPT TEKS TANGGAPAN KELAS 7 KURIKUKULM MERDEKA
 
Adab bjjkkkkkkk gggggggghhhhywq dede dulu ya itu yg kamu
Adab bjjkkkkkkk gggggggghhhhywq dede dulu ya itu yg kamuAdab bjjkkkkkkk gggggggghhhhywq dede dulu ya itu yg kamu
Adab bjjkkkkkkk gggggggghhhhywq dede dulu ya itu yg kamu
 
Asi Eksklusif Dong - buku untuk para ayah - Robin Lim
Asi Eksklusif Dong - buku untuk para ayah - Robin LimAsi Eksklusif Dong - buku untuk para ayah - Robin Lim
Asi Eksklusif Dong - buku untuk para ayah - Robin Lim
 
Workshop penulisan buku (Buku referensi, monograf, BUKU...
Workshop penulisan buku                       (Buku referensi, monograf, BUKU...Workshop penulisan buku                       (Buku referensi, monograf, BUKU...
Workshop penulisan buku (Buku referensi, monograf, BUKU...
 
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptxSBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
 
Gandum & Lalang (Matius......13_24-30).pptx
Gandum & Lalang (Matius......13_24-30).pptxGandum & Lalang (Matius......13_24-30).pptx
Gandum & Lalang (Matius......13_24-30).pptx
 
rpp bangun-ruang-sisi-datar kelas 8 smp.pdf
rpp bangun-ruang-sisi-datar kelas 8 smp.pdfrpp bangun-ruang-sisi-datar kelas 8 smp.pdf
rpp bangun-ruang-sisi-datar kelas 8 smp.pdf
 
Sejarah Perkembangan Teori Manajemen.ppt
Sejarah Perkembangan Teori Manajemen.pptSejarah Perkembangan Teori Manajemen.ppt
Sejarah Perkembangan Teori Manajemen.ppt
 
Pelatihan Asesor 2024_KEBIJAKAN DAN MEKANISME AKREDITASI PAUD TAHUN 2024 .pdf
Pelatihan Asesor 2024_KEBIJAKAN DAN  MEKANISME AKREDITASI PAUD TAHUN 2024 .pdfPelatihan Asesor 2024_KEBIJAKAN DAN  MEKANISME AKREDITASI PAUD TAHUN 2024 .pdf
Pelatihan Asesor 2024_KEBIJAKAN DAN MEKANISME AKREDITASI PAUD TAHUN 2024 .pdf
 
Materi Kelas Online Ministry Learning Center - Bedah Kitab 1 Tesalonika
Materi Kelas Online Ministry Learning Center - Bedah Kitab 1 TesalonikaMateri Kelas Online Ministry Learning Center - Bedah Kitab 1 Tesalonika
Materi Kelas Online Ministry Learning Center - Bedah Kitab 1 Tesalonika
 
Estetika Humanisme Diskusi Video Sesi Ke-1.pdf
Estetika Humanisme Diskusi Video Sesi Ke-1.pdfEstetika Humanisme Diskusi Video Sesi Ke-1.pdf
Estetika Humanisme Diskusi Video Sesi Ke-1.pdf
 
Buku Saku Layanan Haji Ramah Lansia 2.pdf
Buku Saku Layanan Haji Ramah Lansia 2.pdfBuku Saku Layanan Haji Ramah Lansia 2.pdf
Buku Saku Layanan Haji Ramah Lansia 2.pdf
 
Modul persamaan perakaunan prinsip akaun
Modul persamaan perakaunan prinsip akaunModul persamaan perakaunan prinsip akaun
Modul persamaan perakaunan prinsip akaun
 
AKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pdf
AKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pdfAKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pdf
AKSI NYATA MODUL 1.3 VISI GURU PENGGERAK.pdf
 
Product Knowledge Rapor Pendidikan - Satuan Pendidikan Dasmen&Vokasi.pptx
Product Knowledge Rapor Pendidikan - Satuan Pendidikan Dasmen&Vokasi.pptxProduct Knowledge Rapor Pendidikan - Satuan Pendidikan Dasmen&Vokasi.pptx
Product Knowledge Rapor Pendidikan - Satuan Pendidikan Dasmen&Vokasi.pptx
 

Makalah mikroprosesor jam digital dengan LCD16X2

  • 1. 1 MAKALAH MIKROPROSESOR JAM DIGITAL DENGAN LCD 16X2 SHERLY MELISA SEMBIRING 131421086 YOHANA BR SITEPU 131421087 LELY DAHLYANA 131421090 ABNER SORITUA SIDAURUK 131421096 KOM C EKSTENSI PROGRAM STUDI S1 ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2014
  • 2. 2 BAB 1 PENDAHULUAN 1.1 Latar Belakang Jam digital merupakan salah satu aplikasi dari mikrokontroler ATMega8, hal ini sangat masuk akal karena harga dari mirokontroler cukup ekonomis apabila dijadikan sebuah jam digital, masalah utama dalam pembuatannya adalah pada penyinkronan waktu dan bagaimana mengendalikan display yang dalam hal ini digunakan lcd 16x2 melalui port serial yang terdapat pada mikrokontroler, disini juga digunakan Shif Register untuk mengeser data pada lcd 16x2, adapun pemogramannya disini digunakan bahasa pemograman assembly yang sesuai dengan mata kuliah yang diajarkan. 1.2 Batasan Masalah Pembuatan jam digital ini hanya sebatas menampilkan jam, menit dan detik. 1.3 Tujuan Tujuan dari pembuatan makalah ini adalah untuk memenuhi tugas microprosesor serta untuk menambah pengetahuan tentang microcontroler.
  • 3. 3 BAB 2 TINJAUAN PUSTAKA 2.1 Mikrokontroler AVR Atmega8 AVR merupakan salah satu jenis mikrokontroler yang di dalamnya terdapat berbagai macam fungsi. Perbedaannya pada mikro yang pada umumnya digunakan seperti MCS51 adalah pada AVR tidak perlu menggunakan oscillator eksternal karena di dalamnya sudah terdapat internal oscillator. Selain itu kelebihan dari AVR adalah memiliki Power-On Reset, yaitu tidak perlu ada tombol reset dari luar karena cukup hanya dengan mematikan supply, maka secara otomatis AVR akan melakukan reset. Untuk beberapa jenis AVR terdapat beberapa fungsi khusus seperti ADC, EEPROM sekitar 128 byte sampai dengan 512 byte. AVR ATmega8 adalah mikrokontroler CMOS 8-bit berarsitektur AVR RISC yang memiliki 8K byte in-System Programmable Flash. Mikrokontroler dengan konsumsi daya rendah ini mampu mengeksekusi instruksi dengan kecepatan maksimum 16MIPS pada frekuensi 16MHz. Jika dibandingkan dengan ATmega8L perbedaannya hanya terletak pada besarnya tegangan yang diperlukan untuk bekerja. Untuk ATmega8 tipe L, mikrokontroler ini dapat bekerja dengan tegangan antara 2,7 - 5,5 V sedangkan untuk ATmega8 hanya dapat bekerja pada tegangan antara 4,5 – 5,5 V. Gambar 2.1 Mikrokontroler ATMega8
  • 4. 4 2.1.1 Arsitektur ATMega8 Blok diagram dari mikrokontroler ATMega8 diperlihatkan pada gambar di bawah ini. Gambar 2.2 Blok Diagram Mikrokontroler ATMega8
  • 5. 5 2.1.1.1 Peta Memori ATmega8 memiliki dua ruang memori utama, yaitu memori data dan memori program.Selain dua memori utama, ATmega8 juga memiliki fitur EEPROM yang dapat digunakan sebagai penyimpan data. 2.1.1.2 Flash Memory ATmega8 memiliki flash memory sebesar 8 Kbytes untuk memori program. Karena semua instruksi AVR menggunakan 16 atau 32 bit, maka AVR memiliki organisasi memori 4 Kbyte x 16 bit dengan alamat dari $000 hingga $FFF. Untuk keamanan software, memori flash dibagi mejadi dua bagian, yaitu Boot Program dan bagian Application program. AVR tersebut memiliki 12 bit Program Counter (PC) sehingga mampu mengalamati isi flash memori. 2.1.1.3 SRAM ATmega8 memiliki 608 alamat memori data yang terbagi menjadi 3 bagian, yaitu 32 buah register file, 64 buah IO register dan 512 byte internal SRAM. 2.1.1.4 EEPROM ATmega8 juga memiliki memori data berupa EEPROM 8 bit sebesar 512 byte. 2.1.1.5 Register (SREG) Register SREG digunakan untuk menyimpan informasi dari hasil operasi aritmatika yang terakhir. Informasi-informasi dari register SREG dapat digunakan untuk mengubah alur program yang sedang dijalankan dengan menggunakan instruksi percabangan. Data SREG akan selalu akan berubah setiap instruksi atau operasi pada ALU dan datanya tidak otomatis tersimpan apabila terjadi instruksi percabangan baik karena interupsi maupun lompatan.
  • 6. 6 2.1.1.6 Status Register Status register adalah register berisi status yang dihasilkan pada setiap operasi yang dilakukan ketika suatu instruksi dieksekusi. SREG merupakan bagian dari inti CPU mikrokontroler. 2.1.2 Konfigurasi Pin Atmega8 Gambar 2.3 Konfigurasi Pin Atmega8 ATmega8 memiliki 28 Pin, yang masing-masing pin nya memiliki fungsi yang berbeda-beda baik sebagai port maupun fungsi yang lainnya. Berikut akan dijelaskan fungsi dari masingmasing kaki ATmega8 : 1. VCC Merupakan supply tegangan digital. 2. GND Merupakan ground untuk semua komponen yang membutuhkan grounding. 3. Port B (PB7...PB0) Didalam Port B terdapat XTAL1, XTAL2, TOSC1, TOSC2. Jumlah Port B adalah 8 buah pin, mulai dari pin B.0 sampai dengan B.7. Tiap pin dapat digunakan sebagai input maupun output. Port B merupakan sebuah 8-bit bi-directional I/O dengan internal pull-up resistor. Sebagai input, pin-pin yang terdapat pada port B yang secara
  • 7. 7 eksternal diturunkan, maka akan mengeluarkan arus jika pull-up resistor diaktifkan. Khusus PB6 dapat digunakan sebagai input Kristal (inverting oscillator amplifier) dan input ke rangkaian clock internal, bergantung pada pengaturan Fuse bit yang digunakan untuk memilih sumber clock. Sedangkan untuk PB7 dapat digunakan sebagai output Kristal (output oscillator amplifier) bergantung pada pengaturan Fuse bit yang digunakan untuk memilih sumber clock. Jika sumber clock yang dipilih dari oscillator internal, PB7 dan PB6 dapat digunakan sebagai I/O atau jika menggunakan Asyncronous Timer/Counter2 maka PB6 dan PB7 (TOSC2 dan TOSC1) digunakan untuk saluran input timer. 4. Port C (PC5…PC0) Port C merupakan sebuah 7-bit bi-directional I/O port yang di dalam masing-masing pin terdapat pull-up resistor. Jumlah pin nya hanya 7 buah mulai dari pin C.0 sampai dengan pin C.6. Sebagai keluaran/output port C memiliki karakteristik yang sama dalam hal menyerap arus (sink) ataupun mengeluarkan arus (source). 5. RESET/PC6 Jika RSTDISBL Fuse diprogram, maka PC6 akan berfungsi sebagai pin I/O. Pin ini memiliki karakteristik yang berbeda dengan pin-pin yang terdapat pada port C lainnya. Namun jika RSTDISBL Fuse tidak diprogram, maka pin ini akan berfungsi sebagai input reset. Dan jika level tegangan yang masuk ke pin ini rendah dan pulsa yang ada lebih pendek dari pulsa minimum, maka akan menghasilkan suatu kondisi reset meskipun clock-nya tidak bekerja. 6. Port D (PD7…PD0) Port D merupakan 8-bit bi-directional I/O dengan internal pull-up resistor. Fungsi dari port ini sama dengan port-port yang lain. Hanya saja pada port ini tidak terdapat kegunaan-kegunaan yang lain. Pada port ini hanya berfungsi sebagai masukan dan keluaran saja atau biasa disebut dengan I/O. 7. Avcc Pin ini berfungsi sebagai supply tegangan untuk ADC. Untuk pin ini harus dihubungkan secara terpisah dengan VCC karena pin ini digunakan untuk analog saja.
  • 8. 8 Bahkan jika ADC pada AVR tidak digunakan tetap saja disarankan untuk menghubungkannya secara terpisah dengan VCC. Jika ADC digunakan, maka AVcc harus dihubungkan ke VCC melalui low pass filter. 8. AREF Merupakan pin referensi jika menggunakan ADC. Gambar 2.4 Blok Diagram ATmega8 Pada AVR status register mengandung beberapa informasi mengenai hasil dari kebanyakan hasil eksekusi instruksi aritmatik. Informasi ini digunakan untuk altering arus program sebagai kegunaan untuk meningkatkan performa pengoperasian. Register ini di-update setelah operasi ALU (Arithmetic Logic Unit) hal tersebut seperti yang tertulis dalam datasheet khususnya pada bagian Instruction Set Reference. Dalam hal ini untuk beberapa kasus dapat membuang 10 penggunaan kebutuhan instrukasi perbandingan yang telah didedikasikan serta dapat menghasilkan peningkatan dalam hal kecepatan dan kode yang lebih sederhana dan singkat. Register ini tidak secara otomatis tersimpan ketika memasuki sebuah rutin interupsi dan juga ketika menjalankan sebuah perintah setelah kembali dari interupsi. Namun hal tersebut harus dilakukan melalui software. Berikut adalah gambar status register. 9. Bit 7(I) Merupakan bit Global Interrupt Enable. Bit ini harus di-set agar semua perintah interupsi dapat dijalankan. Untuk perintah interupsi individual akan di jelaskan pada
  • 9. 9 bagian yang lain. Jika bit ini di-reset, maka semua perintah interupsi baik yang individual maupun yang secara umum akan di abaikan. Bit ini akan dibersihkan atau cleared oleh hardware setelah sebuah interupsi di jalankan dan akan di-set kembali oleh perintah RETI. Bit ini juga dapat diset dan di-reset melalui aplikasi dan intruksi SEI dan CLL. 10. Bit 6(T) Merupakan bit Copy Storage. Instruksi bit Copy Instructions BLD (Bit Load) and BST (Bit Store) menggunakan bit ini sebagai asal atau tujuan untuk bit yang telah dioperasikan. Sebuah bit dari sebuah register dalam Register File dapat disalin ke dalam bit ini dengan menggunakan instruksi BST, dan sebuah bit di dalam bit ini dapat disalin ke dalam bit di dalam register pada Register File dengan menggunakan perintah BLD. 11. Bit 5(H) Merupakan bit Half Carry Flag. Bit ini menandakan sebuah Half Carry dalam beberapa operasi aritmatika. Bit ini berfungsi dalam aritmatika BCD. 12. Bit 4(S) Merupakan Sign bit. Bit ini selalu merupakan sebuah ekslusif di antara Negative Flag (N) dan two’s Complement Overflow Flag (V). 13. Bit 3(V) Merupakan bit Two’s Complement Overflow Flag. Bit ini menyediakan fungsi aritmatika dua komplemen. 14. Bit 2(N) Merupakan bit Negative Flag. Bit ini mengindikasikan sebuah hasil negative di dalam sebuah fungsi logika atai aritmatika. 15. Bit 1(Z) Merupakan bit Zero Flag. Bit ini mengindikasikan sebuah jasil nol “0” dalan sebuah fungsi aritmatika atau logika.
  • 10. 10 16. Bit 0(C) Merupakan bit Carry Flag. Bit ini mengindikasikan sebuah Carry atau sisa dalam sebuah aritmatika atau logika. 2.2 Kristal Kristal umumnya digunakan untuk rangkaian osilator yang menuntutstabilitas frekuensi yang tinggi dalam jangka waktu yang panjang. Alasan utamanya adalah karena perubahan nilai frekuensi kristal seiring dengan waktu, atau disebut juga dengan istilah faktor frequency aging, jauh lebih kecil daripadaosilator-osilator lain. Faktor frequency aging untuk kristal berkisar pada angka±5ppm/tahun, jauh lebih baikdaripada faktor frequency aging osilator RC ataupunosilator LC yang biasanya berada diatas±1%/tahun. Kristal juga mempunyai stabilitas suhu yang sangat bagus. Padaumumnya, nilai koefisien suhu kristal berada dikisaran ±50ppm direntangan suhuoperasi normal dari -20°C sampai dengan +70°C. Untuk aplikasi yangmenuntut stabilitas suhu yang lebih tinggi, kristal dapat dioperasikan didalamsebuah oven kecil yang dijaga agar suhunya selalu konstan. Fungsi Kristal pada Sistem Minimum (Sismin) adalah sebagai pembangkit/pemompa data yaitu bersifat timer (semacam clock)/pulsa digital. Oleh karena itu, kristal memiliki sebuah frekuensi. Kristal terbuat dari bahan alam yang menunjukkan efek piezoelektrik,sehingga sering disebut Kristal Piezoelektrik. Bahan utama kristal yang dapatmenimbulkan efek piezoelektrik adalah garam rachelle,tourmaline dan quarte. Frekuensi, resonansi dan nilai Q – nya (Qualityfactor) tergantung pada dimensi kristal, orientasi permukaan pada sumbu-sumbu kristal dan bagaimana komponen tersebut dipasang ( Mounted) jangkauan frekuensinya dari beberapa KHz sampai beberapa MHz. Pada hakikatnya, frekuensi dari suatu osilator kristal hanya ditentukan oleh kristal itu sendiri dan tidak oleh komponen lainnya. Lambang kristal dapat dilihat pada gambar 2.6. (a) (b) Gambar 2.5 (a) Simbol Kristal dan (b) Bentuk Fisik Kristal
  • 11. 11 Sesuai dengan simbolnya kristal dipasang diantara 2 buah elektroda logam dimana elektroda tersebut merupakan kapasitas dan kristalnya sebagai dielektrik. Konstruksi kristal digenggam dengan kuat oleh kedua elektroda tersebut, namun tidak menghalangi kristal dalam getarannya. Dalam beresonansi kristal mempunyai cara kerja yang sama dengan rangkaian LC, karena mempunyai frekuensi resonansi (fs). Gambar 2.6 Rangkaian Ekuivalen Kristal L,R,C adalah ekuivalen listrik kristal, apabila sedang bergetar. Adapun bentuk lengkung resonansi kristal dapat dilihat pada gambar 2.7. Gambar 2.7 Lengkung Resonansi Kristal Frekuensi resonansi deret (fs) dan frekuensi resonansi jajar (fp) sangat berdekatan, jaraknya kira-kira 100Hz. Dari lengkungan fs dan fp bahwa rangkaian LC mempunyai faktor Q yang sangat tinggi hingga mencapai 1.000.000. Karenanilai Q yang sangat tinggi tersebut maka kristal dapat dipakai sebagai rangkaianLC konvensional.
  • 12. 12 2.3 Power Supply DC (Direct Current) Catu daya merupakan sesuatu yang sangat penting untuk semua rangkaianelektronika.Catu daya yang baik adalah catu daya yang dapat menyuplai keseluruhan sistem dengan tegangan yang stabil terhadap konsumsi arus yang dibutuhkan sistem. 2.3.1 Rangkaian Regulator Regulator ini dimaksudkan untuk memberi kemampuan catu yang stabilpada keseluruhan sistem dengan menggunakan sebuah integrasi regulatortegangan tetap yakni IC Regulator.Dimana memiliki internal current limiting,thermal shutdown dan safe operation area protection.Gambar rangkaian catudaya ini dapat dilihat pada gambar 2.8. Gambar 2.8 Rangkaian Fixed Voltage Regulator Power Supply DC Arus keluaran dari IC78XXdapatditambah (boosted)dengan adanya eksternal transistor PNP pass. IC Regulatorakan menyuplai semua kebutuhanarus. Pada saat tegangan jatuh tersebut berlangsung, maka transistor akan aktif.Dengan aktifnya transistor maka akan menambah arus bagi beban. Adapun blok rangkaian dalam IC Regulator 78XX dapat dilihat padagambar 2.9.
  • 13. 13 Gambar 2.9 Blok Rangkaian Dalam IC Regulator 78XX Pada blok diagram dapat dilihat bahwa IC Regulator 78XX telah mempunyai sebuah sistem regulasi tegangan yang lengkap dansistem pengamanan terhadap beban berlebih. Serta pengamanan dari suhu yang melebihi jangkauan temperatur pada saat pengoperasian. Namun idealnya sebuah regulator harus dipasangheat sink untuk pencegahan panas pada kemasaan IC. 2.4 LCD ( Liquid Crystal Display ) LCD (Liquid Crystal Display) skrin adalah modul paparan elektronik yang digunakan secara meluas dalam pelbagai aplikasi. Skrin LCD merupakan modul asas yang digunakan bersama dengan peranti masukan atau keluaran elektronik yang lain. LCD skrin lebih diminati ramai berbanding paparan 7 ruas (7 segment) kerana fungsinya yang pelbaai, mudah untuk diprogramkan, tidak memiliki batasan untuk memaparkan aksara dan ianya juga boleh diprogramkan untuk memaparkan animasi yang dikehendaki serta paparan yang lebih jelas. LCD 16x2 seperti diatas boleh memaparkan 16 aksara per baris dan mempunyai 2 baris paparan. Setiap aksara akan dipaparkan dalam 5x7 pixel matrix. LCD jenis ini mempunyai dua register, iaitu arahan(command) dan data.
  • 14. 14 Register arahan berfugnsi menyimpan arahan yang diberikan kepada LCD. Command adalah arahan yang diberikan untuk LCD bagi melakukan tugas yang telah ditetapkan seperti manganalisis arahan, menulis dan memadam aksara, mengubah kedudukan cursor dan pelbagai arahan lagi. kawalan paparan dll data register menyimpan data yang akan dipaparkan pada LCD.Data register pula berfungsi untuk menyimpan data yang akan dipaparkan pada paparan LCD. Data adalah nilai aksara bagi ASCII yang akan dipaparkan pada LCD. Gambar 2.10 LCD (Liquid Crystal Display) 2.5 Real Time Clock (RTC) DS1307 Real Time Clock merupakan suatu chip (IC) yang memiliki fungsi sebagai penyimpan waktu dan tanggal. RTC DS1307 merupakan Real-time clock (RTC) yang dapat meyimpan datadata detik, menit, jam, tanggal, bulan, hari dalam seminggu, dan tahun valid hingga 2100. 56byte, battery-backed, RAM nonvolatile (NV) RAM untuk penyimpanan. RTC DS1307 merupakan Real-time clock (RTC) dengan jalur data parallel yang memiliki Antarmuka serial Two-wire (I2C), Sinyal luaran gelombang-kotak terprogram (Programmable squarewave), Deteksi otomatis kegagalan-daya (power-fail) dan rangkaian switch, Konsumsi daya kurang dari 500nA menggunakan mode baterai cadangan dengan operasional osilator. Tersedia fitur industri dengan ketahana suhu: -40°C hingga +85°C. Tersedia dalam kemasa 8-pin DIP atau SOIC.
  • 15. 15 Gambar 2.11 RTC DS1307 Berikut Penjelasan Pin-Pin Pada IC RTC DS1307 1. X1 Merupakan pin yang digunakan untuk dihubungkan dengan kristal sebagai pembangkit clock. 2. X2 Berfungsi sebagai keluaran / output dari crystal yang digunakan. Trhubung juga dengan X1. 3. VBAT Merupakan backup supply untuk RTC DS1307 dalam menjalankan fungsi waktu dan tanggal. Besarnya adalah 3V dengan menggunakan jenis Lithium Cell atau sumber energy lain. Jika pin ini tidak di gunakan maka harus terhubung dengan Ground. Sumber teganggan dengan 48mAH atau lebih besar dapat digunakan sebagai cadangan energy sampai lebih dar 10 tahun, namun dengan persyaratan untuk pengoprasian dalam suhu 25°C. 4. GND Berfungsi sebagai Ground. 5. SDA Barfungsi sebagai masukan / keluaran (I/O) untuk I2C serial interface. Pin ini bersifat open drain, oleh sebab itu membutuhkan eksternal pull up resistor.
  • 16. 16 6. SCL Berfungsi sebagai clock untuk input ke I2C dan digunakan untuk mensinkronisasi pergerakan data dalam serial interface. bersifat open drain, oleh sebab itu membutuhkan eksternal pull up resistor. 7. SWQ/OUT Sebagai square wafe / Output Driver . jika di aktifkan, maka akan menjadi 4 frekuensi gelombang kotak yaitu 1 Hz, 4kHz, 8kHz, 32kHz sifat dari pin ini sama dengan sifat pin SDA dan SCL sehingga membutuhkan eksternal pull up resistor. Dapat dioprasikan dengan VCC maupun dengan VBAT. 8. VCC Merupakan sumber tegangan utama. Jika sumber tegangan terhubung dengan baik, maka pengaksesan data dan pembacaan data dapat dilakukan dengan baik. Namun jika backup supply terhubung juga dengan VCC, namun besar VCC di bawah VTP, maka pengaksesan data tidak dapat dilakukan. 2.6 Sensor Suhu IC LM35 Untuk mendeteksi suhu digunakan sebuah sensor suhu LM35 yang dapat dikalibrasikan langsung dalam satuan derajat Celcius.LM35 ini difungsikan sebagai basic temperature sensor seperti pada gambar di bawah. Gambar 2.12 LM35 basic temperature sensor
  • 17. 17 IC LM35 sebagai sensor suhu yang teliti dan terkemas dalam bentuk Integrated Circuit (IC), dimana output tegangan keluaran sangat linear berpadanan dengan perubahan suhu. Sensor ini berfungsi sebagai pengubah dari besaran fisis suhu ke besaran tegangan yang memiliki koefisien sebesar 10 mV /°C yang berarti bahwakenaikan suhu 1° C maka akan terjadi kenaikan tegangan sebesar 10 mV. IC LM35 ini tidak memerlukan pengkalibrasian atau penyetelan dari luar karena ketelitiannya sampai lebih kurang seperempat derajat celcius pada temperatureuang.Jangka sensor mulai dari – 55°C sampai dengan 150°C.IC LM35penggunaannya sangat mudah, difungsikan sebagai kontrol dari indikator tampilan catu daya terbelah.IC LM35 dapat dialiri arus 60 mA dari supply sehingga panas yang ditimbulkan sendiri sangat rendah kurang dari 0 ° C di dalam suhu ruangan. Gambar 2.13 Rangkaian Pengukur Suhu LM35 ialah sensor temperatur paling banyak digunakan untuk praktikum, karena selain harganya cukup murah, linearitasnya juga lumayan bagus. LM35 tidak membutuhkan kalibrasi eksternal serta menyediakan akurasi ± ¼ °C pada temperatur ruangan dan ± ¾ °C pada kisaran -55 °C to +150 °C. LM35 dimaksudkan untuk beroperasi pada -55 °C hingga +150 °C, sedangkan LM35C pada -40 °C hingga +110 °C, dan LM35D pada kisran 0-100°C. LM35D juga tersedia pada paket 8 kaki dan paket TO-220. Sensor LM35 umumnya akan naik sebesar 10mV setiap kenaikan 1°C (300mV pada 30 °C). Gambar 2.14 Bentuk Fisik LM35
  • 18. 18 Sensor suhu LM35 berfungsi untuk mengubah besaran fisis yang berupa suhu menjadi besaran elektri tegangan. Sensor ini memiliki parameter bahwa setiap kenaikan 1°C tegangan keluarannya naik sebesar 10mV dengan batas maksimal keluaran sensor adalah 1,5V pada suhu 150°C. Pada perancangan kita tentukan keluaran ADC mencapai full scale pada saat suhu 100°C, sehingga tegangan keluaran tranduser (10mV/°C x 100°C) = 1V. Pengukuran secara langsung saat suhu ruang, keluaran LM35 adalah 0,3V (300mV). Tengan ini diolah dengan mengunakan rangkaian pengkondisi sinyal agar sesuai dangan tahapan masukan ADC. LM35 memiliki karakteristik sebagai berikut: 1. Di kalibrasi langsung dalam Celsius. 2. Memiliki faktor skala linear + 10.0 mV/°C. 3. Memiliki ketetapan 0,5°C pada suhu 25°C. 4. Jangkauan maksimal suhu antara -55°C sampai 150°C. 5. Cocok untuk applikasi jarak jauh. 6. Harganya cukup murah. 7. Bekerja pada tegangan catu daya 4 sampai 30Volt. 8. Memiliki arus drain kurang dari 60 uA. 9. Pemanasan sendiri yang lambat ( low self-heating)0,08˚C diudara diam. 10. Ketidak linearanya hanya sekitar ±¼°C. 11. Memiliki Impedansi keluaran yang kecil yaitu 0,1 watt untuk beban 1 mA. Sensor suhu tipe LM35 merupakan IC sensor temperatur yang akurat yang tegangan keluarannya linear dalam satuan celcius. Jadi LM35 memilik kelebihan dibandingkan sensor temperatur linear dalam satuan kelvin, karena tidak memerlukan pembagian dengan konstanta tegangan yang besar dan keluarannya untuk mendapatkan nilai dalam satuan celcius yang tepat. LM35 memiliki impedansi keluaran yang rendah, keluaran yang linear, dan sifat ketepatan dalam pengujian membuat proses interface untuk membaca atau mengotrol sirkuit lebuh mudah. Pin V+ dari LM35 dihubungkan kecatu daya, pin GND dihubungkan ke Ground dan pin Vout- yang menghasilkan tegangan analog hasil pengindera suhu dihubungkan ke vin (+) dan ADC 0840.
  • 19. 19 BAB 3 PERANCANGAN JAM DIGITAL DENGAN LCD 16X2 3.1 Komponen rangkaian jam digital dengan lcd 16x2 1. capacitor 10uf / 16 volt 2 Buah 2. Xtall 16 Khz 1 Buah 3. Xtall 32 Khz 1 Buah 4. Baterai CMOS dan Soket 1 Buah 5. RTC DS1307+socket 1 Buah 6. ATmega8 + socket 1 Buah 7. Push button (tombol) 3 Buah 8. Regulator 7805 1 Buah 9. LCD 16x2 1 Buah 10. LM35 1 Buah 11. resistor 1 K 1 Buah 12. resistor 10 K 2 Buah
  • 20. 20 3.2 Skematik Segment Jam Digital Dengan LCD 16X2
  • 21. 21 3.3 Tampilan Layout Jam Digital Dengan LCD 16x2
  • 22. 22 BAB 4 PENUTUP 4.1 Kesimpulan Mikrokontroler ATMega8 dapat dirancang menjadi sebuah jam digital, Dengan rangkaian sederhana dalam membuat sebuah rangkaian kita tentunya dituntut untuk paham dari dari sebuah microcontroler yang kita gunakan. Pada program, waktu pertama dimulai jam 00.00.00, maka dalam awal pengoperasiannya perlu menunggu waktu tengah malam supaya jam ini sesuai dengan waktu yang sebenarnya. Hai ni merupakan salah satu kelemahan jam ini, namun jika kita tidak ingin menunggu waktu sampai tengah malam maka perlu ada sedikit modifikasi pada awal program
  • 23. 23 LISTING PROGRAM Jam.c /***************************************************** Chip type : ATmega8 Program type : Application Clock frequency : 12.000000 MHz Memory model : Small External SRAM size : 0 Data Stack size : 256 *****************************************************/ #include <mega8.h> #include <delay.h> #include <stdio.h> // I2C Bus functions #include <i2c.h> // DS1307 Real Time Clock functions #include <ds1307.h> // Alphanumeric LCD functions #include <alcd.h> #define ADC_VREF_TYPE 0x40 #define UP PINC.4 #define MENU PINC.5 #define DOWN PINC.3 unsigned char jam,menit,detik,ii,i,flag_detik; int data_suhu; int suhu;
  • 24. 24 unsigned char suhup,suhus,jamp,jams,menitp,menits,detikp,detiks; char lcd_buffer[33]; unsigned int read_adc(unsigned char adc_input) { ADMUX=adc_input | (ADC_VREF_TYPE & 0xff); // Delay needed for the stabilization of the ADC input voltage delay_us(10); // Start the AD conversion ADCSRA|=0x40; // Wait for the AD conversion to complete while ((ADCSRA & 0x10)==0); ADCSRA|=0x10; return ADCW; } void konversi_suhu() {suhup=data_suhu/10; suhus=data_suhu%10;} void konversi() {jamp=jam/10; jams=jam%10; menitp=menit/10; menits=menit%10; detikp=detik/10; detiks=detik%10; } void setting_menit() { lcd_clear(); while(i==1) {
  • 27. 27 PORTB=0x00; DDRB=0x00; // Port C initialization // Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In State5=T State4=T State3=T State2=T State1=T Func0=In // State6=T State0=T PORTC=0x38; DDRC=0x00; // Port D initialization // Func7=Out Func6=Out Func5=Out Func4=Out Func3=Out Func2=Out Func1=Out Func0=Out // State7=0 State6=0 State5=0 State1=0 State0=0 PORTD=0x00; DDRD=0xFF; // Timer/Counter 0 initialization // Clock source: System Clock // Clock value: Timer 0 Stopped TCCR0=0x00; TCNT0=0x00; // Timer/Counter 1 initialization // Clock source: System Clock // Clock value: Timer1 Stopped // Mode: Normal top=0xFFFF // OC1A output: Discon. // OC1B output: Discon. // Noise Canceler: Off // Input Capture on Falling Edge // Timer1 Overflow Interrupt: Off State4=0 State3=0 State2=0
  • 28. 28 // Input Capture Interrupt: Off // Compare A Match Interrupt: Off // Compare B Match Interrupt: Off TCCR1A=0x00; TCCR1B=0x00; TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00; // Timer/Counter 2 initialization // Clock source: System Clock // Clock value: Timer2 Stopped // Mode: Normal top=0xFF // OC2 output: Disconnected ASSR=0x00; TCCR2=0x00; TCNT2=0x00; OCR2=0x00; // External Interrupt(s) initialization // INT0: Off // INT1: Off MCUCR=0x00; // Timer(s)/Counter(s) Interrupt(s) initialization TIMSK=0x00; // USART initialization // USART disabled
  • 29. 29 UCSRB=0x00; // Analog Comparator initialization // Analog Comparator: Off // Analog Comparator Input Capture by Timer/Counter 1: Off ACSR=0x80; SFIOR=0x00; // ADC initialization // ADC Clock frequency: 500,000 kHz // ADC Voltage Reference: AVCC pin ADMUX=ADC_VREF_TYPE & 0xff; ADCSRA=0x81; // SPI initialization // SPI disabled SPCR=0x00; // TWI initialization // TWI disabled TWCR=0x00; // I2C Bus initialization // I2C Port: PORTB // I2C SDA bit: 2 // I2C SCL bit: 1 // Bit Rate: 100 kHz // Note: I2C settings are specified in the // Project|Configure|C Compiler|Libraries|I2C menu. i2c_init(); // DS1307 Real Time Clock initialization // Square wave output on pin SQW/OUT: On // Square wave frequency: 1Hz
  • 30. 30 rtc_init(0,1,0); // Alphanumeric LCD initialization // Connections are specified in the // Project|Configure|C Compiler|Libraries|Alphanumeric menu: // RS - PORTD Bit 7 // RD - PORTD Bit 5 // EN - PORTD Bit 6 // D4 - PORTD Bit 3 // D5 - PORTD Bit 2 // D6 - PORTD Bit 1 // D7 - PORTD Bit 0 // Characters/line: 16 lcd_init(16); rtc_get_time(&jam,&menit,&detik); if(detik>59) {rtc_set_time(jam,menit,0);} ii=0; suhu=read_adc(2); while (1) { //program tapil suhu if(detik==flag_detik) {}; if(detik!=flag_detik) { ii+=1; flag_detik=detik; } if(ii==3) { suhu=read_adc(2); ii=0; LCD
  • 31. 31 } data_suhu=(suhu*5)/1.024; data_suhu=(data_suhu/10); konversi_suhu(); lcd_gotoxy(0,0); sprintf(lcd_buffer,"Suhu Ruangan: %d%d C",suhup,suhus); lcd_puts(lcd_buffer); //program tampil jam rtc_get_time(&jam,&menit,&detik); konversi(); lcd_gotoxy(0,1); sprintf(lcd_buffer,"Jam: %d%d:%d%d:%d%d",jamp,jams,menitp,menits,detikp,detiks); lcd_puts(lcd_buffer); //program cek tombol //MENU=read_adc(5); if (MENU==0) { delay_ms(500); setting_jam(); } } }