Software IDE Arduino dilengkapi dengan library CC++, membuat operasi inputoutput jauh lebih mudah dipahami. Pengguna hanya perlu mendefinisikan dua fungsi
untuk membuat program dapat dijalankan ketika dieksekusi pada board Arduino UNO. Fungsi tersebut, yaitu [1] [6]:
1. Setup , fungsi berjalan satu kali pada awal dari sebuah program yang dapat
menginisialisasi masukan dan keluaran pada board Arduino UNO. 2.
Loop , fungsi yang dieksekusi berulangkali sampai board Arduino UNO dalam kondisi di non-aktifkan.
Tampilan awal software IDE Arduino versi 1.6.10 ketika pertama kali dibuka dapat dilihat pada Gambar 2.5.
Gambar 2.5. Tampilan Software IDE Arduino Versi 1.6.10
2.4.3. Komunikasi Serial Arduino
Komunikasi serial pada Arduino UNO pada dasarnya terletak pada pin serial 0 Rx dan pin serial 1Tx pada board Arduino UNO. Komunikasi yang disediakan adalah
Universal Asynchronous ReceiverTransmitter UART TTL 5 Volt. Board Arduino UNO dilengkapi dengan mikrokontroler ATmega16U2 yang memungkinkan komunikasi serial
melalui USB dan muncul sebagai COM Port Virtual pada komputer, sehingga board Arduino UNO dapat berinteraksi dengan perangkat komputer. Firmware ATmega16U2
tidak membutuhkan driver eksternal karena menggunakan driver standar USB COM. Fitur yang tersedia pada IDE Arduino berupa serial monitor memungkinkan data tekstual
sederhana dikirim dari dan ke board Arduino UNO. Mikrokontroler ATmega328P pada PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
board Arduino UNO mendukung 12C Two Wire Interface TWI menggunakan berkas library Wire dan komunikasi Serial Pheripheral Interface SPI menggunakan berkas
library SPI [7]. Universal Asynchronous ReceiverTransmitter UART adalah metode komunikasi
serial yang sederhana dalam rangkaian embedded. Komunikasi UART dalam mode full- duplex menggunakan satu pin Tx dan satu pin Rx. Half-duplex menggunakan satu pin
bersama untuk Tx dan Rx biasa disebut single-wire UART atau 1-Wire Comm. Format frame-nya dapat dilihat pada Gambar 2.6.
Gambar 2.6. Format Frame Komunikasi UART [8]
Keterangan: St
: Bit start selalu low n
: Data bit 0 sampai 8 P
: Bit parity ganjil atau genap Sp
: Bit stop selalu high IDLE : Tidak ada transfer pada jalur komunikasi RxD dan TxD, kondisi IDLE selalu high
SPI adalah salah satu protokol komunikasi sinkron serial yang popular dalam rangkaian embedded. Komunikasi SPI melibatkan 1 atau lebih master dan satu atau lebih
slave yang menggunakan 1 bus bersama. Full-duplex atau 4-wire SPI menggunakan 2 jalur data, jalur clock bersama, dan 1 jalur slave select. Half-duplex atau 3-wire SPI menggunakan
1 jalur data bersama. Pada Arduino protokol komunikasi SPI pada pin 10, 11, 12, dan 13. Deskripsi pin SPI pada Arduino UNO dapat dilihat pada Tabel 2.4.
Tabel 2.4. Deskripsi Pin SPI pada Arduino UNO Pin
Deskripsi 10 SS
Slave Select, ini digunakan untuk memilih slave mana yang akan diajak berkomunikasi oleh master dengan asumsi lebih dari 1 slave. Slave akan
menerima data jika pin SS aktif low.
11 MOSI Master Out, Slave In, ini adalah sinyal output dari master yang merupakan
shift register menuju input slave. 12 MISO
Master In, Slave Out, ini adalah input dari master untuk menerima data shift register dari slave menuju master.
13 SCKSCLK
Serial Clock, ini adalah clock yang dihasilkan master menandakan komunikasi SPI dan untuk melakukan shifting terhadap shift register dari
kedua device.
2.5. NodeMCU