Buku Ajar Mikrokontroler Dan Interface.Pdf
Total Page:16
File Type:pdf, Size:1020Kb
i BUKU AJAR MIKROKONTROLER DAN INTERACE Sutarsi Suhaeb, S.T., M.Pd. Yasser Abd Djawad, S.T., M.Sc., Ph.D. Dr. Hendra Jaya, S.Pd., M.T. Ridwansyah, S.T., M.T. Drs. Sabran, M.Pd. Ahmad Risal, A.Md. |||||||||||||||||||||||||||||| UNM ii MIKROKONTROLER DAN INTERFACE Universitas Negeri Makassar Fakultas Teknik Pendidikan Teknik Elektronika Penulis: Ahmad Risal Desain Sampul: Ahmad Risal Pembimbing: 1. Sutarsi Suhaeb, S.T., M.Pd. 2. Yasser Abd Djawad, S.T., M.Sc., Ph.D. Penguji: 1. Dr. Hendra Jaya, S.Pd., M.T. 2. Ridwansyah, S.T., M.T. Validator Konten/Materi: Drs. Sabran, M.Pd. Validator Desain/Media: Dr. Muh. Ma'ruf Idris, S.T., M.T. @Desember2017 Kata Pengantar Puji dan syukur penulis panjatkan atas kehadirat Allah SWT, yang telah memberikan rahmat dan karuniaNya, sehingga Buku Ajar Mikrokontroler dan Interface ini dapat diselesaikan dengan baik. Pembahasan materi pada buku ajar ini dilakukan dengan cara memaparkan landasan teori elektronika dan instrumentasi digital khususnya tentang mikrokontroler. Mikrokontroler adalah bidang ilmu keteknikan yang mempelajari tentang pengontrolan alat elektronika yang mengkombinasikan hardware (rangkai- an elektronika) dengan software (pemrograman). Interface adalah model pengaplikasian mikrokontroler dengan perangkat lain ( Perangkat Antar- muka). Mata Kuliah Mikrokontroler dan Interface adalah mata kuliah yang memberikan ilmu pengotrolan berbasis program yang dapat dirubah setiap saat untuk mengontrol bermacam-macam perangkat lewat berbagai macam media komunikasi. Isi buku ajar ini mencakup materi pokok mikrokontroler dan interfa- ce yang mencakup: Sejarah dan Pengenalan Mikrokontroler, Pemrograman Mikrokontroler AVR dan Mikrokontroler Arduino, Interface Data Digital, Interface Dengan LCD, Interface Input Analog (ADC), Interface Output PWM, Interface Serial USART, Interface Serial SPI, Interface Serial I2C. Pada kesempatan ini penyusun menyampaikan terima kasih kepada se- mua pihak yang telah membantu penyusun dalam menyelesaikan buku ajar ini. Mudah-mudahan buku ajar ini dapat memberikan sedikit manfaat bagi para mahasiswa pada umumnya yang mengambil mata kuliah mikrokontro- ler dan interface. Makkassar, November 2017 Penulis,. iii iv Daftar Isi Kata Pengantar iii Daftar Isi iv 1 Pengenalan & Sejarah Mikrokontroler 1 Tujuan Pembelajaran . .1 1.1 Pengenalan Mikrokontroller . .2 1.2 Sejarah Mikrokontroler . .3 1.3 Mikroprosesor, Mikro-Komputer dan Mikrokontroler . .5 1.4 Arsitektur Mikrokontroler . .6 1.5 Jenis-Jenis Mikrokontroler . .8 1.6 Produsen Mikrokontroler . .9 1.6.1 Motorola . .9 1.6.2 Mitsubishi . .9 1.6.3 NEC . 10 1.6.4 Hitachi . 10 1.6.5 Philips . 10 1.6.6 Intel . 11 1.6.7 Toshiba . 11 1.6.8 National Semiconductor . 12 1.6.9 Zilog . 12 1.6.10 Texas Instruments . 13 1.6.11 Siemens . 13 1.6.12 Sharp . 13 Rangkuman . 14 Soal Formatif . 14 v vi DAFTAR ISI 2 Hardware dan Software Mikrokontroler AVR dan Arduino 15 Tujuan Pembelajaran . 15 2.1 Mikrokontroler AVR . 16 2.1.1 Arsitektur . 16 2.1.2 Memori . 17 2.2 Arduino Board . 18 2.3 Algoritma Pemrograman . 22 2.3.1 Definisi Algoritma . 23 2.3.2 Program . 23 2.3.3 Perbedaan interpreter dan compiler . 24 2.3.4 Penulisan Algoritma . 25 2.4 Bahasa Pemprograman . 27 2.4.1 Bahasa Mesin . 27 2.4.2 Bahasa Assembly . 27 2.4.3 Bahasa Tingkat Tinggi . 28 2.5 Bahasa Pemrograman C . 29 2.5.1 Penulisan Bahasa C AVR . 29 2.5.2 Penulisan Bahasa C Arduino . 31 2.5.3 Tipe Data . 32 2.5.4 Operator . 32 Rangkuman . 34 Soal Formatif . 34 3 Interface Data Digital 35 Tujuan Pembelajaran . 35 3.1 Data Digital . 36 3.2 Sistem Digital dan Sistem Analog . 37 3.3 Aplikasi Interface Data Digital . 38 3.3.1 Led Emiting Diode . 38 3.3.2 Seven Segment . 39 3.3.3 Led Matrix . 40 3.3.4 Motor . 42 3.3.5 Buzzer . 43 3.3.6 Push Button . 43 3.4 Data Digital Mikrokontroler AVR . 45 3.4.1 Aplikasi Kontrol Output LED . 49 3.4.2 Aplikasi Kontrol Output Seven Segement . 50 3.4.3 Aplikasi Kontrol Output Motor DC . 52 3.4.4 Aplikasi Input dengan Push Button . 55 3.5 Data Digital Arduino . 56 DAFTAR ISI vii 3.5.1 Aplikasi Kontrol Output LED . 57 3.5.2 Aplikasi Kontrol Output Seven Segement . 58 3.5.3 Aplikasi Kontrol Output Motor DC . 60 3.5.4 Aplikasi Input dengan Push Button . 63 Rangkuman . 64 Soal Formatif . 64 Tugas Latihan . 64 4 Interface Dengan LCD 65 Tujuan Pembelajaran . 65 4.1 Pengenalan LCD . 66 4.2 Fungsi Pin-Pin Modul LCD . 67 4.3 Interface LCD di Mikrokontroler AVR . 68 4.3.1 Rangkaian Hardware . 68 4.3.2 Pemrograman . 69 4.4 Interface LCD di Arduino . 71 4.4.1 Rangkaian Hardware . 71 4.4.2 Pemrograman Software . 72 Rangkuman . 74 Soal Formatif . 74 Tugas Latihan . 74 5 Interface Input Analog (ADC) 77 Tujuan Pembelajaran . 77 5.1 Data Analog . 78 5.2 Sinyal Analog . 79 5.3 Analog to Digital Converter . 81 5.3.1 Pengertian ADC . 81 5.3.2 Prinsik Kerja ADC . 82 5.3.3 Komparator ADC . 82 5.3.4 Jenis-Jenis ADC . 83 5.4 Komponen Antar Muka ADC . 83 5.4.1 Sensor Cahaya . 84 5.4.2 Sensor Suhu . 85 5.4.3 Sensor Tekanan . 86 5.4.4 Sensor Kecepatan . 87 5.4.5 Sensor Magnet . 87 5.4.6 Sensor Penyandi . 87 5.4.7 Flow Meter Sensor . 88 5.4.8 Flame Sensor . 88 viii DAFTAR ISI 5.5 Interface ADC di Mikrokontroler AVR . 88 5.5.1 Rangkaian . 89 5.5.2 Pemrograman . 90 5.6 Interface ADC di Arduino . 92 5.6.1 Rangkaian . 92 5.6.2 pemrograman . 92 Rangkuman . 94 Soal Formatif . 94 Tugas Latihan . 95 6 Interface Output PWM 97 Tujuan Pembelajaran . 97 6.1 Timer/Counter . 98 6.1.1 Timer / Counter 8 Bit . 98 6.1.2 Timer / Counter 16 Bit . 100 6.2 PWM (Pulse Width Modulation) . 101 6.3 Komponen dengan kontrol output PWM . 102 6.3.1 LED . 103 6.3.2 Motor DC . 104 6.3.3 Motor Servo . 105 6.4 Interface PWM di mikrokontroler AVR . 107 6.4.1 Interface PWM menggunakan Motor DC . 107 6.4.2 Interface PWM menggunakan Motor Servo . 109 6.5 Interface PWM di Arduino . 111 6.5.1 Interface PWM dengan Motor DC . 112 6.5.2 Interface PWM dengan Motor Servo . 113 Rangkuman . 115 Soal Formatif . 115 Tugas Latihan . 115 7 Interface Serial USART 117 Tujuan Pembelajaran . 117 7.1 Komunikasi Serial . 118 7.2 Antarmuka Serial dan USART . 118 7.3 Register USART . 120 7.3.1 Register UCSRA . ..