Anda di halaman 1dari 32

LAPORAN PRAKTIKUM

MIKROKONTROLER 1

Disusun oleh :

Muhammad Zakie Ghifari

218341018

2 AEA

TEKNIK OTOMASI MANUFAKTUR dan MEKATRONIKA

POLITEKNIK MANUFAKTUR BANDUNG

2020
Dasar Teori

1. Perbedaan Mikroprosesor dan Mikrokontroller

1.1. MIKROPROSESSOR

Mikroprosesor merupakan perangkat keras yang tidak bisa bekerja tanpa softwere
dan mempunyai kemampuan untuk diprogram atau program ulang. Misalnya lampu
pengatur lalin yang menggunakan mikroprosesor bisa diubah set waktunya dengan hanya
mengubah program, dan bukan rangkaian sirkuitnya.

1.1. MIKROKONTROLLER

Mikrokontroller merupakan mikroprosesor yang dikhususkan untuk implementasi


kendali. Misalnya untuk kendali motor berperan sebagai PLC (Programmable Logic
Controller), pengaturan pengapian pada motor jenis injeksi, gerakan-gerakan pada robot,
pengatur besaran, suhu, tekanan, kelembaban, lampu lalin, kamera pengintai dan lain-
lain.

Mikrokontroller adalah suatu kombinasi mikroprosesor, piranti I/O (Input/Output) dan


memori, yang terdiri atas ROM (Read Only Memory) dan RAM (Random Access
Memory), dalam bentuk keping tunggal (single chip).

2. Kelebihan Dan Kekurangan Mikroprosesor Dan Mikrokontroller

Adapun kelebihan dan kekurangan mikroprosesor dan mikrokontroller adalah


sebagai berikut:

KELEBIHAN

1. Programmable.
2. Rangkaian lebih terintegrasi, kompak, sederhana dan lebih mudah membuat PCB
(Packet Circuit Block).
3. Pengembangan fleksibel.

KEKURANGAN

1. Kerusakan program menyebabkan sistem macet.


2. Tergantung pada softwere.
3. Lebih sensitif terhadap derau.

Dalam memprogram mikrokontrolel dapat menggunakaan aplikasi visual studio code


(VSCode) dengan framework arduino. Dalam VSCode tersebut terdapat struktur
pemrograman seprti hal nya aplikasi pemrograman lainnya, struktur tersebut seperit dibawah
ini.

1. Header

ex : #include <arduino.h>

#include <stdio.h>

2. Inisialisasi I/O

ex : DDRA = 0X00; 0 = input (data dari luar yang masuk ke sistem)

PORTA = 0XFF; 1 = output(mengontrol dari sistem untuk ditampilkan di


komponen)

3. Deklarasi Variabel

ex : int ....

String .... <----- Variabel Global

char ....

4. Main Program/Body Program

ex : Void main (){

int i,j <----- Variabel Lokal

3. Mikrokontroller ATmega8535

AT mega8535 adalah mikrokontroller 8 bit buatan ATMEL dengan 8 KByte


System Programable Flash dengan teknologi memori tak sumirna(nonvolatile),
kepadatan tinggi, dan kompatibel dengan pin out dan set instruksi standar industri
MCS51 INTEL. Arsitektur yang digunakan dengan RISC (Reduce Instruction set in
singgle chip).

3.1. Karakteristik Mikrokontroller Atmega 8535 sebagai berikut :


Adapun Beberapa Karakteristik Mikrokontroller ATmega8535 antara lain
sebagai berikut :
1. Kompatibel dengan produk keluarga MCS51.
2. Dapat digunakannya bahasa C sebagai bahasa pemrogramannya.
3. Programmable Flash Memory sebesar 8 K Byte.
4. Memiliki 512 Bytes EEPROM yang dapat diprogram.
5. Ketahanan (endurance) : 10.000 siklus tulis/hapus.
6. Jangkauan operasi : 4,5 – 5,5 Volt.
7. Fully Static Operation : 0 Hz – 16 MHz untuk ATmega8535.
8. Dua level Program Memory Lock yaitu flash program dan EEPROM data
seccurity.
9. RAM Internal 128 X 8 bit.
10. Memiliki 32 jalur I/O yang dapat diprogram.
11. Satu pencacah 8 bit dengan separate prescaler.

3.2. Susunan Kaki Mikrokontroler ATmega8535


Bentuk kemasan dan susunan kaki-kaki mikrokontroler dari ATmega8535
diperlihatkan seperti padaGambar berikut:

3.3.Fungsi dari kaki-kaki Mikrokontroler ATmega8535,antara lain:


1. VCC (kaki 40) dihubungkan ke Vcc.
2. GND (kaki 20) dihubungkan ke ground.
3. PortA (PA7..PA0) (kaki 32-39) merupakan port 8 bit dua arah (bidirectional)
I/O. Port ini berfungsi sebagai port data/alamat I/O ketika menggunakan
SRAM eksternal.
4. Port B (PB7..PB0) (kaki 1-8) merupakan port 8 bit dua arah (bidirectional)
I/O, untuk berbagai keperluan (multi purpose).
5. Port C (PC7..PC0) (kaki 21-28) adalah port 8 bit dua arah I/O, dengan internal
pull-up resistor. Port C ini juga berfungsi sebagai port alamat ketika
menggunakan SRAM eksternal.
6. Port D (PD7..PD0) (kaki 10-17) adalah port 8 bit dua arah I/O dengan resistor
pull-up internal. Port D juga dapat berfungsi sebagai terminal khusus.
7. Reset (kaki 9) ketika kondisi rendah rendah yang lebih lama dari 50 nS
mikrokontroler akan reset walaupun detak tidak berjalan.
8. XTAL1 (kaki 19) masukan bagi penguat osilator terbalik dan masukan bagi
rangkaian operasi detak internal.
9. XTAL2 (kaki 18) keluaran dari penguat osilator terbalik.
10. ICP (kaki 31) adalah masukan bagi masukan fungsi Capture Timer/counter1.
11. OC1B (kaki 29) adalah kaki keluaran bagi fungsi Output CompareB keluaran
Timer/Counter1.
12. ALE (Address Latch Enable) (kaki 30) digunakan ketika menggunakan
SRAM eksternal. Kaki ini digunakan untuk mengunci 8 bit alamat bawah
pada saat siklus akses pertama, dan berfungsi sebagai port data pada siklus
akses kedua.
3.4. Blok Diagram dan Arsitektur ATmega8535

ATmega8535 mempunyai 32 general purpose register (R0..R31) yang


terhubung langsung dengan Arithmetic Logic Unit (ALU), sehingga register
dapat diakses dan dieksekusi hanya dalam waktu satu siklus clock. ALU
merupakan tempat dilakukannya operasi fungsi aritmetik, logika dan operasi bit.
R30 disebut juga sebagai Z-Register, yang digunakan sebagai register penunjuk
pada pengalamatan tak langsung. Didalam ALU terjadi operasi aritmetik dan
logika antar register, antara register dan suatu konstanta, maupun operasi untuk
register tunggal (single register). Berikut arsitekturnya yang ditunjukkan blok
diagram pada gambar berikut:
3.5. Organisasi Memori

AVR menggunakan arsitektur Harvard, sehingga memisahkan memori


serta bus data dengan program. Program ditempatkan Flash Memory, sedangkan
memori data terdiri dari 32 buah register serbaguna, 64 register serbaguna, 512
bytes internal SRAM dan 64 Kbytes SRAM eksternal yang dapat ditambahkan
Berdasarkan fungsinya terdapat 4 macam memori pada ATmega8535.

3.6. Memori Program

ATmega8535 mempunyai kapasitas memori program sebesar 8 Kbytes.


Karena semua format instruksi berupa kata (word), Format word yang biasa
digunakan adalah 16 atau 32 bit. Pada ATmega8535 ini format memori program
yang digunakan adalah 16 bit, sehingga format memori program yang digunakan
adalah 4Kx16bit. Memori Flash ini dirancang untuk dapat di hapus dan tulis
sebanyak seribu kali. Program Counter (PC)-nya sepanjang 12 bit, sehingga
mampu mengakses hingga 4096 alamat program memori. Memori program pada
ATmega8535. Setelah reset CPU memulai eksekusi dari lokasi 0000h. Setiap
interupsi mempunyai lokasi tetap dalam memori program. Interupsi
menyebabkan CPU melompat ke lokasi tersebut dimana pada lokasi tersebut
terdapat subrutin yang harus dilaksanakan.

Berikut merupakan gambar dari bagian bawah memori program:

Prosedur Praktikum

Pastikan isis proteus telah ada;

PROTEUS
Proteus adalah sebuah software untuk mendesain PCB yang juga dilengkapi dengan simulasi
PSpice pada level skematik sebelum rangkaian skematik di-upgrade ke PCB sehingga sebelum
PCBnya di cetak kita akan tahu apakah PCB yang akan kita cetak apakah sudah benar atau
tidak. Proteus mampu mengkombinasikan program ISIS untuk membuat skematik desain
rangkaian dengan program ARES untuk membuat layout PCB dari skematik yang kita buat.
Software Proteus ini bagus digunakan untuk desain rangkaian mikrokontroller.
Proteus juga bagus untuk belajar elektronika seperti dasar-dasar elektronika sampai pada aplikasi
pada mikrokontroller. Software Proteus ini menyediakan banyak contoh aplikasi desain yang
disertakan pada instalasinya. Sehingga memungkinkan kita bisa belajar dari contoh-contoh yang
sudah ada.
Fitur-fitur yang terdapat dalam Proteus adalah sebagai berikut :
1. Memiliki kemampuan untuk mensimulasikan hasil rancangan baik digital maupun analog
maupun gabungan keduanya.
2. Mendukung simulasi yang menarik dan simulasi secara grafis.
3. Mendukung simulasi berbagai jenis microcontroller seperti PIC 8051 series.
4. Memiliki model-model peripheral yang interactive seperti LED, tampilan LCD, RS232, dan
berbagai jenis library lainnya.
5. Mendukung instrument-instrument virtual seperti voltmeter, ammeter, oscciloscope, logic
analyser, dan lain-lainnya.
6. Memiliki kemampuan menampilkan berbagi jenis analisis secara grafis seperti transient,
frekuensi, noise, distorsi, AC dan DC, dan lain-lainnya.
7. Mendukung berbagai jenis komponen-komponen analog.
8. Mendukung open architecture sehingga kita bisa memasukkan program seperti C++ untuk
keperluan simulasi.
9. Mendukung pembuatan PCB yang di-update secara langsung dari program ISIS ke program
pembuat PCB-ARES.
ISIS dipergunakan untuk keperluan pendidikan dan perancangan. Beberapa fitur umum dari ISIS
adalah sebagai berikut :
1. Windows dapat dioperasikan pada Windows 98/Me/2k/XP dan Windows terbaru.
2. Routing secara otomatis dan memiliki fasilitas penempatan dan penghapusan dot.
3. Sangat powerful untuk pemilihan komponen dan pemberian properties-nya.
4. Mendukung untuk perancangan berbagai jenis bus dan komponen-komponen pin, port modul
dan jalur.
5. Memiliki fasilitas report terhadap kesalahan-kesalahan perancangan dan simulasi elektrik.
6. Mendukung fasilitas interkoneksi dengan program pembuat PCB-ARES.
7. Memiliki fasilitas untuk menambahkan package dari komponen yang belum didukung.
Tampilan layar utama proteus:
Visual studio code:

1. Donwload telebih dahulu visual studio code, beragam versi visual studio code akan
keluar, atau bisa melalui link https://code.visualstudio.com/, lalu download.

2. Setelah VSCode selesai di download, akan muncul pada desktop untuk menginstall versi
VSCode, terdapat version untuk mac atau untuk windows, pilihlah sesuai kebutuhan lalu
install.
3. Setelah terinstall, buka aplikasi VSCode tersebut.

4. Klik extension menu pada sebelah kanan aplikasi, seperti gambar dibawah

5. Selanjutnya search “PLatformIO” pada kolom search dan pilih “PlatformIO IDE”.

6. Selanjutnya install PlatformIO , usahakan anda terkoneksidengan internet.


7. Setelah berhasil terinstal akan muncul di bagian kiri aplikasi seperti gambar dibawah, lalu
pilih open PIO HOME.

8. Setelah itu akan muncul tampilan seperti dibawah ini.


9. Lalu pilih new project, setelah itu beri nama project dan pilih board ATMega 8535
dengan framework arduino, setelah itu finish.

10. Setelah itu akan muncul workspace pada sebelah kiri aplikasi lalu pilih platformio.ini

11. Pada platformio.ini tambahkan program dibawah ini untuk menghubunkgan ATMega
dengan program nanti.
12. Untuk memprogram ATMega bisa melalui folder “src” lalu “main.cpp”

13. Jika program selesai, upload program pada ATMega dengan menekan tombol dibawah.
Praktikum

2.3.1 LED DISPLAY

Chip type : Atmega8535

Program type : Application

AVR Core Clock frequency : 12,000000 MHz

Memory model : Small

External RAM size :0

Data Stack size : 128

1. Peralatan
 Laptop / Komputer
 Sistem Minimum Mikrokontroler AVR AMEGA8535
 Panel LED Display
 Kabel Download

2. Prosedur Praktikum
1. Buka Visual Studio Code.
2. Buka PIO Home, klik “new project” untuk membuat project baru.
3. Buat project baru dengan nama “Led_Display”. Pilih board yang digunakan
ATMEGA 8535. Pastikan Framework yang digunakan adalah Arduino.
4. Sebelum meng-upload program, pastikan kabel download terkoneksi dengan
benar.
5. Kemudian upload program.
6. Hubungkan PORT B dengan LED.

7. Perhatikan data yang keluar pada LED dan dokumentasikan hasilnya pada data
praktikum.
8. Tuliskan analisa dari praktikum yang telah dilakukan.

3. Program
Analisis :
Program diatas dibuat untuk menampilkan keluaran LED dengan menggunakan sistem
bilangan hexa (Gambar 1) dan sistem bilangan biner (Gambar 2). Untuk menginisialisasi
output dan input menggunakan sintaks DDR, baik itu DDRA, DDRB dst sesuai keaadan
pada panel. Dan untuk menentukan output/input menggunakan sintaks 0XFF (untuk
output),dan 0X00 (untuk input).
Analisis :
Program diatas ialah untuk menampilkan keluaran dengan LED bergeser, dimana
dengan sintaks “led<<=1” maka led akan menyala dari kanan ke kiri dengan
mematikan led sebelumnya, angka “1” pada program ialah LED bergeser sebanyak
satu kali. Supaya pergeseran terus menerus tambahkan program “for” seperti diatas.

2.3.2 INPUT / OUTPUT

1. Peralatan
 Laptop / Komputer
 Sistem Minimum Mikrokontroler AVR AMEGA8535
 Panel LED Display
 Panel Switch
 Kabel Download

2. Prosedur Praktikum
1. Buka Visual Studio Code.
2. Buka PIO Home, klik “new project” untuk membuat project baru.
3. Buat project baru dengan nama “Input_Output”. Pilih board yang digunakan
ATMEGA 8535. Pastikan Framework yang digunakan adalah Arduino.
4. Sebelum meng-upload program, pastikan kabel download terkoneksi dengan benar.
5. Kemudian upload program.
6. Hubungkan PORT D dengan LED.
7. Hubungkan PORT C dengan Switch.
8. Perhatikan data yang keluar pada LED dan dokumentasikan hasilnya pada data
praktikum.
9. Tuliskan analisa dari praktikum yang telah dilakukan.
3. Program
Analisis :
Program diatas untuk melakukan input dan output, sintaks “DDRD” memprogram
port D sebagai output dan sintaks DDRB memprogram port B sebagai input. Bisa
dilihat dari 0x00 atau 0xFF.
2.3.3 DELAY
1. Peralatan
 Laptop / Komputer
 Sistem Minimum Mikrokontroler AVR AMEGA8535
 Panel LED Display
 Kabel Download

2. Prosedur Praktikum
1. Buka Visual Studio Code.
2. Buka PIO Home, klik “new project” untuk membuat project baru.
3. Buat project baru dengan nama “Delay”. Pilih board yang digunakan ATMEGA
8535. Pastikan Framework yang digunakan adalah Arduino.
4. Sebelum meng-upload program, pastikan kabel download terkoneksi dengan benar.
5. Kemudian upload program.
6. Hubungkan PORT D dengan LED.
7. Perhatikan data yang keluar pada LED dan dokumentasikan hasilnya pada data
praktikum.
8. Tuliskan analisa dari praktikum yang telah dilakukan
3. Program
Analisis :
Program diatas hanya menambahkan delay dari program sebelumnya, diaman
delay(); berfungsi untuk menunda waktu sebelum ke program selanjutnya.

2.3.4 INSTRUKSI BERSYARAT

1. Peralatan
 Laptop / Komputer
 Sistem Minimum Mikrokontroler AVR AMEGA8535
 Panel LED Display
 Panel Push Button
 Kabel Download

2. Prosedur Praktikum
1. Buka Visual Studio Code.
2. Buka PIO Home, klik “new project” untuk membuat project baru.
3. Buat project baru dengan nama “Instruksi_bersyarat”. Pilih board yang digunakan
ATMEGA 8535. Pastikan Framework yang digunakan adalah Arduino.
4. Sebelum meng-upload program, pastikan kabel download terkoneksi dengan benar.
5. Kemudian upload program.
6. Hubungkan PIN A dengan Panel Push Button.
7. Hubungkan PORT C dengan Panel LED.
8. Perhatikan data yang keluar pada PORT C dan dokumentasikan hasilnya pada data
praktikum.
9. Tuliskan analisa yang telah dilakukan.
3. Program
Analisis :
Program diatas digunakan untuk menyalakan LED dengan menekan Push Button tetapi
dengan syarat, sintaks | dan sintaks &. Sintaks | berarti “Atau” dan Sintaks & berarti “Dan”.
Untuk angka 0 disana artinya adalah keadaan, baik itu keadaan ON maupun OFF, untuk 0
sendiri artinya OFF dan 1 artinya ON.

2.3.5 7 SEGMENT

Sekilas Seputar Seven Segment

Seven-segment, biasanya dikenal sebagai suatu seven-segment indikator, adalah


suatu format dari alat tampilan yang suatu alternative ke dot-matrix tampilan yang
semakin kompleks. Seven-Segment adalah biasanya digunakan di dalam elektronika
sebagai metoda dari mempertunjukkan umpan balik klasifikasi sistim decimal dengan
operasi yang internal tentang alat. 7 segmen diatur sebagai segiempat panjang dari dua
segmen yang vertikal pada [atas] masing-masing sisi dengan satu segmen yang horizontal
di bagian atas dan alast. Apalagi, segmen yang ketujuh membagi dua bgian segiempat
panjang secara horizontal.
RP1
9
8
7
6
5
4
3
2

330

4
c

3
1

5
2
DSW1 U1
OFF ON
9 1 1 40
PB0/T0/XCK PA0/ADC0
2 2 39
PB1/T1 PA1/ADC1
3 3 38
PB2/AIN0/INT2 PA2/ADC2
4 4 37
PB3/AIN1/OC0 PA3/ADC3
5 5 36
PB4/SS PA4/ADC4
6 6
PB5/MOSI PA5/ADC5
35 D1 D2 D3 D4 D5 D6 D7 D8
7 7 34 LED-BLU
LED-BLU
E LED-BLU
E LED-BLU
E LED-BLU
E LED-BL
E UE
LED-BLUE
LED-BLUE
8 8
PB6/MISO PA6/ADC6
33 U2
PB7/SCK PA7/ADC7
10 R1
COM
DIPSWC_8 14 22 1 18 R2
a PD0/RXD PC0/SCL 1B 1C
b
15
PD1/TXD PC1/SDA
23 2
2B 2C
17 R3
330
c
16
PD2/INT0 PC2
24 3
3B 3C
16 R4
330
1
17
PD3/INT1 PC3
25 4
4B 4C
15 R5
330
C1 2
18
PD4/OC1B PC4
26 5
5B 5C
14 R6
330
3
19
PD5/OC1A PC5
27 6
6B 6C
13 R7
330
4
20
PD6/ICP1 PC6/TOSC1
28 7
7B 7C
12 R8
330
21 29 8 11 330
5 PD7/OC2 PC7/TOSC2 8B 8C
22pF 330
X1 13
XTAL1
ULN2803
CRYSTAL 12 32
XTAL2 AREF
9 30
C2 RESET AVCC
ATMEGA8535

22pF
R9
10k

C3
10uF

Chip type : ATmega8535

Program type : Application

AVR Core Clock frequency: 4.000000 MHz

Memory model : Small

Data Stack size : 128

1. Peralatan
 Laptop / Komputer
 Sistem Minimum Mikrokontroler AVR AMEGA8535
 Panel 7-Segment
 Kabel Download

2. Prosedur Praktikum
1. Buka Visual Studio Code.
2. Buka PIO Home, klik “new project” untuk membuat project baru.
3. Buat project baru dengan nama “7_Segment”. Pilih board yang digunakan ATMEGA
8535. Pastikan Framework yang digunakan adalah Arduino.
4. Sebelum meng-upload program, pastikan kabel download terkoneksi dengan benar.
5. Kemudian upload program.
6. Hubungkan PORT C dengan PORT 1 7-Segment.
7. Hubungkan PORT A dengan PORT 2 7-Segment.
8. Perhatikan data yang keluar pada 7-Segment dan dokumentasikan hasilnya pada data
praktikum.
9. Tuliskan analisa dari praktikum yang telah dilakukan.
3. Porgram

Analisis :
Program diatas berfungsi untuk menyalakan 7 segment dengan kode hexa. Port C
befungsi untuk mengatur angka yang muncul pada 7 segment, sedangkan Port A
berfungsi untuk mengatur tempat keluarannya. Sintaks “0xFD” menempatkan keluaran
di 7segment paling kiri, “0xF7” menempatkan keluaran di 7 segment kedua dari kiri,
“0xDF” menempatkan keluaran di 7 segment ketiga dari kiri, dan “0x7F”
menempatkan keluaran di 7 segement paling kanan. Sedangkan untuk kode hexa
angka seperti dibawah.

0 = 0XC0 5 = 0X92

1 = 0XF9 6 = 0X82

2 = 0XA4 7 = 0XF8

3 = 0XB0 8 = 0X80

4 = 0X99 9 = 0X90

2.3.6 KEYPAD
U1
U2 9
COM
1 40 1 16
PB0 PB0/T0/XCK PA0/ADC0 PA0 PC0 1B 1C

+88.8
2 39 2 15
PB1 PB1/T1 PA1/ADC1 PA1 PC1 2B 2C

PA0

PA1

PA2
3 38 3 14
PB2 PB2/AIN0/INT2 PA2/ADC2 PA2 PC2 3B 3C
4 37 4 13
PB3 PB3/AIN1/OC0 PA3/ADC3 PA3 PC3 4B 4C
5 36 5 12
PB4 PB4/SS PA4/ADC4 PA4 5B 5C
6 35 6 11
PB5 PB5/MOSI PA5/ADC5 PA5 6B 6C
7 34 7 10

3
PB6 PB6/MISO PA6/ADC6 PA6 7B 7C
8 33
PB7 PB7/SCK PA7/ADC7 PA7

PD0
14
PD0/RXD PC0/SCL
22
PC0
ULN2003A
PA3 A 1 2 3
15 23
PD1 PD1/TXD PC1/SDA PC1
16 24
PD2 PD2/INT0 PC2 PC2
PD3
PD4
17
18
PD3/INT1
PD4/OC1B
PC3
PC4
25
26
PC3
PC4
PA4 B 4 5 6
19 27
PD5 PD5/OC1A PC5 PC5
20 28
PD6 PD6/ICP1 PC6/TOSC1 PC6
PD7
21
PD7/OC2 PC7/TOSC2
29
PC7 PA5 C 7 8 9

VDD
VSS
VEE
13

RW
RS

D0
D1
D2
D3
D4
D5
D6
D7
XTAL1 XTAL1

E
12 32
XTAL2 XTAL2 AREF
RESET
9
RESET AVCC
30
PA6 D 0 #

1
2
3
4
5
6
7
8
9
10
11
12
13
14
ATMEGA8535

PD0
PD1
PD2

PD4
PD5
PD6
PD7
C1
XTAL1
22pF
C2 X1
CRYSTAL
XTAL2
22pF

*****************************************************

Chip type : ATmega8535

Program type : Application

AVR Core Clock frequency : 8,000000 MHz

Memory model : Small

External RAM size :0

Data Stack size : 128

1. Peralatan
 Laptop / Komputer
 Sistem Minimum Mikrokontroler AVR AMEGA8535
 Panel Keypad
 Panel LED Display
 Kabel Download

2. Prosedur Praktikum
1. Buka Visual Studio Code.
2. Buka PIO Home, klik “new project” untuk membuat project baru.
3. Buat project baru dengan nama “Keypad”. Pilih board yang digunakan ATMEGA
8535. Pastikan Framework yang digunakan adalah Arduino.
4. Sebelum meng-upload program, pastikan kabel download terkoneksi dengan benar.
5. Kemudian upload program.
6. Hubungkan PORT B dengan LED Display.
7. Hubungkan PORT A dengan Keypad.
8. Perhatikan data yang keluar pada LED dan dokumentasikan hasilnya pada data
praktikum.
9. Tuliskan analisa dari praktikum yang telah dilakukan.

3. Program

Analisis :
Program diatas berfungsi untuk mengatur keluaran dengan keypad dimana
terdapat dua pemrograman, yaitu pemrograman untuk row dan pemrograman untuk
kolom. Pada contoh program diatas untuk memrogram row 1 dan kolom 1. Row 1
dapat dilihat pada “PORTA = 0b11011111” kode biner tersebut untuk row 1. Untuk
melihat kolom menggunakan program “((PINA >> PINA1 & 1) == 0)”. Jika ingin
berganti menjadi row 2 atau selanjutnya bisa menggunakan kode dibawah.

Row 1 = 0XDF Row 3 = 0X7F

Row 2 = 0XEF Row 4 = 0XBF

2.3.7 LCD
1. Peralatan
 Laptop / Komputer
 Sistem Minimum Mikrokontroler AVR AMEGA8535
 Panel LCD
 Kabel Download

2. Prosedur Praktikum
1. Buka Visual Studio Code.
2. Buka PIO Home, klik “new project” untuk membuat project baru.
3. Buat project baru dengan nama “Lcd”. Pilih board yang digunakan ATMEGA 8535.
Pastikan Framework yang digunakan adalah Arduino.
4. Sebelum meng-upload program, pastikan kabel download terkoneksi dengan benar.
5. Kemudian upload program.
6. Hubungkan PORT A dengan LCD.
7. Perhatikan data yang keluar pada LCD dan dokumentasikan hasilnya pada data
praktikum.
8. Tuliskan analisa dari praktikum yang telah dilakukan.
3. Program

Analasis :
Program diatas untuk menampilkan keluaran dengan LCD, library yang
digunakan ialah LiquidCrystal yang harus di download terlebih dahulu pada library
VSCode. “LiquidCrytal lcd (24, 25, 26, 27, 28, 29)” sintaks tersebut ialah pin dari port
A, yang berarti kita menggunakan port A sebagai keluaran. Sintaks “lcd.begin (16,
2);” berfungsi untuk spesifikasi lcd yang digunakan, dimana 16 ialah 16 kolom dengan
2 row. Sintaks “lcd.cursor(3, 0);” berfungsi untuk mengatur tempat keluaran pada lcd,
dimana angka 3 berfungsi untuk kolom ke 3 dan 0 berfungsi untuk row. Angka 0
berarti row atas dan angka 1 berarti row bawah.

2.3.8 MOTOR DC

1. Peralatan
 Laptop / Komputer
 Sistem Minimum Mikrokontroler AVR AMEGA8535
 Panel Motor Servo
 Kabel Download

2. Prosedur Praktikum
1. Buka Visual Studio Code.
2. Buka PIO Home, klik “new project” untuk membuat project baru.
3. Buat project baru dengan nama “Motor_DC”. Pilih board yang digunakan ATMEGA
8535. Pastikan Framework yang digunakan adalah Arduino.
4. Sebelum meng-upload program, pastikan kabel download terkoneksi dengan benar.
5. Kemudian upload program.
6. Hubungkan PORT C dengan Motor DC.
7. Perhatikan data yang keluar pada Motor DC dan dokumentasikan hasilnya pada data
praktikum.
8. Tuliskan analisa dari praktikum yang telah dilakukan.
3. Program

Analisis :
Program diatas berfungsi untuk menjalankan motor dc dengan menggunakan kode
hexa. Kode 0x90 ialah kode hexa agar motor berputar CW, dank ode hexa 0x60 agar
motor berputar CCW.

2.3.9 MOTOR STEPPER

Prinsip Kerja Motor Stepper

Meskipun pada saat ini terdapat berbagai jenis motor stepper di pasaran, namun
pada dasarnya mereka memiliki prinsip kerja yang sama. Seperti halnya pada motor
induksi, motor stepper memiliki bagian-bagian utama berupa stator magnet permanen,
dan lilitan kawat pada rotor. Hal yang membedakan motor stepper dari motor induksi
biasa adalah motor stepper memiliki beberapa lilitan pada rotor, yang jumlahnya
ditunjukkan oleh jumlah bit motor stepper tersebut dan juga menunjukkan besar derajat
pada setiap langkah putaran. Pada motor stepper empat bit terdapat empat lilitan yang
menentukan gerakan rotor. Dengan bantuan gambar di bawah ini,akan dijelaskan prinsip
kerja dari motor stepper.

Jika suatu lilitan induktor dengan arah tertentu dialiri arus listrik searah, akan
timbul medan magnet berkutub utara-selatan pada ujung-ujung inti besinya. Medan
magnet pada keempat lilitan stator motor stepper SA, SB, SC, dan SD, dapat diaktifkan
masing-masing. Pengaktifan medan magnet pada satu lilitan stator akan menarik ujung
rotor R untuk mensejajarkan dirinya dengan stator penarik. Dimisalkan gambar di atas
menunjukkan kondisi awal suatu motor stepper, dimana salah satu ujung rotor R sedang
sejajar dengan lilitan stator SA. Jika dalam keadaan tersebut aktivitas pemberian arus
dipindahkan ke lilitan SB, maka ujung rotor R yang terdekat dengan SB akan segera
mensejajarkan diri dengan SB. Berarti, rotor akan berputar searah jarum jam sejauh 18º.
Sebaliknya, jika dari kondisi awal lilitan pada stator SD yang diaktifkan,maka rotor akan
berputar berlawanan dengan arah jarum jam sejauh 18º, hingga ujung rotor yangterdekat
menjadi sejajar dengan SD.
Jadi, untuk memutar rotor sejauh 360º searah jarum jam,diperlukan 20 langkah
aktivasi (360º= 20 x 18º), yaitu SB, SC, SD, SA, SB, ... dst. Dari uraian di atas, dapat
disimpulkan bahwa jika lilitan stator diaktifkan satu persatu secara bergiliran, maka stator
akan berputar sejauh 18º langkah. Namun, besarnya sudut putar ini bisa diperkecil lagi
dengan menambahkan kombinasi berupa aktivasi dua lilitan stator. Sebagai contoh, dari
kondisi awal pada gambar di atas, jika lilitan stator SAdan SBdiaktifkan, maka rotor akan
bergerak searah jarum jam sebesar 9º (half step). Jika keadaan terakhir dilanjutkan lagi
dengan mengaktifkan lilitan stator SB, maka putaran akan berlanjut sejauh 9º lagi.
Putaran sebesar 9º berikutnya, dapat dilakukan dengan mengaktifkan lilitan stator SBdan
SC, dan demikian seterusnya. Cara ini dapat dilakukan untuk memperhalus sudut putar
motor stepper. Disamping cara tersebut, penghalusan putaran dapat juga dilakukan
dengan menggunakan roda gigi atau roda bertali, yang dapat memperkecil derajat putar
dalam setiap langkahnya.

Prinsip Pengendalian Motor Stepper

Pada gambar dan tabel berikut ini dapat dilihat prinsip pengendalian motor
stepper. Jika seluruh saklar dalam keadaan terbuka (OFF alias berkondisi 0), maka motor
berada dalam keadaan diam. Jika saklar ditutup dan dibuka secara bergiliran sebagai
berikut, TA, TB, TC, TD, maka motor akan bergerak sejauh 4 langkah (4 x 18º) searah
jarum jam. Sebaliknya, motor akan bergerak sejauh 4

langkah berlawanan dengan arah jarum jam, jika saklar ditutup dan dibuka menurut
urutan TD,TC, TB, TA.
CW : Clock Wise (Searah jarum Jam)

CCW : Counter Clock Wise (Berlawanan dengan arah jarum jam)

Agar bisa dikendalikan secara elektronis (termasuk pengendalian melalui komputer),


posisi saklar dapat diganti dengan rangkaian yang terdiri atas transistor, dioda, dan
resistor, seperti pada gambar:
Pada rangkaian di atas, transistor digunakan sebagai saklar. Jika satu transistor
mendapatkan arus bias pada basisnya (yang telah diperkecil oleh resistor 10 k), transistor
langsung memasuki kondisi saturasi, sehingga timbul kesan seolah-olah kaki kolektor
dan emitor terkontak langsung. Hal ini menyebabkan arus dari VCC dapat mengalir
melalui lilitan menuju ground. Arus bias pada jalur IN di sini bisa berasal ,misalnya, dari
port paralel suatu komputer. Sebaliknya, jika transistor tidak mendapat bias, hubungan
antara kaki kolektor dan emitor akan “terputus”, sehingga arus tidak bisa mengalir
melalui lilitan menuju ground.

Umumnya motor stepper membutuhkan daya yang cukup besar. Untuk


mengendalikan motor stepper dengan spesifikasi arus 1,2 A dan tegangan 5 V / fasa dapat
digunakan transistor bertipe BD 677, yang merupakan transistor Darlingtonbertipe NPN
yang dikemas dalam satu transistor. Penggunaan transistor Darlington ini dimaksudkan
agar pasokan daya dan switching dapat berlangsung dengan cepat. Dalam rangkaian
diatas, dioda berfungsi untuk membuang energi dalam bentuk medan listrikyang timbul
pada lilitan ketika tidak aktif (mati / OFF), sehingga kerusakan transistor dapat dicegah.
Untuk rangkaian di atas, dapat digunakan dioda bertipe IN4002.

z
1

a A 1 2 3
3
b B 4 5 6
VDD

7 8 9
VSS
VEE

RW
RS

D0
D1
D2
D3
D4
D5
D6
D7

c C
E
1
2
3
4
5
6
7
8
9
10
11
12
13
14

U1
1
PB0/T0/XCK PA0/ADC0
40
d
x
D 0 #
2 39
PB1/T1 PA1/ADC1 y
3 38
PB2/AIN0/INT2 PA2/ADC2 z
4 37
PB3/AIN1/OC0 PA3/ADC3 a
5 36
PB4/SS PA4/ADC4 b
6 35
PB5/MOSI PA5/ADC5 c
7 34
8
PB6/MISO PA6/ADC6
33 U2d
PB7/SCK PA7/ADC7
9
COM
14 22 1 16
PD0/RXD PC0/SCL 1B 1C
15 23 2 15
PD1/TXD PC1/SDA 2B 2C
16 24 3 14
PD2/INT0 PC2 3B 3C
17 25 4 13
PD3/INT1 PC3 4B 4C
18 26 5 12 +88.8
C1 19
PD4/OC1B PC4
27 6
5B 5C
11
PD5/OC1A PC5 6B 6C
20 28 7 10
PD6/ICP1 PC6/TOSC1 7B 7C
21 29
PD7/OC2 PC7/TOSC2
1nF ULN2001A
CRYSTAL 13
XTAL1
CRYSTAL 12 32
C2 9
XTAL2 AREF
30
RESET AVCC
ATMEGA8535
1nF
R1
10k

C3
1nF
Chip type :ATmega8535

Program type :Application

AVR Core Clock frequency : 12,000000 MHz

Memory model : Small

External RAM size :0

Data Stack size : 128

1. Peralatan
 Laptop
 Power Supply DC
 Sistem Minimum Mikrokontroller ATMEGAA8535
 Panel Motor Stepper
 Kabel download
2. Prosedur Praktikum
 Buka Visual Studio Code.
 Buka PIO Home, klik “new project” untuk membuat project baru.
 Buat project baru dengan nama “Motor_Stepper”. Pilih board yang digunakan
ATMEGA 8535. Pastikan Framework yang digunakan adalah Arduino.
 Sebelum meng-upload program, pastikan kabel download terkoneksi dengan benar.
 Kemudian upload program.
 Hubungkan PORT C dengan Motor Stepper.
 Perhatikan data yang keluar pada Motor Stepper dan dokumentasikan hasilnya pada
data praktikum.
 Tuliskan analisa dari praktikum yang telah dilakukan.
3. Program
Analisis :
Dalam memrogram motor terdapat tiga cara dikarenakan terdapat tiga jenis step,
yaitu wave step, full step, dan half step. Perbedaan dari ketiganya yaitu kehalusan
motor dalam berputar. Motor stepper yang digunakan memiliki spesifikasi putaran
sebanyak 1.8 derajat per satu step. Untuk menentukkan arah putaran hanya
membalikkan urutan step motor tersebut.

Anda mungkin juga menyukai