Anda di halaman 1dari 17

LAPORAN

SISTEM MIKROKONTROLER DASAR


SEMESTER 4
Project Potensio & 7 segmen
Pembimbing :
Ir. Azam Muzakhim Imammudin, MT

Penyusun :
Aulia Pratama Riwayanto

1341160002 JTD 2C

Jaringan Telekomunikasi Digital


POLITEKNIK NEGERI MALANG
Jalan Soekarno-Hatta No. 9, PO BOX 04, Malang 65141
Tel. (0341) 404424, 404425, FAX. (0341) 404420
2015

BAB I
PENDAHULUAN
1.1 Latar Belakang
Mikrokontroler adalah sebuah sistem komputer lengkap dalam satu chip.
Mikrokontroler lebih dari sekedar sebuah mikroprosesor karena sudah terdapat atau
berisikan ROM (Read-Only Memory), RAM (Read-Write Memory), beberapa port
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
serta komponen kendali lainnya. Berbeda dengan mikroprosesor, mikrokontroler
menyediakan memori dalam chip yang sama dengen prosesornya (inchip).Dan disini
saya kana mencoba membuat cek pintu otomatis menggunakan USART pada sebuah
toko.
1.2

Rumusan Masalah
Berdasarkan latar belakang masalah tersebut maka dapat ditentukan rumusan
masalah sebagai berikut :
1. Membuat project mikrokontroler dengan program C AVR Usart berbasis
ATMega16 dengan tema sesuai keinginan masing-masing mahasiswa dan disini
saya akan membuat aplikasi smart button dengan output berupda graphic
led,lcd,motor dc dan heater oven.

1.3 Maksud dan Tujuan

Maksud dari makalah ini adalah untuk menjelaskan bagaimana USART dapat
bekerja pada ATMega16 dengan output sesuai aplikasi yg akan dibuat mahasiswa.

BAB II
DASAR TEORI
2.1

Mikrokontroler Atmega 16
Mikrokontroler adalah sebuah system computer lengkap dalam satu chip.
Mikrokontroler ATMega16 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 RSIC dengan throughput 16 MIPS pada frekuensi 16MHz
2. Memiliki kapasitas Flash memori 16Kbyte, EEPROM 512 Byte, dan SRAM
1Kbyte.
3. Saluran I/O 32 buah, yaitu Port A, Port B, Port C, dan Port D.
4. CPU yang terdiri dari 32 buah register.
5. User interupsi internal dan eksternal
6. Port antarmuka SPI dan Port USART sebagai komunikasi serial
7. Fitur pheriperal

Dua buah 8-bit timer/counterdengan 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


3

Byte-oriented Two-wire Serial Interface

8. Non-volatile program memory

2.2

Konfigurasi Pena (PIN) Atmega16

Konfigurasi pin ATMEGA16 dengan kemasan 40 pin Dual In-line Package


(DIP) dapat dilihat pada Gambar 2.13. dari gambar diatas dapat dijelaskan
fungsi dari masing-masing pin ATMEGA16 sebagai berikut.
1. VCC merupakan pin yang brfungsi sebagai masukan catu daya
2. GND merupakan pin Ground
3. Port A (PA0 PA7) merupakan pin input/output dua arah (full duplex) dan
selain itu merupakan pin masukan ADC.

4. Pin B adalah suatu pin I/O 8-bit dua arah dengan resistor internal pull-up
(yang dipilih untuk beberapa bit).

5. Pin C adalah suatu pin I/O 8-bit dua arah dengan resistor internal pull-up (yang
dipilih untuk beberapa bit.

6. Pin D adalah suatu pin I/O 8-bit dua arah dengan resistor internal pull-up (yang
dipilih untuk beberapa bit). Pin D adalah tri-stated manakala suatu kondisi reset
menjadi aktif, sekalipun waktu habis.
1) Reset (Reset Input)
2) Xtal1 (Input Osilator)
6

3) Xtal2 (Output Osilator)


4) AVCC (Pin penyedia tegangan untuk port A dan converter A/D)
5) AREF (Pin refrensi analog untuk converter A/D)
Port D (PD0 PD7) merupakan pin input/output dua arah (full duplex) dan selain
itu merupakan pin khusus, seperti dapat dilihat pada tabel dibawah ini.

7. RESET merupakan pin yang digunakan untuk me-reset mikrokontroler


8. XTAL1 dan XTAL2, merupakan pin masukan external clock
9. AVCC merupakan pin masukan tegangan untuk ADC
10. AREF merupakan pin masukan tegangan referensi untuk ADC
2.3

Seven Segment
Display 7 segment merupakan komponen yang
berfungsi sebagai penampil karakter angka dan
karakter huruf. Display 7 segment sering juga disebut
sebgai penampil 7 ruas. Pada display 7 segment juga
dilengkapi karakter titik (dot) yang sering dibutuhkan
untuk karakter koma atau titik pada saat menampilkan
suatu bilangan.
Pada dasarnya penampil 7 segment merupakan rangkaian 7 buah dioda LED (Light
Emiting Diode).Terdapat 2 (dua) jenis rangkaian dasar dari display 7 segment yang
dikenal sebagai display 7 segment common anoda (CA) dan common cathoda (CC).
Pada display common anoda untuk mengaktifkan karakter display 7 segment
diperlukan logika rendah (0) pada jalur A-F dan Dot dan sebaliknya untuk display 7
7

segment common cathoda (CA) logika tinggi (1) .Rangkaian internal display 7
segment common anoda dan common cathoda (CC) dapat dilihat pada gambar berikut
Rangkaian Internal Display 7 Segment Common Anoda

Rangkaian Internal Display 7 Segment Common Cathoda

Prinsip Kerja Seven Segment


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.
Seven segment dapat menampilkan angka-angka desimal dan beberapa karakter
tertentu melalui kombinasi aktif atau tidaknya LED penyusunan dalam seven
segment.

2.4

Light Emitting Diode (LED) Bargraph


Light Emitting Diode atau sering disingkat dengan LED adalah komponen
elektronika yang dapat memancarkan

cahaya monokromatik ketika diberikan

tegangan maju. LED merupakan keluarga Dioda yang terbuat dari bahan
semikonduktor. Warna-warna Cahaya yang dipancarkan oleh LED tergantung pada
jenis bahan semikonduktor yang dipergunakannya. LED juga dapat memancarkan

sinar inframerah yang tidak tampak oleh mata seperti yang sering kita jumpai pada
Remote Control TV ataupun Remote Control perangkat elektronik lainnya.

LED terdiri dari sebuah chip semikonduktor yang di doping sehingga menciptakan
junction P dan N. Yang dimaksud dengan proses doping dalam semikonduktor adalah
proses untuk menambahkan ketidakmurnian (impurity) pada semikonduktor yang
murni sehingga menghasilkan karakteristik kelistrikan yang diinginkan. Ketika LED
dialiri tegangan maju atau bias forward yaitu dari Anoda (P) menuju ke Katoda (K),
Kelebihan Elektron pada N-Type material akan berpindah ke wilayah yang kelebihan
Hole (lubang) yaitu wilayah yang bermuatan positif (P-Type material). Saat Elektron
berjumpa dengan Hole akan melepaskan photon dan memancarkan cahaya
monokromatik (satu warna).

LED atau Light Emitting Diode yang memancarkan cahaya ketika dialiri tegangan
maju ini juga dapat digolongkan sebagai Transduser yang dapat mengubah Energi
Listrik menjadi Energi Cahaya.
2.5

Potensio

Potensiometer adalah sebuah jenis resistor yang nilai tahanannya atau


hambatannya (resistansi) dapat dirubah atau diatur (adjustable). Potensiometer
memiliki 3 terminal, 2 terminal terhubung ke kedua ujung elemen resistif, dan
terminal ketiga terhubung ke kontak geser yang disebut wiper. Posisi wiper
menentukan tegangan keluaran dari potensiometer. Berikut ini simbol dari
potensiometer, simbol potensiometer dengan standar IEC dan standar ANSI.

Simbol potensiometer standar IEC

Simbol potensiometer standar ANSI

Potensiometer pada dasarnya berfungsi sebagai pembagi tegangan variabel. Unsur


resistif dapat dilihat sebagai dua resistor seri, dimana posisi wiper menentukan rasio
resistensi dari resistor pertama ke resistor kedua. Potensiometer juga dikenal sebagai
potmeter atau pot. Bentuk paling umum dari potmeter adalah potmeter putar. Jenis pot
sering digunakan dalam kontrol volume suara audio dan berbagai aplikasi lainnya.
Unsur resistif pada potensiometer biasanya terbuat dari bahan seperti karbon, keramik
logam, gulungan kawat (wirewound), plastik konduktif, atau film logam.

10

BAB III
ISI
3.1

FLOWCHART

11

12

3.2

Skematik Rangkaian Aplikasi pada Proteus ISIS

Gambar kematik rangkaian pada proteus yang saya buat

3.3

SCRIPT Program Aplikasi pada AVR


Chip type
: ATmega16
Program type
: Application
AVR Core Clock frequency: 12,000000 MHz
Memory model
: Small
External RAM size
:0
Data Stack size
: 256
*****************************************************/
#include <mega16.h>
#include <delay.h>
#define ADC_VREF_TYPE 0x60
int i;
unsigned char data_adc;
unsigned char Nama [5] = {0x88,0xC1,0xC7,0xF9,0x88};
unsigned char NIM [10] = {0xF9,0xB0,0x99,0xF9,0xF9,0x83,0xC0,0xc0,0xc0,0xA4};
unsigned
char
NoHP
[12]
=
{0xC0,0x80,0x92,0xF8,0xB0,0xC0,0xF9,0xF9,0xC0,0xC0,0x80,0xA4};
unsigned
char
TTL
[20]
=
{0x92,0x86,0xc8,0xc8,0x88,0xce,0x88,0xc8,0x90,0xbF,0xf9,0xa4,0xbf,0xc0,0xf9,0xbf,0xf9,
0x90,0x90,0x92};
unsigned char NoUrut [8] = {0xc0,0x92,0xbf,0xe1,0x87,0xa1,0xa4,0xc6};
13

// Read the 8 most significant bits


// of the AD conversion result
unsigned char 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 ADCH;
}
// Declare your global variables here
void main(void)
{
// Declare your local variables here
// Input/Output Ports initialization
// Port A initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTA=0x00;
DDRA=0x00;
// Port B initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTB=0x00;
DDRB=0x00;
// Port C initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTC=0x00;
DDRC=0x00;
// Port D initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTD=0xff;
DDRD=0xff;
// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
// Mode: Normal top=FFh
// OC0 output: Disconnected
TCCR0=0x00;
TCNT0=0x00;
OCR0=0x00;
// Timer/Counter 1 initialization
14

// Clock source: System Clock


// Clock value: Timer1 Stopped
// Mode: Normal top=FFFFh
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer1 Overflow Interrupt: Off
// 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=FFh
// OC2 output: Disconnected
ASSR=0x00;
TCCR2=0x00;
TCNT2=0x00;
OCR2=0x00;
// External Interrupt(s) initialization
// INT0: Off
// INT1: Off
// INT2: Off
MCUCR=0x00;
MCUCSR=0x00;
// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=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: 750,000 kHz
// ADC Voltage Reference: AVCC pin
// ADC Auto Trigger Source: None
// Only the 8 most significant bits of
// the AD conversion result are used
ADMUX=ADC_VREF_TYPE & 0xff;
ADCSRA=0x84;
while (1)
15

{
data_adc = read_adc(0);
//0-17%
if (data_adc <= 50 ) {
for(i=0;i<=4;i++){
PORTD=Nama[i];
delay_ms(500);
PORTD=0xFF;
delay_ms(300);
}
}
//18-40%
else if (( data_adc > 50 ) && (data_adc <= 100))
//1341160020
{for(i=0;i<=9;i++) {
PORTD=NIM[i];
delay_ms(500);
PORTD=0xFF;
delay_ms(300);
}
}
//41-59%
else if (( data_adc > 100 ) && (data_adc <= 150))
//085749732313
{for(i=0;i<=11;i++) {
PORTD=NoHP[i];
delay_ms(500);
PORTD=0xFF;
delay_ms(300);
}
}
//60-82%
else if (( data_adc > 150 ) && (data_adc <= 200))
//22-03-1994
{for(i=0;i<=19;i++) {
PORTD=TTL[i];
delay_ms(500);
PORTD=0xFF;
delay_ms(300);
}
}
//83-100%
else if ( data_adc > 200 )
//06-2C
{for(i=0;i<=7;i++) {
PORTD=NoUrut[i];
delay_ms(500);
PORTD=0xFF;
delay_ms(300);
}
}
16

}}

DAFTAR PUSTAKA
1. http://electrocontrol.wordpress.com/2011/04/28/program-mengaksesseven-segment-menggunakan-codevision-avr/
2. http://elib.unikom.ac.id/files/disk1/458/jbptunikompp-gdl-mochamadbo22888-3-babii.pdf
3. http://ilmukomputer.org/wp-content/uploads/2008/08/sholihulatmega16.pdf
4. Wikipedia/mikrokontroler/AtMega16

5. elektronika-dasar.web.id/komponen/display-7-segment/

17

Anda mungkin juga menyukai