Anda di halaman 1dari 18

PEMROGRAMAN

MIKROPROSESOR DAN
MIKROKONTROLER
(C3) KELAS XI

Abdian Putra Primana

PT KUANTUM BUKU SEJAHTERA


PEMROGRAMAN MIKROPROSESOR DAN
MIKROKONTROLER
SMK/MAK Kelas XI
© 2020
Hak cipta yang dilindungi Undang-Undang ada pada Penulis.
Hak penerbitan ada pada PT Kuantum Buku Sejahtera.

Penulis : Abdian Putra Primana


Editor : Diana Agus Sari
Desainer Kover : Achmad Faisal
Desainer Isi : Putri Ari Kristanti
Tahun terbit : 2020
ISBN : 978-623-7398-59-2

Diterbitkan oleh
PT Kuantum Buku Sejahtera
Anggota IKAPI No. 212/JTI/2019
Jalan Pondok Blimbing Indah Selatan X N6 No. 5 Malang - Jawa Timur
Telp. (0341) 438 2294, Hotline 0822 9951 2221;
Situs web: www.quantumbook.id

Dilarang memperbanyak atau memindahkan sebagian atau seluruh isi buku ini dalam bentuk apa pun, baik
secara elektronis maupun mekanis, termasuk memfotokopi, merekam atau dengan sistem penyimpanan
lainnya, tanpa izin tertulis dari PT Kuantum Buku Sejahtera.
Daftar Isi

Prakata ...................................................................................................................... v
Bab 1 Algoritma Pemrograman................................................................................... 1
A. Algoritma Pemrograman.................................................................................................. 2
B. Membuat Alur Logika........................................................................................................ 3
C. Pemrograman....................................................................................................................... 4
Uji Kompetensi............................................................................................................................... 9

Bab 2 Arsitektur Mikroprosesor.................................................................................. 13


A. Mengenal Mikroprosesor ................................................................................................ 14
B. Penerapan Arsitektur Mikroprosesor .......................................................................... 18
C. Prinsip Kerja Sistem Minimum Mikroprosesor ........................................................ 21
Uji Kompetensi............................................................................................................................... 23

Bab 3 Komponen Pendukung Sistem Minimum Mikroprosesor.............................. 27


A. Mikroprosesor...................................................................................................................... 28
B. Blok Diagram Sistem Minimum Mikroprosesor....................................................... 31
C. Memori.................................................................................................................................... 33
Uji Kompetensi............................................................................................................................... 41

Bab 4 Bahasa Pemrograman Mikroprosesor............................................................. 45


A. Pemrograman Mikroprosesor Z80 ............................................................................... 46
B. Analisa Masalah .................................................................................................................. 46
C. Pembuatan Flowchart ...................................................................................................... 47
D. Perancangan Program ...................................................................................................... 48
E. Penulisan Program ............................................................................................................. 48
F. Program Assembly ............................................................................................................. 48
G. Pengisian Program ............................................................................................................. 49
H. Pengujian dan Pemeriksaan Program ......................................................................... 49
I. Contoh-Contoh Program ................................................................................................. 50
Uji Kompetensi............................................................................................................................... 52

Bab 5 Aplikasi Sederhana Sistem Minimum Mikroprosesor.................................... 55


A. Aplikasi Dasar Operasi Aritmetik dan Logika............................................................ 56
B. Perbandingan Instruksi Z80 dengan 8080/8085 .................................................... 61
Uji Kompetensi............................................................................................................................... 87

Bab 6 Arsitektur Mikrokontroler................................................................................. 91


A. Mengenal Mikrokontroler ............................................................................................... 92
B. Penerapan Arsitektur Mikrokontroler ......................................................................... 97
C. Prinsip Kerja Sistem Minimum Mikrokontroler ....................................................... 100
D. Komponen Sistem Minimum Mikrokontroler .......................................................... 100
E. Blok Diagram Sistem Minimum Mikrokontroler ..................................................... 102
Uji Kompetensi............................................................................................................................... 104

iii
Bab 7 Pemrograman Mikrokontroler......................................................................... 107
A. Bahasa Mesin ....................................................................................................................... 108
B. Bahasa Assembly ................................................................................................................ 108
C. Bahasa Tingkat Tinggi ....................................................................................................... 108
D. Penulisan Bahasa Pemrograman (Bahasa C) ............................................................ 109
E. Tipe Data ............................................................................................................................... 111
F. Operator ................................................................................................................................ 112
Uji Kompetensi............................................................................................................................... 115

Bab 8 Aplikasi Sederhana Mikrokontroler................................................................. 119


A. Mikrokontroler AVR ........................................................................................................... 120
B. Mikrokontroler Arduino Board ...................................................................................... 122
C. Contoh Aplikasi Sederhana Mikrokontroler ............................................................. 124
Uji Kompetensi............................................................................................................................... 141

Glosarium............................................................................................................................ 145
Daftar Pustaka.................................................................................................................... 147
Biodata Penulis................................................................................................................... 149
Biodata Konsultan.............................................................................................................. 150
Tim Kreatif........................................................................................................................... 151

iv
Prakata

Puji syukur kehadirat Alah SWT atas limpahan rahmat dan karunianya sehingga buku
Pemrograman, Mikroprosesor dan Mikrokontroler Kelas XI menggunakan kurikulum 2013
edisi revisi telah diselesaikan dengan baik. Buku ini merupakan penyempurna dari edisi
sebelumnya yang diharapkan dapat menjadi buku panduan belajar dan praktik untuk siswa
Sekolah Menengah Kejuruan (SMK) bidang keahlian Teknologi dan Rekayasa, Kompetensi
Keahlian Teknik Elektronika, Program Keahlian Teknik Audio Video.
Kurikulum 2013 mulai diterapkan secara bertahap pada tahun pelajaran 2013/2014.
Menurut Permendikbud Nomor 70 Tahun 2013 tentang kerangka dasar dan struktur kurikulum
Sekolah Menengah Kejuruan/Madrasah Aliyah Kejuruan, kurikulum 2013 dirancang dengan
karakteristik mencakup aspek pengetahuan, keterampilan, dan sikap secara utuh. Keutuhan
tersebut menjadi dasar dalam perumusan kompetensi dasar setiap mata pelajaran, sehingga
kompetensi dasar kelompok sikap, kompetensi dasar kelompok pengetahuan, dan kompetensi
dasar kelompok keterampilan. Semua mata pelajaran dirancang mengikuti rumusan yang
sudah ada tersebut. Buku ajar Pemrograman, Mikroprosesor, dan Mikrokontroler kelas XI
Program Keahlian Teknik Audio Video ini tunduk pada ketentuan tersebut.
Terima kasih kepada semua pihak yang telah mendukung dan membantu
terselesaikannnya karya ini. Buku ini disusun dan dirancang dengan baik oleh praktisi dan
akademisi yang bersinggungan langsung dengn proses belajar mengajar siswa Sekolah
Menengah Kejuruan (SMK). Harapannya, siswa lebih dimudahkan dan siap ditempatkan di
tengah-tengah masyarakat dalam menerapkan ilmu hasil belajarnya selama ini.
Penulis dengan senang hati menerima kritik dan saran yang membangun untuk
penyempurnaan buku ajar ini. Penulis mengucapkan terima kasih banyak pada semua pihak
yang terlibat dalam penyusunan buku ajar Pemrograman, Mikroprosesor dan Mikrokontroller
ini.

Penulis

Abdian Putra Primana, S.Pd.

v
Do not Pray
for an Easy life,
pray for the strength to
endure a difficult one
Jangan kamu berdoa untuk hidup yang mudah,
Berdoalah agar diberi kekuatan supaya dapat
menghadapi hidup yang sulit.

"Bruce Lee"

vi
B AB

1
Algoritma
Pemrograman

Kompetensi Dasar
3.1 Menerapkan algoritma pemrograman untuk pemecahan masalah
4.1 Memecahkan masalah dengan algoritma pemrograman

Tujuan Pembelajaran
Setelah mempelajari bab ini, siswa diharapkan mampu
1. menjelaskan konsep, fungsi, dan struktur algoritma pemrograman dengan tepat;
2. menguraikan jenis-jenis algoritma pemrogaman dengan santun;
3. menentukan simbol-simbol diagram alir/flow chart untuk membuat alur logika pemrograman yang
dipelajari dengan tanggung jawab;
4. menerapkan strukrtur algoritma pemrograman sederhana dengan tepat;
5. memilih urutan pemecahan masalah menggunakan metode deskriptif dengan santun; dan
6. menunjukkan urutan pemecahan masalah menggunakan motode diagram alir dengan tanggung
jawab.

Algoritma Pemrograman 1
Bahasa pemrograman semakin banyak dipelajari oleh banyak orang. Hal ini berkaitan
dengan kemajuan zaman yang menjadikan teknologi sebagai hal penting untuk menunjang
kemajuan. Untuk orang awam yang ingin belajar bahasa pemrograman hal dasar yang
harus dipahami adalah algoritma. Lebih jelas terkait algoritma, mari mempelajari materi
berikut ini.

A. Algoritma Pemrograman

Algoritma adalah urutan langkah-langkah logis yang befungsi sebagai penyelesaian


masalah yang disusun secara sistematis. Algoritma yang dapat menyelesaikan suatu
permasalahan dalam waktu singkat memiliki tingkat kerumitan yang rendah, sementara
algoritma yang membutuhkan waktu lama untuk menyelesaikan masalah membutuhkan
tingkat kerumitan yang tinggi. Terdapat beberapa hal yang diperhatikan dalam membuat
algoritma sebagai berikut.
1. Berisi langkah-langkah penyelesaian masalah.
2. Tidak ada notasi yang baku dalam penulisan teks algoritmis, seperti notasi bahasa
pemrograman.
3. Setiap orang dapat membuat tulisan dan notasi algoritmis sendiri.
4. Notasi algoritmis bukan notasi pemrograman.
5. Algoritma sederhana digunakan untuk membantu Anda mengonversi suatu
permasalahan dalam bahasa pemrograman.
6. Algoritma menjadi hasil pemikiran konseptual agar dapat dilaksanakan oleh
komputer.
Contoh algoritma jika seseorang ingin mengirim surat kepada temannya di tempat
lain, langkah yang harus dilakukan, yaitu
1. menyiapkan alat tulis;
2. menulis surat;
3. surat dimasukkan ke amplop tertutup;
4. amplop ditempeli perangko secukupnya; dan
5. pergi ke kantor pos untuk mengirimkannya.
Dalam matematis logika, contoh algoritma menghitung luas persegi panjang.
1. mulai,
2. baca data panjang dan lebar,
3. luas adalah panjang kali lebar,
4. tampikan luas, dan
5. selesai.
Algoritma di atas termasuk algoritma sangat sederhana, karena hanya terdapat lima
langkah. Tidak ada struktur perulangan atau pemilihan. Satu langkah dilakukan hanya
satu kali. Sekilas, algoritma di atas sudah benar. Namun, apabila dicermati terdapat
kesalahan mendasar sebab tidak ada batasan nilai panjang dan lebar. Jika nilai panjang
dan lebar lebih dari nol, lanjut langkah berikutnya. Sebaliknya, jika panjang dan lebar
kurang dari nol, berarti berhenti.

2 Pemrograman Mikroprosesor dan Mikrokontroler


B. Membuat Alur Logika

1. Penyajian atau Penulisan Pemrograman


Secara umum, penyajian dapat dibedakan menjadi dua bentuk, yakni tulisan dan
gambar. Algoritma dapat disajikan dengan tulisan testruktur (bahasa Indonesia/
bahasa Inggris) dan pseudocode. Pseudocode merupakan kode yang mirip
dengan kode pemrograman yang sebenarnya, seperti pascal atau C sehingga tepat
digunakan dalam menggambarkan algoritma yang akan dikomunikasikan kepada
pemrograman. Algoritma yang disajikan dalam gambar berupa flowchart.
2. Flowchart (Diagram Alir)
Flowchart (diagram alir) adalah skema/bagan yang menunjukkan aliran di dalam
suatu program secara logika.

Gambar 1.1 Jenis-jenis flowchart


Sumber: Tim Asisten Dosen UM, 2013
3. Struktur Dasar Algoritma
a. Runtutan adalah program untuk pernyataan yang berurutan.
b. Percabaangan adalah program yang menggunakan pemilihan atau penyeleksian
kondisi.
c. Perulangan adalah program yang menyatakan akan diekseskusi berulang-ulang.

Algoritma Pemrograman 3
Gambar 1.2 Struktur dasar algoritma
Sumber: Abdian Putra Pramana

C. Pemrograman

Pemrograman adalah proses membuat perangkat lunak komputer dengan menerapkan


algoritma dan struktur data tertentu menggunakan bahasa pemrograman. Algoritma
didefinisikan sebagai metode dan tahapan sistematis yang digunakan untuk memecahkan
suatu permasalahan. Sementara struktur data diartikan sebagai tempat tatanan
penyimpanan data yang dibutuhkan program pada komputer. Kode program yang telah
ditulis di-compile dan dieksekusi untuk menjalankannya.
Compile sebagai proses penerjemahan kode program yang ditulis menggunakan
bahasa pemrograman ke bahasa mesin dapat dimengerti oleh komputer sehingga
komputer mengerti hal yang diperintahkan. Bahasa pemrograman ada tiga, di antaranya
pemrograman tingkat tinggi, sedang, dan rendah. Untuk menerjemahkan bahasa
pemrograman yang Anda tulis diperlukan compiler dan interpreter. Compiler sebagai
suatu program menerjemahkan bahasa program ke bahasa objek secara keseluruhan.
Dalam hal ini interpreterberupa kegiatan menganalisis dan mengeksekusi setiap baris
dari program secara keseluruhan. Flowchart atau diagram alir adalah diagram yang
digunakan untuk merepresentasikan algoritma atau aliran program (flow) secara logika.
Mengenal IDE (Integrated Development Equipment) Visual C++
IDE (Integrated Development Equipment) adalah program komputer yang memiliki
beberapa fasilitas yang diperlukan dalam pembangunan perangkat lunak. Tujuan dari
IDE menyediakan semua utilitas yang diperlukan dalam membangun perangkat lunak.
Contoh penggunaan aplikasi IDE dapat dipahami seperti berikut.

4 Pemrograman Mikroprosesor dan Mikrokontroler


1. Membuka Aplikasi Dev-C++
a. Klik start  Dev-C++

Sumber: Abdian Putra Pramana


b. Tampilan awal IDE Dev-C++ 5.11

Sumber: Abdian Putra Pramana


2. Membuat File Baru
a. Klik New di bagian pojok kanan atas.

Sumber: Abdian Putra Pramana

Algoritma Pemrograman 5
b. Pilih Source File.

Sumber: Abdian Putra Pramana


3. Membuat Aplikasi Sederhana
a. Ketik kode berikut ini pada aplikasi.
#include <stdio.h>

int main ()

printf(“Hello World\n”);

}
b. Setelah itu, simpan pada My Document  Nomor Kelompok_Nama Kelompok
 Modul1  Latihan1.C
4. Melakukan Compile pada Program
Klik tombol “Compile” pada toolbox atau tekan F9

Sumber: Abdian Putra Pramana

6 Pemrograman Mikroprosesor dan Mikrokontroler


5. Melakukan Eksekusi pada Program
Klik tombol “Run” atau tekan F10.

Sumber: Abdian Putra Pramana

Tugas Individu
1. Menampilkan Kalimat 1
Nama program : Menampilkan kalimat Selamat Datang 1
Bahasa pemrogramam : C++
Compiler : Visual C++ 6.0/ Code Block
Script program :
#include <stdio.h>

void main ()

printf(“Hello World\n”);

}
Output Program :

2. Menampilkan Kalimat 2
Nama program : Menampilkan kalimat Selamat Datang 2
Bahasa pemrogramam : C++
Compiler : Visual C++ 6.0

Algoritma Pemrograman 7
Script program :
#include <stdio.h>

Using namespace std;

int main ()

printf(“Selamat Datang di Kelas Pemrograman TEI\n”);

printf(“SMK AL HUDA KOTA KEDIRI\n”);

}
Output program :

Rangkuman
Algoritma adalah urutan langkah-langkah logis yang befungsi sebagai penyelesaian
masalah dan disusun secara sistematis. Algoritma yang dapat menyelsaikan suatu
permasalahan dalam waktu singkat memiliki tingkat kerumitan rendah, sementara
algoritma yang membutuhkan waktu lama untuk menyelesaikan masalah
membutuhkan tingkat kerumitan tinggi.
Algoritma dapat disajikan dengan tulisan testruktur (bahasa Indonesia/bahasa
Inggris) dan pseudocode. Pseudocode merupakan kode yang mirip dengan kode
pemrograman yang sebenarnya, seperti pascal atau C sehingga tepat digunakan
dalam menggambarkan algoritma yang akan dikomunikasikan kepada pemrograman.
Algoritma yang disajikan dalam gambar berupa flowchart.
Pemrograman diartikan sebagai proses membuat perangkat lunak komputer
dengan menerapkan algoritma dan struktur data tertentu menggunakan bahasa
pemrograman. Sementara algoritma adalah metode dan tahapan sistematis yang
digunakan untuk memecahkan suatu permasalahan.

8 Pemrograman Mikroprosesor dan Mikrokontroler


Uji Kompetensi
A. Soal Pilihan Ganda
Pilihlah jawaban yang paling tepat.
1. Urutan langkah-langkah logis yang befungsi sebagai penyelesaian masalah dan
disusun secara sistematis disebut dengan ….
a. flowchart
b. struktur data
c. bagan alur
d. algoritma
e. diagram blok
2. Beberapa hal berikut ini yang diperhatikan dalam membuat algoritma, yaitu ….
a. algoritma merupakan hasil pemikiran prosedural
b. berisi langkah-langkah penyelesaian masalah
c. tidak ada notasi yang baku dalam penulisan teks algoritma seperti notasi bahasa
pemrograman
d. setiap orang dapat membuat tulisan dan notasi algoritmis sendiri
e. notasi algoritmis bukan notasi pemrograman
3. Algoritma merupakan hasil pemikiran agar dapat dilaksanakan oleh komputer. Hal
tersebut merupakan definisi algoritma secara ….
a. konseptual
b. prosedural
c. sosial
d. fungsional
e. liberal
4. Urutan dari diagram matematis logika algoritma menghitung luas persegi panjang
di bawah ini yang benar adalah ….
a. mulai - baca data panjang dan lebar - luas adalah panjang kali lebar - tampikan
luas - selesai
b. mulai - baca data tinggi - luas adalah panjang kali lebar - tampikan luas - selesai
c. mulai - baca data panjang - luas adalah tinggi kuadrat - tampikan luas - selesai
d. mulai - baca data luas - luas adalah panjang kuadrat - tampikan luas - selesai
e. mulai - baca data panjang dan lebar - luas adalah lebar kuadrat - tampikan
luas - selesai
5. Penyajian program dapat dilakukan dalam dua bentuk, yaitu ….
a. tulisan
b. gambar dan tulisan
c. flowchart
d. gambar
e. diagram alir
6. Kode yang mirip dengan kode pemrograman yang sebenarnya, seperti pascal
atau C sehingga tepat digunakan dalam menggambarkan algoritma yang akan
dikomunikasikan kepada pemrograman disebut dengan ….
a. psesudocode
b. menumonic

Algoritma Pemrograman 9
c. flowchart
d. ladder diagram
e. dotmatrix
7. Algoritma yang disajikan dalam gambar disebut dengan….
a. psesudocode
b. menumonic
c. flowchart
d. ladder diagram
e. dotmatrix
8. Simbol yang memiliki fungsi sebagai permulaan atau akhir program disebut dengan
….
a. terminator
b. decision
c. preparation
d. flow line
e. predefined process
9. Untuk program yang menggunakan pemilihan atau penyeleksian kondisi, pada
struktur datanya disebut dengan ….
a. variabel
b. runtutan
c. perulangan
d. percabangan
e. konstanta
10. Proses membuat perangkat lunak komputer dengan menerapkan algoritma dan
struktur data tertentu menggunakan bahasa pemrograman disebut dengan ….
a. pemrograman
b. upload
c. download
d. transfer
e. compiler
11. Tempat tatanan penyimpanan data yang dibutuhkan program pada komputer
disebut dengan ….
a. struktur data
b. flowchart
c. interpreter
d. compiler
e. CPU
12. Suatu program yang menerjemahkan bahasa program ke bahasa objek secara
keseluruhan program adalah ….
a. compiler
b. interpreter
c. menumonic
d. algoritma
e. transfer

10 Pemrograman Mikroprosesor dan Mikrokontroler


13. Kegiatan menganalisis dan mengeksekusi setiap baris dari program secara
keseluruhan disebut dengan ….
a. compile
b. transfer
c. interpreter
d. upload
e. analyze
14. Program komputer dengan beberapa fasilitas yang diperlukan dalam pembangunan
perangkat lunak disebut dengan ….
a. pseudocode
b. IDE
c. mneumonic
d. decision
e. ladder
15. Menyediakan semua utilitas yang diperlukan dalam membangun perangkat lunak
merupakan bagian dari ….
a. definisi IDE
b. tujuan IDE
c. target IDE
d. sasaran IDE
e. prosedur IDE

B. Soal Esai
Jawablah dengan tepat dan benar.
1. Algoritma adalah urutan langkah-langkah … yang befungsi sebagai penyelesaian
masalah dan disusun secara ….
2. Secara umum, penyajian pemrograman terdiri atas dua bentuk, yakni … dan ….
3. Algoritma dapat disajikan dengan tulisan … (bahasa Indonesia/ Inggris) dan ….
4. Pseudocode merupakan kode yang mirip dengan kode pemrograman sebenarnya,
seperti … atau …, sedangkan algoritma yang disajikan dalam gambar disebut ….
5. Flowchart (diagram alir) adalah skema/bagan yang menunjukkan … di dalam suatu
program secara ….
6. Pemrograman adalah proses membuat perangkat lunak komputer dengan
menerapkan … dan … data tertentu menggunakan bahasa ….
7. Algoritma adalah metode dan tahapan … yang digunakan untuk memecahkan
suatu ….
8. Compile adalah menerjemahkan kode … yang ditulis menggunakan bahasa
pemrograman, ke bahasa … yang dapat dimengerti oleh komputer sehingga
komputer mengerti apa yang ….
9. Untuk menterjemahkan bahasa pemrograman yang ditulis diperlukan … dan ….
10. Flowchart atau diagram alir adalah diagram yang digunakan untuk merepresentasikan
algoritma atau aliran … (flow) secara ….

Algoritma Pemrograman 11
C. Soal Esai Uraian
Jawablah dengan ringkas dan benar.
1. Jelaskan definisi algoritma pemrograman.
2. Jelaskan kegunaan algoritma pemrograman.
3. Sebutkan tiga struktur algoritma pemrograman.
4. Buatlah contoh algoritma dalam kehiupan sehari-hari.
5. Sebut dan jelaskan tiga simbol diagram alir.
6. Jelaskan yang dimaksud dengan bahasa pemrograman.
7. Jelaskan yang dimaksud dengan compiler dan interpreter.
8. Jelaskan definisi dari IDE.
9. Jelaskan yang Anda ketahui tentang Microsoft Visual Studio C++.
10. Sebutkan tiga tools yang ada pada Microsoft Visual Studio C++.

12 Pemrograman Mikroprosesor dan Mikrokontroler

Anda mungkin juga menyukai