02 Arduino UNO
02 Arduino UNO
Erman Al Hakim
SISTEM MIKROKONTROLLER
AKADEMI TEKNOLOGI BOGOR
2025
Arduino UNO
Arduino adalah salah satu manufaktur microcontroller board
yang bersifat open source.
• Arduino UNO adalah papan mikrokontroler yang berbasis pada
ATmega328P ( lembar data ). Papan ini memiliki 14 pin input/output
digital (6 di antaranya dapat digunakan sebagai output PWM), 6 input
analog, resonator keramik 16 MHz (CSTCE16M0V53-R0), koneksi USB,
jack daya, header ICSP, dan tombol reset.
• Papan ini berisi semua yang diperlukan untuk mendukung
mikrokontroler; cukup sambungkan ke komputer dengan kabel USB
atau nyalakan dengan adaptor AC-ke-DC atau baterai untuk memulai.
Anda dapat mengutak-atik UNO tanpa terlalu khawatir melakukan
kesalahan, skenario terburuk Anda dapat mengganti chip dengan
beberapa dolar dan memulai lagi.
• "Uno" berarti satu dalam bahasa Italia dan dipilih untuk menandai
peluncuran Arduino Software (IDE) 1.0 . Papan UNO dan versi 1.0 dari
Arduino Software (IDE) adalah versi referensi Arduino, yang kini telah
berevolusi menjadi rilis yang lebih baru. Papan UNO adalah yang
pertama dalam serangkaian papan USB Arduino, dan model referensi
untuk platform Arduino; untuk daftar lengkap papan terkini, lama,
atau lama, lihat indeks papan Arduino.
• Board Arduino uno Rev3 adalah Board Mikrokontroler
(Development Board) menggunakan chip mikrokontroler
ATmega328 yang fleksibel dan open-source, Software
dan Hardware nya relatif mudah di gunakan sehingga banyak di
pakai oleh pemula sampai ahli.Untuk dapat digunakan Board
Arduino Uno di hubungkan ke komputer dengan menggunakan
kabel USB atau dengan adaptor atau Power Supply 7-12 V DC.
Arduino Uno dapat di gunakan untuk mendeteksi lingkungan
dengan membaca data dari berbagai sensor .misalnya jarak,
inframerah, suhu, cahaya, ultrasonik, tekanan,kelembaban dan
lain lain
• Secara garis besar Arduino mempunyai 14 pin Digital yang
dapat di set sebagai Input atau Output dan 6 pin input
Analog.Untuk lebih jelasnya untuk spesifikasi Arduino Uno bisa
dilihat di bawah ini
Fungsi tiap bagian-bagian Arduino Uno yang
diberi tanda antara lain:
1. Power USB, fungsi dari power usb pada modul Arduino adalah
sebagai berikut:
a. Media pemberi tegangan listrik ke Arduino
b. Media tempat memasukkan program dari komputer ke Arduino
c. Sebagai media untuk komunikasi serial antara komputer dan
Arduino R3 maupun sebaliknya.
2. Crystal Oscillator, fungsi crystal oscillator adalah sebagai jantung
Arduino yang membuat dan mengirimkan detak ke mikrokontroler agar
beroperasi setiap detaknya.
3. Voltage Regulator, berfungsi menstabilkan tegangan listrik yang masuk ke
Arduino.
4. Power Jack, fungsi dari power jack pada modul Arduino adalah sebagai
media pemberi tegangan listrik ke Arduino apabila tak ingin
menggunakan Power USB.
5. Pin Reset, berfungsi untuk mereset Arduino agar program dimulai dari
awal. Cara penggunannya yaitu dengan menghubungkan pin reset ini
langsung ke ground.
6. Pin Tegangan 3,3 Volt, berfungsi sebagai pin positif untuk komponen
yang menggunakan tegangan 3,3 volt.
7. Pin Tegangan 5 Volt, berfungsi sebagai pin positif untuk komponen yang
menggunakan tegangan 5 volt. Pin 5 volt sering juga disebut pin VCC.
8. Pin Ground (GND), fungsi pin GND adalah sebagai pin negatif pada tiap
komponen yang dihubungkan ke Arduino.
9. Pin Penambah Tegangan (VIN), berfungsi sebagai media pemasok listrik
tambahan dari luar sebesar 5 volt bila tak ingin menggunakan Power USB
atau Power Jack.
10. Pin Analog, berfungsi membaca tegangan dan sinyal analog dari berbagai
jenis sensor untuk diubah ke nilai digital.
11. Main Microcontroller, berfungsi sebagai otak yang mengatur pin-pin
pada Arduino.
12. Tombol Reset, komponen pendukung Arduino yang berfungsi untuk
mengulang program dari awal dengan cara menekan tombol.
13. Pin ICSP (In-Circuit Serial Programming), berfungsi untuk memprogram
mikrokontroler seperti Atmega328 melalui jalur USB Atmega16U2.
14. Lampu Indikator Power, berfungsi sebagai indikator bahwa Arduino
sudah mendapatkan suplai tegangan listrik yang baik.
15. Lampu TX (transmit), berfungsi sebagai penanda bahwa sedang terjadi
pengiriman data dalam komunikasi serial.
16. Lampu RX (receive), berfungsi sebagai penanda bahwa sedang terjadi
penerimaan data dalam komunikasi serial.
17. Pin Input/Output Digital, berfungsi untuk membaca nilai logika 1 dan 0
atau mengendalikan komponen output lain seperti LED, relay, atau
sejenisnya. Pin ini termasuk paling banyak digunakan saat membuat
rangkaian.
• Untuk pin yang berlambang “~” artinya dapat digunakan untuk
membangkitkan PWM (Pulse With Modulation) yang fungsinya bisa
mengatur tegangan output. Biasanya digunakan untuk mengatur
kecepatan kipas atau mengatur terangnya cahaya lampu.
18. Pin AREF (Analog Reference), fungsi pin Arduino Uno yang satu ini
untuk mengatur tegangan referensi eksternal yang biasanya berada
di kisaran 0 sampai 5 volt.
19. Pin SDA (Serial Data), berfungsi untuk menghantarkan data dari
modul I2C atau yang sejenisnya.
20. Pin SCL (Serial Clock), berfungsi untuk menghantarkan sinyal waktu
(clock) dari modul I2C ke Arduino.
Pin digital arduino uno ada 14 Pin yang dapat di gunakan sebagai Input atau
Output dan 6 pin Analog berlabel A0 sampai A5 sebagai ADC ,setiap Pin
Analog memiliki resolusi sebesar 10 bit.Ada beberapa pin memiliki fungsi
khusus :
• Serial : Pin 0 (RX) dan Pin 1 (TX) dapat di gunakan untuk Mengirim (Tx) dan
Menerima (Rx) TTL data serial
• External Interrupts : INT0 adalah Pin 2 dan INT1 adalah Pin 3
• PWM : 3, 5, 6, 9, 10, and 11.menyediakan output PWM 8 bit
• SPI : 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK).Pin ini mendukung komunikasi
SPI menggunakan SPI Library
• LED : 13. Buit-in LED terhubung dengan Pin Digital 13
• I2C : A4 adalah pin SDA dan A5 adalah pin SCL. Komunikasi I2C
menggunakan Wire library.
• ATmega328 adalah micro controller keluaran Atmel yang merupakan
anggota dari keluarga AVR 8-bit. Mikro kontroller ini memiliki
kapasitas flash (program memory) sebesar 32 Kb (32.768 bytes),
memori (static RAM) 2 Kb (2.048 bytes), dan EEPROM (non-volatile
memory) sebesar 1024 bytes. Kecepatan maksimum yang dapat
dicapai adalah 20 MHz.
• ATMega328 adalah mikrokontroler keluaran dari atmel yang
mempunyai arsitektur RISC (Reduce Instruction Set Computer) yang
mana setiap proses eksekusi data lebih cepat dari pada arsitektur
CISC (Completed Instruction Set Computer).
• Rancangan khusus dari keluarga prosesor ini memungkinkan
tercapainya kecepatan eksekusi hingga 1 cycle per instruksi untuk
sebagian besar instruksinya, sehingga dapat dicapai kecepatan
mendekati 20 juta instruksi per detik.
• ATmega328 adalah prosesor yang kaya fitur. Dalam chip yang
dipaketkan dalam bentuk DIP-28 ini terdapat 20 pin Input/Output (21
pin bila pin reset tidak digunakan, 23 pin bila tidak menggunakan
oskilator eksternal), dengan 6 di antaranya dapat berfungsi sebagai
pin ADC (analog-to-digital converter), dan 6 lainnya memiliki fungsi
PWM (pulse width modulation).
• ATMega328 memiliki 3 buah PORT utama yaitu PORTB, PORTC, dan
PORTD dengan total pin input/output sebanyak 23 pin. PORT tersebut
dapat difungsikan sebagai input/output digital atau difungsikan
sebagai periperal lainnya.
1. Port B
Port B merupakan jalur data 8 bit yang dapat difungsikan sebagai
input/output. Selain itu PORTB juga dapat memiliki fungsi alternatif
seperti di bawah ini.
Jumlah Port B adalah 8 buah pin, mulai dari pin B.0 sampai dengan B.7.
Tiap pin dapat digunakan sebagai input maupun output
a. ICP1 (PB0), berfungsi sebagai Timer Counter 1 input capture pin.
b. OC1A (PB1), OC1B (PB2) dan OC2 (PB3) dapat difungsikan sebagai
keluaran PWM (Pulse Width Modulation).
c. MOSI (PB3), MISO (PB4), SCK (PB5), SS (PB2) merupakan jalur komunikasi
SPI.
d. Selain itu pin ini juga berfungsi sebagai jalur pemograman serial (ISP).
e. TOSC1 (PB6) dan TOSC2 (PB7) dapat difungsikan sebagai sumber clock
external untuk timer.
f. XTAL1 (PB6) dan XTAL2 (PB7) merupakan sumber clock utama
mikrokontroler.
2. Port C
Port C merupakan jalur data 7 bit yang dapat difungsikan sebagai
input/output digital. Fungsi alternatif PORTC antara lain sebagai
berikut.
a. ADC6 channel (PC0,PC1,PC2,PC3,PC4,PC5) dengan resolusi sebesar
10 bit. ADC dapat kita gunakan untuk mengubah input yang berupa
tegangan analog menjadi data digital
b. I2C (SDA dan SDL) merupakan salah satu fitur yang terdapat pada
PORTC. I2C digunakan untuk komunikasi dengan sensor atau device lain
yang memiliki komunikasi data tipe I2C seperti sensor kompas,
accelerometer nunchuck
3. Port D
Port D merupakan jalur data 8 bit yang masing-masing pin-nya juga
dapat difungsikan sebagai input/output. Sama seperti Port B dan Port
C, Port D juga memiliki fungsi alternatif dibawah ini.
a. USART (TXD dan RXD) merupakan jalur data komunikasi serial
dengan level sinyal TTL. Pin TXD berfungsi untuk mengirimkan data
serial, sedangkan RXD kebalikannya yaitu sebagai pin yang berfungsi
untuk menerima data serial.
b. Interrupt (INT0 dan INT1) merupakan pin dengan fungsi khusus
sebagai interupsi hardware. Interupsi biasanya digunakan sebagai
selaan dari program, misalkan pada saat program berjalan
kemudian terjadi interupsi hardware/software maka program
utama akan berhenti dan akan menjalankan program interupsi.
c. XCK dapat difungsikan sebagai sumber clock external untuk USART,
namun kita juga dapat memanfaatkan clock dari CPU, sehingga
tidak perlu membutuhkan external clock.
d. T0 dan T1 berfungsi sebagai masukan counter external untuk timer
1 dan timer 0.
e. AIN0 dan AIN1 keduanya merupakan masukan input untuk analog
comparator.
• Mikrokontroler ini memiliki beberapa fitur antara lain:
1. Memiliki EEPROM (Electrically Erasable Programmable Read Only Memory)
sebesar 1KB sebagai tempat penyimpanan data semi permanen karena
EEPROM tetap dapat menyimpan data meskipun catu daya dimatikan.
2. Memiliki SRAM (Static Random Access Memory) sebesar 2KB.
3. Memiliki pin I/O digital sebanyak 14 pin 6 diantaranya PWM (Pulse Width
Modulation) output.
4. 32 x 8-bit register serba guna.
5. Dengan clock 16 MHz kecepatan mencapai 16 MIPS.
6. 32 KB Flash memory dan pada arduino memiliki bootloader yang menggunakan
2 KB dari flash memori sebagai bootloader.
7. 130 macam instruksi yang hampir semuanya dieksekusi dalam satu siklus clock