Professional Documents
Culture Documents
Instruktur:
Disusun oleh:
Indra Bayu Winardi (1331130027)
Kelas TT 2B
2014
Daftar Isi
B. 7Segment ........................................................................................................ 6
C. Potensiometer ................................................................................................. 7
PENUTUP ............................................................................................................. 28
A. Analisis ......................................................................................................... 28
B. Kesimpulan ................................................................................................... 28
2
DASAR TEORI
A. Mikrokontroler ATMEGA16
Mikrokontroler adalah sebuah sistem komputer lengkap dalam satu serpih
(chip). Mikrokontroler lebih dari sekedar sebuah mikroprosesor karena sudah
terdapat atau berisikan ROM (Read-Only Memory), RAM (Read-Write Memory),
beberapa bandar masukan maupun keluaran, dan beberapa peripheral seperti
pencacah/pewaktu, ADC (Analog to Digital converter), DAC (Digital to Analog
converter) dan serial komunikasi.
Salah satu mikrokontroler yang banyak digunakan saat ini yaitu
mikrokontroler AVR. AVR adalah mikrokontroler RISC (Reduce Instuction Set
Compute) 8 bit berdasarkan arsitektur Harvard. Secara umum mikrokontroler
AVR dapat dapat dikelompokkan menjadi 3 kelompok, yaitu keluarga AT90Sxx,
ATMega dan ATtiny. Pada dasarnya yang membedakan masing-masing kelas
adalah memori, peripheral, dan fiturnya.
Seperti mikroprosesor pada umumnya, secara internal mikrokontroler
ATMega16 terdiri atas unit-unit fungsionalnya Arithmetic and Logical Unit
(ALU), himpunan register kerja, register dan dekoder instruksi, dan pewaktu
beserta komponen kendali lainnya. Berbeda dengan mikroprosesor,
mikrokontroler menyediakan memori dalam serpih yang sama dengan
prosesornya (in chip).
A.1 Arsitektur ATmega 16
Mikrokontroler ini menggunakan arsitektur Harvard yang memisahkan
memori program dari memori data, baik bus alamat maupun bus data, sehingga
pengaksesan program dan data dapat dilakukan secara bersamaan (concurrent).
Secara garis besar mikrokontroler ATMega16 terdiri dari :
1. Arsitektur RISC dengan throughput mencapai 16 MIPS pada frekuensi 16Mhz.
2. Memiliki kapasitas Flash memori 16Kbyte, EEPROM 512 Byte, dan SRAM
1Kbyte
3. Saluran I/O 32 buah, yaitu Bandar A, Bandar B, Bandar C, dan Bandar D.
4. CPU yang terdiri dari 32 buah register.
5. User interupsi internal dan eksternal
6. Bandar antarmuka SPI dan Bandar USART sebagai komunikasi serial
3
7. Fitur Peripheral
Dua buah 8-bit timer/counter dengan prescaler terpisah dan mode
compare.
Satu buah 16-bit timer/counter dengan prescaler terpisah, mode compare
dan mode capture.
Real time counter dengan osilator tersendiri.
Empat kanal PWM dan Antarmuka komparator analog.
8 kanal, 10 bit ADC.
Byte-oriented Two-wire Serial Interface
Watchdog timer dengan osilator internal.
4
Gambar 2.1 Blok diagram ATMega16
5
B. 7Segment
Layar tujuh segmen (bahasa
Inggris: Seven-segment display (SSD))
adalah salah satu perangkat layar untuk
menampilkansistem angka desimal yang
merupakan alternatif dari layar dot-matrix.
Layar tujuh segmen ini seringkali digunakan
pada jam digital, meteran elektronik, dan
perangkat elektronik lainnya yang
menampilkan informasi numerik.[1] Ide
mengenai layar tujuh segmen ini sudah cukup tua. Pada tahun 1910 misalnya, sudah
ada layar tujuh segmen yang diterangi oleh lampu pijar yang digunakan pada panel
sinyal kamar ketel suatu pembangkit listrik.
B.1 Konsep dan struktur tampilan
Tujuh bagian dari layar dapat dinyalakan
dalam bermacam-macam kombinasi untuk
menampilkan angka Arab. Sering ketujuh segmen
tersebut disusun dengan kemiringan tertentu, untuk
memudahkan pembacaan. Pada sebagian besar
penerapannya, ketujuh segmen ini memiliki bentuk
dan ukuran yang hampir seragam
(biasanya segienam panjang, walaupun trapesium
dan persegi panjang juga dapat digunakan.
B.2 Cara kerja
Layar tujuh segmen ini terdiri dari 7 buah LED yang membentuk angka 8
dan 1 LED untuk titik/DP. Angka yang ditampilkan di seven segmen ini dari 0-9.
Cara kerja dari seven segmen disesuaikan dengan LED. LED merupakan
komponen diode yang dapat memancarkan cahaya. kondisi dalam keadaan ON
jika sisi anode mendapatkan sumber positif dari Vcc dan katode mendapatkan
sumber negatif dari ground.
6
C. Potensiometer
Potensiometer adalah resistor tiga terminal
dengan sambungan geser yang membentuk pembagi
tegangan dapat disetel. Jika hanya dua terminal yang
digunakan (salah satu terminal tetap dan terminal
geser), potensiometer berperan sebagai resistor
variabel atau Rheostat. Potensiometer biasanya
digunakan untuk mengendalikan peranti elektronik
seperti pengendali suara pada penguat. Potensiometer
yang dioperasikan oleh suatu mekanisme dapat digunakan sebagai transduser,
misalnya sebagai sensor joystick.
1. Elemen resistif
2. Badan
3. Penyapu (wiper)
4. Sumbu
5. Sambungan tetap
6. Sambungan penyapu
7. Cincin
8. Baut
9. Sambungan tetap
Potensiometer jarang digunakan untuk mengendalikan daya tinggi (lebih
dari 1 Watt) secara langsung. Potensiometer digunakan untuk menyetel taraf
isyarat analog (misalnya pengendali suara pada peranti audio), dan sebagai
pengendali masukan untuk sirkuit elektronik. Sebagai contoh, sebuah peredup
lampu menggunakan potensiometer untuk menendalikan pensakelaran
sebuah TRIAC, jadi secara tidak langsung mengendalikan kecerahan lampu.
7
D. LDR (Light Dependent Resistor)
LDR singkatan dari Light Dependent Resistor adalah resistor yang nilai
resistansinya berubah-ubah karena adanya intensitas cahaya yang diserap. LDR
juga merupakan resistor yang mempunyai koefisien temperature negative, dimana
resistansinya dipengaruhi oleh intrensitas cahaya. LDR dibentuk dari cadium
Sulfied (CDS) yang mana CDS dihasilkan dari serbuk keramik. Secara umum,
CDS disebut juga peralatan photo conductive, selama konduktivitas atau resistansi
dari CDS bervariasi terhadap intensitas cahaya. Jika intensitas cahaya yang
diterima tinggi maka hambatan juga akan tinggi yang mengakibatkan tengangan
yang keluar juga akan tinggi begitu juga sebaliknya disinilah mekanisme proses
perubahan cahaya menjadi listrik terjadi.
CDS tidak mempunyai sensitivitas yang sama pada tiap panjang
gelombang dari ultraviolet sampai dengan infra merah. Hal tersebut dinamakan
karakteristik respon spectrum dan diberikan oleh pabrik. CDS banyak digunakan
dalam perencanaan rangkaian bolak-balik (AC) dibandingkan denagn photo
transistor dan photo dioda.
8
E. Algoritma Program
1. Inisialisasi Port
- PA = input
- PC = output (7 segmen)
2. Start ADC
3. Baca data ADC
4. Tampilkan pada 7Segment
9
F. Flowchart Program
10
G. Listing Program
#include <mega16.h>
#include <delay.h>
#define ADC_VREF_TYPE 0x60
11
TCNT0=0x00;
OCR0=0x00;
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
ASSR=0x00;
TCCR2=0x00;
TCNT2=0x00;
OCR2=0x00;
MCUCR=0x00;
MCUCSR=0x00;
TIMSK=0x00;
UCSRB=0x00;
ACSR=0x80;
SFIOR=0x00;
ADMUX=ADC_VREF_TYPE & 0xff;
ADCSRA=0x84;
SPCR=0x00;
TWCR=0x00;
while (1)
{
pot=read_adc(0);
RATUSAN=pot/100;
PULUHAN=(pot%100)/10;
12
SATUAN=pot%10;
PORTC=seg[RATUSAN];
delay_ms(500);
PORTC=0XFF;
delay_ms(500);
PORTC=seg[PULUHAN];
delay_ms(500);
PORTC=0XFF;
delay_ms(500);
PORTC=seg[SATUAN];
delay_ms(500);
PORTC=0XFF;
delay_ms(1000);
13
PORTC=nim[i];
delay_ms(500);
PORTC=0xff;
delay_ms(500);
}}
}
}
14
H. Program dan penjelasannya
H.1. Program 1
#include <mega16.h>
#include <delay.h>
unsigned char i;
unsigned char nama[5] = {0xcf, 0xab, 0xa1, 0xce, 0x20};
Beri logika nol pada huruf led yang ingin di nyalakan, dan lainnya di
beri logika satu agar mati. Beri 0x untuk awalan data hasil konversi. Berikut
adalah data hasil konversi.
15
H.1.1 Tabel hasil konversi
Kaki 7 Segment
Data Hexsa
Output 7 segment h g f e d c b a
I 1 1 0 0 1 1 1 1 0xcf
n 1 0 1 0 1 0 1 1 0xab
d 1 0 1 0 0 0 0 1 0xa1
r 1 1 0 0 1 1 1 0 0xce
a. 0 0 1 0 0 0 0 0 0x20
H.2. Program 2
pot=read_adc(0);
RATUSAN=pot/100;
PULUHAN=(pot%100)/10;
SATUAN=pot%10;
PORTC=seg[RATUSAN];
delay_ms(500);
PORTC=0XFF;
delay_ms(500);
PORTC=seg[PULUHAN];
delay_ms(500);
PORTC=0XFF;
delay_ms(500);
PORTC=seg[SATUAN];
delay_ms(500);
PORTC=0XFF;
delay_ms(1000);
16
Scrip pot=read_adc(0); berfungsi untuk membaca ADC dan (0)
digunakan untuk memilih chanel dikaki ATmega 16 pada port A. Scrip
RATUSAN=pot/100; PULUHAN=(pot%100)/10; SATUAN=pot%10; adalah
rumus untuk mencari nilai ratusan, puluhan dan satuan.
Berikut scrip untuk menampilkan nilai ADC dari rumus diatas :
PORTC=seg[RATUSAN];
delay_ms(500);
PORTC=0XFF;
delay_ms(500);
PORTC=seg[PULUHAN];
delay_ms(500);
PORTC=0XFF;
delay_ms(500);
PORTC=seg[SATUAN];
delay_ms(500);
PORTC=0XFF;
delay_ms(1000);
Scrip berikut adalah scrip untuk menampilkan nama jika nilai pot = 0-50.
if(pot>=0 && pot<=50){
for(i=0;i<5;i++){
PORTC=nama[i];
delay_ms(500);
PORTC=0xff;
delay_ms(500); }}
17
I. Tampilan Hasil Pada Software Proteus
1. Tampilan hasil program pada proteus yang menggunakan potensio 10k
Rangkaian pada Software Proteus yang menggunakan potensio 10k :
18
1. Menampilkan Nama jika hasil ADC = 0-50.
Catatan : Tiga digit pertama menampilakan nilai hasil ADC dari potensio.
Catatan : Tiga digit pertama menampilakan nilai hasil ADC dari potensio.
Catatan : Tiga digit pertama menampilakan nilai hasil ADC dari potensio.
19
4. Menampilkan Nomor Handphone jika hasil ADC = 151-200.
Catatan : Tiga digit pertama menampilakan nilai hasil ADC dari potensio.
Catatan : Tiga digit pertama menampilakan nilai hasil ADC dari potensio.
20
2. Tampilan hasil program pada proteus yang menggunakan LDR.
Rangkaian pada Software Proteus yang menggunakan LDR :
21
J. Tampilan hasil praktek
1. Tampilan hasil praktek yang menggunakan Potensio 10k.
a. Nilai hasil ADC = 0-50 akan menampilkan Nama.
Catatan : Tiga digit pertama menampilakan nilai hasil ADC dari potensio.
22
Catatan : Tiga digit pertama menampilakan nilai hasil ADC dari potensio.
Catatan : Tiga digit pertama menampilakan nilai hasil ADC dari potensio.
23
d. Nilai hasil ADC = 151-200 akan menampilkan Nomor Handphone.
Catatan : Tiga digit pertama menampilakan nilai hasil ADC dari potensio.
24
e. Nilai hasil ADC = 201-255 akan menampilkan Nomor Absen dan Kelas.
Catatan : Tiga digit pertama menampilakan nilai hasil ADC dari potensio.
25
2. Tampilan hasil praktek yang menggunakan LDR.
a. Nilai hasil ADC = 0-50 akan menampilkan Nama.
Catatan : Tiga digit pertama menampilakan nilai hasil ADC dari LDR.
Catatan : Tiga digit pertama menampilakan nilai hasil ADC dari LDR.
Catatan : Tiga digit pertama menampilakan nilai hasil ADC dari LDR.
26
d. Nilai hasil ADC = 151-200 akan menampilkan Nomor Handphone.
Catatan : Tiga digit pertama menampilakan nilai hasil ADC dari LDR.
e. Nilai hasil ADC = 201-255 akan menampilkan Nomor Absen dan Kelas.
Catatan : Tiga digit pertama menampilakan nilai hasil ADC dari LDR.
27
PENUTUP
A. Analisis
Faktor-faktor yang mempengaruhi dalam praktikum Mikrokontroller dan
Intefacing :
Pada program :
B. Kesimpulan
Dari semua pembahasan beberapa kesimpulan antara lain adalah sebagai
berikut :
28