Kamis, 17 Agustus 2017

Menyalakan LED Menggunakan Arduino UNO

Menyalakan LED Menggunakan Arduino UNO

Project kali ini saya akan menggunakan pin 4 pada Arduino UNO untuk menyalakan sebuah LED, di kesempatan ini saya akan menjelaskan mulai dari hardware dan software serta cara kerjanya sehingga membuat para pembaca mengerti dengan apa yang saya sampaikan. 

Alat dan Bahan
1 Buah LED 5mm atau LED 3mm
1 Buah Resistor 100Ω Ohm
2 Buah Kabel Jumper
1 Buah Protoboard
1 Buah Arduino
Rangkaian Menyalakan LED Menggunakan Arduino UNO
Keterangan
Pin GND Arduino (Warna Hitam) ke GND LED (Warna Hitam)
Pin 4 (Warna Merah) ke Resistor (Warna Merah)
Sisi lain dari Resistor di hubungkan ke Positif LED
Sketch Program
Dalam Sketch Program Menyalakan LED Menggunakan Arduino UNO ada beberapa cara Sketch Program untuk dapat menyalakan LED nya, berikut ini saya akan paparkan cara Menyalakan LED dengan Aktif HIGH.
Sketch Program Cara Pertama :
// Menyalakan LED Menggunakan Arduino UNO
// Menyalakan LED dengan Aktif HIGH
void setup()
{
// menjadikan PIN 4 sebagai OUTPUT
pinMode(4, OUTPUT);
}
void loop()
{
// Menyalakan PIN 4 (HIGH = Memberi tega
digitalWrite(4, HIGH);
}

Sketch Program Cara Kedua :
// Menyalakan LED Menggunakan Arduino UNO
// Menyalakan LED dengan Aktif HIGH
Int PinSaya = 4; // type data yang berfungs
void setup()
{
// menjadikan PIN 4 sebagai OUTPUT
pinMode(PinSaya, OUTPUT);
}
void loop()
{
// Menyalakan PIN 4 (HIGH = Memberi tega
digitalWrite(PinSaya, HIGH);

}



Membuat Lampu LED Berjalan Menggunakan Arduino UNO

Membuat Lampu LED Berjalan Menggunakan Arduino UNO

Oke, balik lagi pada topik kita hari ini Project sekarang saya akan menggunakan dari pin 0 sampai 4 pada Arduino UNO untuk menyalakan sebuah Project Lampu LED Berjalan Menggunakan Arduino UNO, serta saya akan menjelaskan mulai dari hardware dan software berserta cara kerjanya yang bermaksud membuat para pembaca dapat mengerti dengan apa yang saya sampaikan . Aamiin.

Baik langsung aja simak ya gan ! :v
Alat dan Bahan
5 Buah LED 5mm atau LED 3mm (Warna Bebas)
5 Buah Resistor 100Ω Ohm
6 Buah Kabel Jumper
1 Buah Protoboard
1 Buah Arduino

Rangkaian Lampu LED Berjalan Menggunakan Arduino UNO
Keterangan
Pin GND Arduino (Warna Hitam) ke GND/KATODA LED0, 1, 2, 3, dan 4 (Warna Hitam)
Pin 4 (Warna Hijau) ke Resistor
Pin 3 (Warna Orange) ke Resistor
Pin 2 (Warna Merah) ke Resistor
Pin 1(Warna Ungu) ke Resistor
Pin 0 (Warna Biru) ke Resistor
Sisi lain dari semua Resistor di hubungkan ke Positif LED (1 LED = 1 Resistor dan seterusnya)
Sketch Program
Dalam Sketch Program Lampu LED Berjalan Menggunakan Arduino UNO ada beberapa cara Sketch Program untuk dapat menyalakan LED nya, berikut ini saya akan paparkan Sketch Program dengan Aktif HIGH.
Sketch Program Cara Pertama :
// Lampu LED Berjalan Menggunakan Arduino U
// Menyalakan LED dengan Aktif HIGH
int ledPin1 = 0;
int ledPin2 = 1;
int ledPin3 = 2;
int ledPin4 = 3;
int ledPin5 = 4;
// type data yang berfungsi sebagai penyimp
void setup()
{
pinMode(ledPin1, OUTPUT);
pinMode(ledPin2, OUTPUT);
pinMode(ledPin3, OUTPUT);
pinMode(ledPin4, OUTPUT);
pinMode(ledPin5, OUTPUT);
// menjadikan PIN 0, 1, 2, 3, dan 4 sebagai
}
void loop()
// Menyalakan LED sacara bergilir
{
digitalWrite(ledPin1, HIGH);
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, LOW);
digitalWrite(ledPin4, LOW);
digitalWrite(ledPin5, LOW);
delay(1000);
digitalWrite(ledPin1, LOW);
digitalWrite(ledPin2, HIGH);
digitalWrite(ledPin3, LOW);
digitalWrite(ledPin4, LOW);
digitalWrite(ledPin5, LOW);
delay(1000);
digitalWrite(ledPin1, LOW);
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, HIGH);
digitalWrite(ledPin4, LOW);
digitalWrite(ledPin5, LOW);
delay(1000);
digitalWrite(ledPin1, LOW);
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, LOW);
digitalWrite(ledPin4, HIGH);
digitalWrite(ledPin5, LOW);
delay(1000);
digitalWrite(ledPin1, LOW);
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, LOW);
digitalWrite(ledPin4, LOW);
digitalWrite(ledPin5, HIGH);
delay(1000);
}
 Sketch Program Cara Kedua :

// Lampu LED Berjalan Menggunakan Arduino U
// Menyalakan LED dengan Aktif HIGH
void setup()
{
pinMode(0, OUTPUT);
pinMode(1, OUTPUT);
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
// menjadikan PIN 0, 1, 2, 3, dan 4 sebagai
}
void loop()
{
//menyala secara bergilir
digitalWrite(0, HIGH);
digitalWrite(1, LOW);
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
delay(1000);
digitalWrite(0, LOW);
digitalWrite(1, HIGH);
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
delay(1000);
digitalWrite(0, LOW);
digitalWrite(1, LOW);
digitalWrite(2, HIGH);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
delay(1000);
digitalWrite(0, LOW);
digitalWrite(1, LOW);
digitalWrite(2, LOW);
digitalWrite(3, HIGH);
digitalWrite(4, LOW);
delay(1000);
digitalWrite(0, LOW);
digitalWrite(1, LOW);
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, HIGH);
delay(1000);
}
Keterangan :
Fungsivoid setup () dalam sebuah program arduino adalah semua perintah yang akan di baca sekali.
Fungsivoid loop () dalam sebuah program arduino adalah semua perintah yang akan di baca berulang-ulang.


Rabu, 16 Agustus 2017

Belajar program Arduino

Pengetahuan Dasar Komunikasi serial pada Arduino


Untuk mengirim data dari arduino ke PC dan menerima data dari PC kita bisa menggunakan berbagai cara salah satunya yg paling sederhana adalah komunikasi Serial yg terdapat pada setiap board Arduino.
Perlu kita ketahuai pemrograman sketch arduino menggunakan gaya bahasa C tapi pada pembuatan librarynya menggunakan C++ yg menerapkan pemrograman Objek (Class). Untuk itu sy sarankan anda sebaiknya mengetahuai sedikit dasar-dasar pemrograman berorientasi objek.
Pemrograman code arduino (sketch) untuk komunikasi serial menjadi mudah karena fungsi fungsi sudah tersedia dlm class yg tersedia untuk komunikasi Serial . Instance dari class untuk komunikasi serial (objek) sudah dibuatkan namanya Serial . Untuk arduino yg mempunyai lebih dari 1 port serial misal arduino mega256 nama objek untuk komunikasi serialnya adalah Serial1, Serial2, Serial3.
Penulisan objek dan fungsi pada library arduino adalah : namaobjek.namafungsi
contoh : Serial.read() , artinya kita memanggil fungsi read() dari objek bernama Serial .
Data yg dikirim ke serial port akan dikirim ke buffer pengirim (Tx buffer) begitupun data yg diterima adalah data yg diambil dari buffer penerima (RX buffer).
Data yang dikirm dan diterima arduino dalam bentuk ASCII. Misalnya program arduino mengirim huruf A maka akan dikirim sebenarnya adalah 1 byte code ascii yaitu 65 . Jika kita mengirim angka 123 maka sebetulnya yg dikirm adalah 3 byte data ascii yaitu 49, 48, dan 50 . Selengkapnya anda bisa lihat tabel ASCII berikut :

Karena data yg diterima arduino juga dlm bentuk ASCII (char) maka kita tdk bisa langsung melakukan operasi matematika dari data ASCIIpada program sketch arduino. Data ASCII dari buffer serial harus dirubah dulu ke bentuk numerik/bilangan (int). misalkan kita menerima data ‘4’ dan ‘3’ maka jika kita langsung jumlahkan ‘3’ + ‘4’ = 103 , karena sebenarnya kita menjumlahkan code ascii ‘3’ = 51 dancode ascii ‘4’ =52 (lihat tabel ASCII).
Untuk merubah data ascii ke data numerik dengan cara yg cukup sederhana yaitu :
-untuk mendapatkan angka 0 dari ascii ‘0’ dgn cara ‘0’- 48=0 (atau bisa juga ditulis ‘0’-‘0’=0)
-untuk mendapatkan angka 1 dari ascii ‘1’ dgn cara ‘1’- 48=1 (atau bisa juga ditulis ‘1’-‘0’=1)
-dan seterusnya.
jadi kalau mau menjumlahkan data ascii ‘3’ dan ‘4’ yg kita terima dari RX Bufer maka code program seharusnya adalah :
int hasil = (‘3’ – ‘0’) + (‘4’ – ‘0’) atau
int hasil = (‘3’- 48) + (‘4’-48) maka hasil berupa bilangan integer 7.


Fungsi fungsi yg tersedia untuk komunikasi serial Arduino
if (Serial) : Untuk mengecek apakah Port sudah siap
Serial. available() : Untuk mengecek apakah data sudah ada di buffer penerima
Serial. begin () : untuk mengeset kecepatan transmisi data
serial. end () : Untuk menon-aktifkan pin rx dan tx sbg fungsi serial dan kembali sbg pin I/O
Serial. find () : mencari string dlm buffer data
Serial.findUntil (): mencari buffer data sampai data dgn panjang/terminator nya yg diberikan ditemukan
Serial. flush (): menunggu data terkirim semua
Serial. parseFloat (): mengambil data float pertama dari data di buffer serial.
serial. parseInt (): mengambil data integer pertama dari data di buffer serial.
Serial. peek(): mengambil data berikutnya di bufer penerima
Serial. print () : mengirim data ASCII
Serial. println () : mengirimdata ASCII + CR,LF (kode enter)
Serial. read (): membaca data yg diterima
Serial. readBytes (): membaca data byte yg diterima
Serial. readBytesUntil ()
Serial. setTimeout (): mengeset batas maksimum waktu tunggu(timeout) transmisi data.
Serial. write () : mengirim data byte (numerik)
Serial. serialEvent (): fungsi ini akan dipanggil jika data datang/diterima.berlaku spt interupsi serial.


Sebelum kita memulai latihan pemrograman serial arduino kita perlu tahu ttg menu serial Monitor yg tersedia spt tampak pada gambar dibawah ini:

Gambar 1. Menu Serial Monitor
Serial Monitor digunakan untuk mentransfer data dari PC ke Arduino board dan menerima data dari arduino board.
Selain dengan tool serial monitor yg terdapat pada IDE arduino anda juga bisa menggunakan tool serial lainya seperti hyperterminal, putty dll untuk mengirim dan menerima data pada PC Anda.
Langkah membuat program sketch komunikasi serial
1. set baud rate misal 9600 dgn fungsi serial.begin(9600) dlm fungsi void setup(). Speed yg tersedia antara lain 300, 1200, 2400, 4800, 9600, 14400, 19200, 28800,38400, 57600, 115200 (liat dokumentasi tiap jenis arduino).
2. untuk menerima data cek apakah ada data di Rx Buffer dgn fungsi serial.avalable()
jika data tersedia return value = true jika data kosong return value = false.
if( serial.available() > 0)
3. mengambil data dari buffer penerima : serial.read() , return valuenya adalah 1 byte data pertama yg ada di RX Buffer .
misal byte pertama RX buffer berisi char 2
maka char data = serial.read(); //data = ‘2’ –> karakter
byte data = serial.read(); // data = 50 –> numerik
4. Untuk mengirim data bisa menggunakan
serial.print(dataygdikirim) : mengirim data ascii
serial.println(dataygdikirim) , ditambahkan kode enter (CR dan LF)
serial.write(dataygdikirim) : mengirim data byte
Contoh serial.print(‘A’) akan mengirim huruf A
serial.print(65) akan mengirim 2 byte berisi code Ascii ‘6’ dan ‘5’ (aktual yg dikirim 54 dan 53)
serial.write(65) akan mengirim 1 byte 65 (aktual yg dikirim numerik 65)
serial.write(data) adalah pengganti syntax Serial.print(data, BYTE) versi sebelumnya. Parameter data pada serial.write adalah angka 1 byte ( 0-255)
contoh program sketch sederhana menerima data kemudian data dikirim kembali :
void setup() {
 Serial.begin(9600); }
void loop() {
 if ( Serial.available())
{ char datachar = Serial.read();
}
delay(1000)
serial.print(datachar)// data yg diterima dikirim kembali.
}
Beberapa Contoh yg akan kita buat antara lain:
-Mengirim data string/text “apa kabar”
-Mengirim data bilangan/angka : 123

int angkaint = 123;
float angkafloat 123.5;
char datachar = 123;
void setup() {
Serial.begin(9600); // set baudrate = 9600 }
void loop() {
Serial.print("apa kabar"); // kirim string/text Serial.println(angkaint); // kirim angka type integer  123 Serial.println(angkafloat); // kirim angka type float 123.5 Serial.println(datachar); //   kirim code ascii 123 yaitu tanda kurung buka { Serial.println(angkaint,HEX); // kirim angka dlm bentuk heksa , akan dikirim 7BH Serial.println(angkaint,BIN); // kirim angka dlm bentuk biner , 0111 1011 }


-Menerima data bilangan ASCII
misal data yg datang misal “435”

* Cara Pertama
karakter ditampung di array dan dirubah menjadi string dgn menambahkan null 0 diakhir array( karena string adalah sebuah array type char yg diakhiri dgn null). kemudian array tsb /data string di konversi ke int dgn fungsi atoi.

char arraychar[4];
 int i=1;
void setup() {
 Serial.begin(9600); }
void loop() {
if ( Serial.available()) {
char datachar = Serial.read();
 if(i>4 &&
 isdigit(datachar)) //jika datachar adalah ASCII  0-9 {   arraychar[i++]=datachar; } else arraychar[i]=0;   // akhir dari sebauh string adalah null (0)
int angka = atoi(arraychar); }
}
* Cara kedua
mengggunakan loop sbb :

numerik = numerik * 10 + datachar;
karena datachar adalah kode ascii maka kita rubah ke int dgn cara datachar-48   atau  sama juga dgn datachar-'0'
jadi rumusnya
numerik = numerik * 10 + (datachar-'0');


Contoh Proses loop saat penerimaan data “435” , spt tabel dibawah , jika data berupa ‘/n maka loop selesai:

Kode sketch nya sbb:

void setup() {
 Serial.begin(9600);
}
void loop() {
 int numerik = 0;
 if (Serial.available())
 {
char datachar = Serial.read();
while (datachar != '\n')
{
 if(isdigit(datachar))
{
numerik = numerik * 10 + (datachar - '0');
 }
datachar = Serial.read();
 }
int angkaditerima = numerik; }

-Mengirim data berurutan ” A,123,B,456″

int bil1 = 123;
 int bil2 = 456;
void setup() {
 Serial.begin(9600); // set baudrate = 9600
 }
void loop() {
Serial.print("A");
 Serial.print(",");
Serial.print(123,DEC);
 Serial.print(",");
Serial.println(345,DEC);
 delay(1000);         //delay looping 1 detik}

-Menerima data berurutan : “123,456,789 /n”
Pada contoh ini kita akan menggunakan serial.parseint() untuk mengambil data berurutan yg dibatasi koma dan diakhiri ‘/n’

void setup() {
Serial.begin(9600);
 }
void loop() {
while (Serial.available() > 0)
{
int data1 = Serial.parseInt();           // ambil data ke-1
int data2 = Serial.parseInt();          // ambil data ke-2:
int data3 = Serial.parseInt();        // ambil data ke-3:
if (Serial.read() == '\n')
   {  
 int jumlah = data1 +data2 + data3;
   }  } }

Menambahkan port serial pada pin I/O
Jika arduino yg kita miliki hanya punya 1 port serial kita bisa merubah pin I/O yg manapun menjadi Port serial tambahan .dengan bantuan class SoftwareSerial . Tambahkan file header SoftwareSerial.h pada sketch anda dan buat 1 buah objek SoftwareSerial untuk penambahan 1 port, pada contoh dibawah ini kita buat 1 objek sofwareSerial dgn nama serialkedua.
Langsung saja kita lihat contohnya sbb:

#include <SoftwareSerial.h>
SoftwareSerial Serialkedua(10, 11); // pin 10 untuk RX, pin 11 untuk TX
void setup() {
 Serial.begin(96600);
Serialkedua.begin(9600);
}
void loop() {
 if (Serial.available())
serial.println("test dari port1");
 if (Serialkedua.available())
Serialkedua.println("test dari port2"); }

Contoh kedua menggunakan 3 buah port : Serial, port1 dan port2

#include <
SoftwareSerial.h>
SoftwareSerial port1(10,11); // software serial port1: TX = pin 10, RX = pin 11
 SoftwareSerial port2(8,9); // software serial port2: TX = pin 8, RX = pin 9
void setup() {
 Serial.begin(9600);  port1.begin(9600);  port2.begin(9600); }
void loop() {
 port1.listen();
 while (port1.available() > 0)
  {
char inByte = port1.read(); //baca port1 dan kirim ke serial  Serial.write(inByte);
}
 port2.listen();
 while (port2.available() > 0)
 {
char inByte = port2.read(); //baca data port2 dan kirimke serial  Serial.write(inByte);  }
}

Menerima Data Serial dengan Interupsi
pada penerimaan serial secara interupsi, jika ada data yg datang maka otomatis fungsi serialEvent() akan di eksekusi berikut contohnya :
String inputString = “”;
boolean stringComplete = false;
void setup() {
Serial.begin(9600);
inputString.reserve(200);
}
void loop() {
if (stringComplete) {
Serial.println(inputString);
inputString = “”;
stringComplete = false;
}
}
void serialEvent() {
while (Serial.available()) {
char inChar = (char)Serial.read();
inputString += inChar;
if (inChar == ‘\n’) {
stringComplete = true;
}
}
}

referensi:
http://arduino.cc/en/Reference/Serial
https://learn.adafruit.com/category/learn-arduino
Beginning Arduino Programming

Belajar bahasa c arduino untuk pemula

Belajar bahasa c Arduino untuk pemula

Semua bahasa perograman terdiri dari :

1. ekspresi,
2. statemen,
3. blok statemen
4. blok fungsi
Ekspresi adalah kombinasi operand dan operator contoh 2+3 , X > Y dst… 2,3,X dan Y adalah operand sedangkan + dan > adalah operator .
Statemen adalah instruksi lengkap dalam bahasa C diakhiri dgn tanda ; (titik koma) contoh : A= 2+3;

Statemen dan ekspresi C arduino indentik dengan ANSI-C , Struktur Program C Arduino minimal terdiri dari dua fungsi yaitu setup() dan loop().

Fungsi setup() dijalankan pertama kali setiap board arduino dihidupkan sedangkan fungsi loop() dijalankan terus menerus selama board arduino hidup. Pada program standar C ANSI fungsi yg pertama dijalankan adalah fungsi main() pada C arduino adalah fungsi setup().
berikut ini struktur minimal C Arduino :
//setup digunakan untuk inisialisasi variable, mode pin dll void setup() { statement }
void loop()  { statement }
contoh program
// Pin 13 dihubungkan ke LED pada kebanyakan Arduino board.
// pin 13 diberi nama led:
int led = 13;
// setup routine dijalankan sekali saat arduino direset :
void setup() {
// inisialisasi pin digital 13 sbg output.
pinMode(led, OUTPUT);
}
// loop melakukan elsekusi berulang:
void loop() {
digitalWrite(led, HIGH); //LED on
delay(1000);
digitalWrite(led, LOW); // LED off
delay(1000);
}
VARIABLE DAN KONSTANTA
Variabel adalah memori penyimpanan data yang nilainya dapat diubah-ubah. variable disimpan di RAM
Konstanta adalah memori penyimpanan data yang nilainya tidak dapat diubah setelah program di compile. Konstanta disimpan di memory program.
VARIABLE SCOPE
Variable dan konstanta global dapat diakses di seluruh bagian program.
Variable dan konstanta lokal hanya dapat diakses didalam fungsi tempat dideklarasikannya.
Type Data
Arduino C mendukung sebagian besar tipe data ANSI C dengan beberapa pengecualian. Variabel adalah sebuah atau beberapa lokasi memori yang diberi nama. Ketika anda mendefinisikan variabel Anda juga harus memberitahu compiler jenis data variable tsb.
Tipe data dari variabel penting karena untuk menentukan berapa banyak byte
memori yg disediakan untuk variabel itu, dan jenis data yang dapat disimpan dalam variabel.

CONTROL STATEMENT
While Loop
while (expression) //selama expresi bernilai true laksanakan perulangan blok statemen dibawahnya.
{
statement1;
statement2;
…..
}
atau jika satement hanya 1 baris statement tdk perlu di berikurung { }
while(expression)
statement;
Do/While Loop
do //jalankan statement dibawah ( minimal 1 kali perulangan dilaksanakan) ,
{
statement1;
statement2;
}
while (expression); // jika ekspresi true , jalankan kembali perulangan.
atau jika satement hanya 1 baris
do
statement;
while (expression);
For Loop
for (expr1; expr2; expr3) //laksanakan perulangan sebanyak expr2 dimulai dari expr1.
{
statement1;
statement2;
}
atau jika satement hanya 1 baris
for(expr1; expr2; expr3)
statement;
If/Else
if (expression) //jika ekspresi bernilai true laksanakan blok statemen dibawahnya
{
statement1;
statement2;
}
atau jika satement hanya 1 baris
if(expression)
statement;
SWITCH/CASE
switch (expression)
{
case const1: // jika expression = const1 eksekusi staement2 dibawahnya
statement1;
statement2;
case const2: // jika expression = const2 eksekusi statemenibawahnya
statement3;
statement4;
case constX: // jika espression=constX eksekusi statemen dibawahnya
statement5;
statement6;
default:
statement7; // jika ekspression tdk sama dgn const1,cons2, dan constX
statement8;
}
BREAK, CONTINUE,AND GOTO
break, continue, & goto statements digunakan untuk merubah alur eksekusi untuk statement pengulangan for, while, do/while, and switch .
Break
break statement digunakan untuk keluar dari pengulangan for, while, do/while, atau switch . break keluar dari blok pengulangan dimana dia berada saja.
Continue
continue akan menyebabkan program memulai iterasi berikutnya dari statemen pengulangan while,
do/while, atau for loop. continue sama seperti break pengulangan akan berhenti pada point yg dituju (di skip), bedanya continue akan memulai loop lagi, dari atas, sedangkan break memaksa keluar dari loop / pengulangan .
setup()
{
}
loop()
{
int i;
for(i; i<7; i++)
{
if(i==3)
continue;
printf(%d, i )
}
}
OPERATOR DAN EXPRESSI
Operator Penugasan ( “=” )
Setelah variabel telah dideklarasikan, operasi dapat dilakukan pada variable menggunakan operator penugasan (=). Sebuah nilai yang diberikan untuk variabel dapat berupa sebuah konstanta, variabel, atau ekspresi. Sebuah ekspresi dalam bahasa C adalah kombinasi dari operan (pengidentifikasi) dan operator. operaor penugasan antara lain sebagai berikut:
Variable = nilai ,
contoh nilai_max = 10;
Operator Arithmetic :
Perkalian *
Pembagian /
Modulo %
Penjumlahan +
Pengurangan atau Negasi –
Operator Logika
AND &&
OR ||
Operator relasional
sama dengan ==
tdk sama dengan !=
lebih kecil <
lebih kecil atau sama dengan <=
lebih besar >
lebih besar atau sama dengan >=
increment
++variable atau variable++ artinya variable=variable+1 ,
misal ++X atau X++ artinya X = X+1
perbedaaanya adalah untuk ++X , tambahkan dulu nilai X dgn 1 baru di proses baris kode tsb, sedangkan X++ , proses dulu baris code baru tambahkan nilai X dgn 1
deccrement
–variable atau variable– artinya variable=variable-1 ,
misal –Y atau Y– artinya Y = X-1
perbedaaanya adalah untuk –Y , kurangi dulu nilai Y dgn 1 baru di proses baris kode tsb, sedangkan Y– , proses dulu baris code tsb baru kurangi nilai Y dgn 1
Compound
compound digunakan hanya untuk menyingkat baris expresi saja contoh nya sbb
a += 3; artinya a = a + 3
b -= 3; artinya b = b – 3
c *= 3; artinya c = c * 3
d /= a; artinya d = d / a
a |= 3; artinya a = a OR 3
b &= 3; artinya b = b AND 3
c ^= 3; artinya c = c ^ 3
PORTD &= 3; artinya PORTD = PORTD & 3
kondisonal Expressi
if(expression_A)
expression_B;
else
expression_C;
baris kode diatas bisa digantikan oleh kondisional expressi:
expression_A ? expression_B : expression_C;
contoh : (A > 10) ? x = 5 : x =22;
kondisional expresi diatas artinya sama dengan :
IF(A>10)
{
x=5;
}
Else
{
x= 22
}
..
FUNGSI
yang dimaksud fungsi adalah sebuah blok statement yg melaksanakan tugas tertentu dan bisa
dipakai lebih dari 1 kali di dlm program.
program bahasa C terdiri dari fungsi fungsi dan sebuah program c minimal terdiri dari 1 fungsi .
fungsi setup() dijalankan pertama kali saat program dijalankan.
fungsi terdiri dari dua bagian utama yaitu kepala fungsi dan blok fungsi
berikut ini bentuk umum sebuah fungsi adalah :
type name_fungsi (type paramameter)
{
statement
}
kepala fungsi terdiri dari type return value, nama fungsi , types dan nama parameter(jika ada) .
Statement di block fungsi menyatakan apa yg fungsi harus lakukan.
jika return value atau parameter tdk ada maka typennya ditulis void seperti dibawah ini
void namefungsi (void)
{
statement
}
Structures, Union, dan Data Storage
Klik Library untuk mengetahui library Arduino nya !
Digital Input
void pinMode (int pin, int mode)
memerintahkan Arduino apakah pin akan diset sbg digital input atau output. Mode dapat berupa Input atau OUTPUT.
int digitalRead (int pin)
Membaca nilai dari pin digital. Nilai yg didapat dapat berupa 1 atau 0.
void digitalWrite (int pin, int value)
Menulis nilai ke pin digital. Nilai yg ditulis dapat berupa 1 atau 0.
Analog Input
int analogRead (int pin)
Membaca nilai dari pin analog. Nilai yg didapat adalah antara 0 dan 1023.
void analogWrite (int pin, int value)
Menulis nilai analog ke pin. nilai yg ditulis antara 0 dan 255.

Jenis board Arduino

Arduino board 

1.Arduino USB (Arduino Uno)

Ini adalah revisi terbaru dari papan dasar Arduino USB. Ini terhubung ke komputer dengan kabel USB standar dan berisi semua hal lain yang Anda butuhkan untuk memprogram dan menggunakan papan. Hal ini dapat diperpanjang dengan berbagai perisai: custom daughter-boards dengan fitur tertentu. Hal ini mirip dengan Duemilanove, namun memiliki chip USB-to-serial yang berbeda dengan ATMega8U2, dan label yang baru dirancang untuk membuat masukan dan keluaran lebih mudah dikenali.

2.Arduino Duemilano

Duemilanove secara otomatis memilih catu daya yang sesuai (USB atau daya eksternal), sehingga menghilangkan kebutuhan jumper seleksi daya yang ditemukan pada papan sebelumnya. Ini juga menambahkan cara termudah untuk memotong jejak untuk menonaktifkan auto-reset, bersama dengan solder jumper untuk mengaktifkannya kembali. Catatan: sekitar 1 Maret 2009, Duemilanove mulai kapal dengan ATmega328p bukan ATmega168

3.Arduino Diecimila


Perubahan utama di Arduino Diecimila adalah bisa diatur ulang dari komputer, tanpa perlu secara fisik menekan tombol reset di papan tulis. Diecimila menggunakan regulator tegangan putus sekolah rendah yang menurunkan konsumsi daya board saat dinyalakan oleh suplai eksternal (adaptor AC / DC atau baterai). Polibak yang dapat diisi kembali melindungi port USB komputer Anda dari celana pendek dan lonjakan. Ini juga menyediakan pin header untuk reset line dan untuk 3.3V. Ada LED built-in pada pin 13. Beberapa papan Diecimila biru mengatakan "Prototype - Limited Edition" namun sebenarnya merupakan papan produksi yang sepenuhnya diuji (prototipe sebenarnya berwarna merah).

4.Arduino NG rev

Revisi C dari Arduino NG tidak memiliki LED built-in pada pin 13 - sebagai gantinya Anda akan melihat dua bantalan solder kecil yang tidak terpakai di dekat label "GND" dan "13". Ada, bagaimanapun, sekitar 1000 ohm perlawanan pada pin 13, sehingga Anda dapat menghubungkan LED tanpa resistor eksternal.
Skema 

5.Arduino NG 2

Arduino NG menggunakan FTDI FT232RL USB-to-Serial converter, yang membutuhkan lebih sedikit komponen eksternal yang FT232BM. Ini juga memiliki LED built-in pada pin 13 (yang dapat mengganggu komunikasi SPI). NG kemudian dikirim dengan ATmega168, bukan ATmega8, meski chipnya bisa digunakan dengan papan apapun. 
Skema 
6.Arduino Extreme
Arduino Extreme menggunakan lebih banyak komponen mount permukaan daripada papan Arduino USB sebelumnya dan dilengkapi dengan pin pin betina. Ini juga memiliki RX dan TX LED yang menunjukkan kapan data dikirim ke atau dari papan tulis.

7.Arduino Usb V2 

Versi kedua dari Arduino USB memperbaiki pinout konektor USB dan memperbarui URL ke "arduino.berlios.de"; Itu diberi label "Arduino USB v2.0". (File elek, skematis, instruksi perakitan, foto papan dirakit).

8.Arduino bluetooth (BT)
Arduino BT adalah papan mikrokontroler yang awalnya berbasis ATmega168, namun sekarang dipasok dengan modul bluetooth Bluegiga WT11. Ini mendukung komunikasi serial nirkabel melalui bluetooth (namun tidak kompatibel dengan headset Bluetooth atau perangkat audio lainnya).

9.Arduino Single-Sided Serial
 Ini adalah versi ketiga dari papan satu sisi. Ini memiliki lebih sedikit jembatan (tiga) dari yang asli dan termasuk LED TX, RX, dan pin 13. ICSP dan power headers kompatibel dengan Diecimila.

. di bawah yg original gan !



Desain awal papan satu sisi (diberi label versi 2 karena berasal dari ay. 2 dari papan serial). Membutuhkan enam jembatan. Memiliki resistor 1K (tapi tidak ada LED) pada pin 13. Lokasi header ICSP tidak kompatibel dengan papan lainnya.


10. Arduino mega

Arduino Mega adalah papan mikrokontroler berdasarkan ATmega1280 (datasheet). Ini memiliki 54 pin input / output digital (dimana 14 dapat digunakan sebagai output PWM), 16 input analog, 4 UART (port serial perangkat keras), osilator kristal 16 MHz, koneksi USB, colokan listrik, header ICSP, Dan tombol reset. Ini berisi semua yang dibutuhkan untuk mendukung mikrokontroler; Cukup hubungkan ke komputer dengan kabel USB atau nyalakan dengan adaptor AC-ke-DC atau baterai untuk memulai. Mega kompatibel dengan kebanyakan perisai yang dirancang untuk Arduino Duemilanove atau Diecimila.


11.Arduino Lilypad
LilyPad Arduino 04 Revisi ini menggunakan ATmega328V dan bukan ATmega168V. Semua detials lainnya identik dengan versi 03. LilyPad Arduino 03 Revisi ini memiliki header pemrograman 6-pin yang kompatibel dengan kabel USB FTDI dan Sparkfun FTDI Basic Breakout. Ini menambahkan dukungan untuk reset otomatis, memungkinkan sketsa untuk diupload tanpa menekan tombol reset di papan tulis. Header dipasang di permukaan, yang berarti papan tidak memiliki potongan pokey yang mencuat ke belakang.

Pada revisi pertama dari LilyPad Arduino, header ICSP 10 pin diubah menjadi header 6-pin ICSP dan sebuah header empat pin w / RX, TX, 5 V, dan GND ditambahkan. ARDUINO LILYPAD Desain awal Arduino LilyPad memiliki header ICSP 10 pin dan menggunakan jam internal pada ATmega168 daripada osilator eksternal. Bootloader pada desain awal adalah bootloader NG tradisional.

Cukup sekian postingan saya kali ini , mohon maaf bila ada salah kata ! :v 

Tentang Arduino


  • ARDUINO
Arduino adalah pengendali mikro single-board yang bersifat
open-source  dan dirancang untuk memudahkan penggunaan elektronik dalam berbagai bidang. Hardwarenya memiliki prosesor Atmel AVR dan softwarenya memiliki bahasa pemrograman sendiri , Arduino diturunkan dari Wiring platform.

Dibawah ini adalah contoh program Arduino :

Arduino juga merupakan platform hardware terbuka yang ditujukan kepada siapa saja yang ingin membuat purwarupa peralatan elektronik interaktif berdasarkan hardware dan software yang fleksibel dan mudah digunakan. Mikrokontroler diprogram menggunakan bahasa pemrograman arduino yang memiliki kemiripan syntax dengan bahasa pemrograman C. Karena sifatnya yang terbuka maka siapa saja dapat mengunduh skema hardware arduino dan membangunnya.

Arduino menggunakan keluarga mikrokontroler ATMega yang dirilis oleh Atmel sebagai basis, namun ada individu/perusahaan yang membuat clone arduino dengan menggunakan mikrokontroler lain dan tetap kompatibel dengan arduino pada level hardware. Untuk fleksibilitas, program dimasukkan melalui bootloader meskipun ada opsi untuk membypass bootloader dan menggunakan downloader untuk memprogram mikrokontroler secara langsung melalui port ISP.
Arduino Uno  Memiliki 14 pin input dari output digital dimana 6 pin input tersebut dapat digunakan sebagai output PWM dan 6 pin input analog, 16 MHz osilator kristal, koneksi USB, jack power, ICSP header, dan tombol reset. Untuk mendukung mikrokontroler agar dapat digunakan, cukup hanya menghubungkan Board Arduino Uno ke komputer dengan menggunakan kabel USB atau listrik dengan AC yang-ke adaptor-DC atau baterai untuk menjalankannya.
Uno berbeda dengan semua board sebelumnya dalam hal koneksi USB-to-serial yaitu menggunakan fitur Atmega8U2 yang diprogram sebagai konverter USB-to-serial berbeda dengan board sebelumnya yang menggunakan chip FTDI driver USB-to-serial.
Nama “Uno” berarti satu dalam bahasa Italia, untuk menandai peluncuran Arduino 1.0. Uno dan versi 1.0 akan menjadi versi referensi dari Arduino.
Uno adalah yang terbaru dalam serangkaian board USB Arduino, dan sebagai model referensi untuk platform Arduino, untuk perbandingan dengan versi sebelumnya, lihat indeks board Arduino

Daya
Uno Arduino dapat diaktifkan melalui koneksi USB atau dengan catu daya eksternal (otomatis).Eksternal (non-USB) daya dapat berasal baik dari AC-ke adaptor-DC atau baterai. Adaptor ini dapat dihubungkan dengan menancapkan plug jack pusat-positif ukuran 2.1mm konektor POWER. Ujung kepala dari baterai dapat dimasukkan kedalam Gnd dan Vin pin header dari konektor POWER. Kisaran kebutuhan daya yang disarankan untuk board Uno adalah7 sampai dengan 12 volt, jika diberi daya kurang dari 7 volt kemungkinan pin 5v Uno dapat beroperasi tetapi tidak stabil kemudian jikadiberi daya lebih dari 12V, regulator tegangan bisa panas dan dapat merusak board Uno.
Pin listrik adalah sebagai berikut:
VIN. Tegangan masukan kepada board Arduino ketika itu menggunakan sumber daya eksternal (sebagai pengganti dari 5 volt koneksi USB atau sumber daya lainnya). 5V. Catu daya digunakan untuk daya mikrokontroler dan komponen lainnya.3v3. Sebuah pasokan 3,3 volt dihasilkan oleh regulator on-board.
GND. Ground pin.
Memori

ATmega328 memiliki 32 KB (dengan 0,5 KB digunakan untuk bootloader),  2 KB dari SRAM dan 1 KB EEPROM

Input dan Output
Masing-masing dari 14 pin digital di Uno dapat digunakan sebagai input atau output, dengan menggunakan fungsi pinMode () , digitalWrite () , dan digitalRead () , beroperasi dengan daya 5 volt. Setiap pin dapat memberikan atau menerima maksimum 40 mA dan memiliki internal pull-up resistor (secara default terputus) dari 20-50 kOhms. Selain itu, beberapa pin memiliki fungsi khusus:
Serial: 0 (RX) dan 1 (TX). Digunakan untuk menerima (RX) dan mengirimkan (TX) TTL data serial. Pin ini dihubungkan ke pin yang berkaitan dengan chip Serial ATmega8U2 USB-to-TTL.
Eksternal menyela: 2 dan 3. Pin ini dapat dikonfigurasi untuk memicu interrupt pada nilai yang rendah, dengan batasan tepi naik atau turun, atau perubahan nilai.

PWM: 3, 5, 6, 9, 10, dan 11. Menyediakan output PWM 8-bit dengan fungsi analogWrite () .
SPI : 10 (SS), 11 (Mosi), 12 (MISO), 13 (SCK). Pin ini mendukung komunikasi SPI menggunakan SPI library .
LED: 13. Ada built-in LED terhubung ke pin digital 13. Ketika pin bernilai nilai HIGH, LED on, ketika pin bernilai  LOW, LED off.
Uno memiliki 6 masukan analog, berlabel A0 sampai dengan A5, yang masing-masing menyediakan 10 bit dengan resolusi (yaitu 1024 nilai yang berbeda). Selain itu, beberapa pin memiliki fungsi khusus:
I2C: A4 (SDA) dan A5 (SCL) . Dukungan I2C (TWI) komunikasi menggunakan perpustakaan Wire.
Aref . Tegangan referensi (0 sampai 5V saja) untuk input analog. Digunakan dengan fungsi
analogReference () .
Reset. Bawa baris ini LOW untuk me-reset mikrokontroler.

Komunikasi
Uno Arduino memiliki sejumlah fasilitas untuk berkomunikasi dengan komputer, Arduino lain, atau mikrokontroler lainnya. ATmega328 menyediakan UART TTL (5V) untuk komunikasi serial, yang tersedia di pin digital 0 (RX) dan 1 (TX). Sebuah ATmega8U2 sebagai saluran komunikasi serial melalui USB dan sebagai port virtual com untuk perangkat lunak pada komputer. Firmware ‘8 U2 menggunakan driver USB standar COM, dan tidak ada driver eksternal yang diperlukan. Namun, pada Windows diperlukan, sebuah file inf. Perangkat lunak Arduino terdapat monitor serial yang memungkinkan digunakan memonitor data tekstual sederhana yang akan dikirim ke atau dari board Arduino. LED RX dan TX di papan tulis akan berkedip ketika data sedang dikirim melalui chip USB-to-serial dengan koneksi USB ke komputer (tetapi tidak untuk komunikasi serial pada pin 0 dan 1).
Sebuah SoftwareSerial library memungkinkan untuk berkomunikasi secara serial pada salah satu pin digital pada board Uno’s.
ATmega328 juga mendukung I2C (TWI) dan komunikasi SPI. Perangkat lunak Arduino termasuk perpustakaan Kawat untuk menyederhanakan penggunaan bus I2C.

Pemrograman
Uno Arduino dapat diprogram dengan menggunakan software Arduino.  (Untuk softwarenya bisa download di halaman sebelah Download ). Pilih “Arduino Uno dari menu> Peralatan Board (sesuai dengan mikrokontroler).

Jenis-Jenis Arduino
Dan seperti Microcontroller yang banyak jenisnya, Arduino lahir dan berkembang, kemudian muncul dengan berbagai jenis. Dibawah ini adalah jenis-jenis Arduino beserta penampakannya !😎
a. Arduino Uno




Jenis yang ini adalah yang paling banyak digunakan. Terutama untuk pemula sangat disarankan untuk menggunakan Arduino Uno. Dan banyak sekali referensi yang membahas Arduino Uno. Versi yang terakhir adalah Arduino Uno R3 (Revisi 3), menggunakan ATMEGA328 sebagai Microcontrollernya, memiliki 14 pin I/O digital dan 6 pin input analog. Untuk pemograman cukup menggunakan koneksi USB type A to To type B. Sama seperti yang digunakan pada USB printer.
Arduino Uno adalah papan mikrokontroler
berdasarkan ATmega328 (datasheet). Ini memiliki
14 digital pin input / output (dimana 6 dapat digunakan sebagai output PWM), 6 input analog,
resonator keramik 16 MHz, koneksi USB, jack
listrik, header ICSP, dan tombol reset. Ini berisi
semua yang diperlukan untuk mendukung
mikrokontroler; hanya menghubungkannya ke komputer dengan kabel USB atau power itu
dengan adaptor AC-DC atau baterai untuk memulai menggunakannya.
Uno berbeda dari semua papan sebelumnya di
bahwa itu tidak menggunakan chip driver FTDI
USB-to-serial. Sebaliknya, fitur Atmega16U2
(Atmega8U2 sampai versi R2) diprogram sebagai konverter USB-to-serial.
Revisi
ke 2 Uno memiliki resistor menarik garis 8U2
HWB line to ground, sehingga lebih mudah untuk
dimasukkan ke dalam mode DFU.
Revisi ke 3 memiliki fitur-fitur baru berikut:
- 1,0 pinout: menambahkan SDA dan pin SCL
yang dekat dengan pin AREF dan dua pin baru lainnya ditempatkan dekat dengan pin RESET,
yang IOREF yang memungkinkan perisai untuk beradaptasi dengan tegangan yang tersedia dari papan. Di masa depan, perisai akan kompatibel
dengan kedua papan yang menggunakan AVR
yang beroperasi dengan 5V dan dengan Arduino
Due yang beroperasi dengan 3.3V. Yang kedua
adalah pin tidak terhubung, yang disediakan untuk tujuan masa depan.
-Stronger RESET sirkuit.
-Atmega 16U2 menggantikan 8U2.
"Uno" berarti satu di Italia dan diberi nama untuk menandai peluncuran Arduino 1.0. The Uno dan
versi 1.0 akan menjadi versi referensi Arduino,
bergerak maju.


b. Arduino Due




Berbeda dengan saudaranya, Arduino Due tidak menggunakan ATMEGA, melainkan dengan chip yang lebih tinggi ARM Cortex CPU. Memiliki 54 I/O pin digital dan 12 pin input analog. Untuk pemogramannya menggunakan Micro USB, terdapat pada beberapa handphone.
Arduino Due adalah papan mikrokontroler
berdasarkan Atmel SAM3X8E ARM Cortex-M3
CPU (datasheet). Ini adalah pertama papan
Arduino didasarkan pada 32-bit mikrokontroler
ARM inti. Ini memiliki 54 digital pin input / output
(yang 12 dapat digunakan sebagai output PWM),
12 analog input, 4 UART (hardware port serial),
jam 84 MHz, USB OTG koneksi yang mampu, 2
DAC (digital ke analog) , 2 TWI, jack listrik, header
SPI, header JTAG, tombol reset dan tombol
hapus.
Peringatan: Tidak seperti papan Arduino lainnya,
Arduino Due berjalan pada 3.3V. Tegangan
maksimum yang I / O pin dapat mentolerir adalah
3.3V. Memberikan tegangan yang lebih tinggi,
seperti 5V ke I / O pin dapat merusak papan.
Arduino Due berisi semua yang diperlukan untuk mendukung mikrokontroler; hanya
menghubungkannya ke komputer dengan kabel
micro-USB atau power dengan adaptor AC-DC
atau baterai untuk memulainya. Arduino Due
kompatibel dengan semua perisai Arduino yang bekerja di 3.3V dan telah sesuai dengan 1,0
Arduino pinout.
The Due mengikuti 1.0 pinout:
-TWI: SDA dan SCL pin yang dekat dengan pin
AREF.
-The IOREF pin yang memungkinkan perisai
terpasang dengan konfigurasi yang tepat untuk beradaptasi dengan tegangan yang diberikan oleh
Arduino. Hal ini memungkinkan kompatibilitas
perisai dengan papan 3.3V seperti papan Karena
dan AVR berbasis yang beroperasi pada 5V.
Pin tidak berhubungan -Sebuah, disediakan untuk
penggunaan masa depan.
The Due memiliki forum khusus untuk membahas
papan.
ARM Inti manfaat
The Due memiliki inti ARM 32-bit yang dapat mengalahkan papan mikrokontroler 8-bit yang khas. Perbedaan yang paling signifikan adalah:
A 32-bit inti, yang memungkinkan operasi pada 4
byte data luas dalam jam CPU tunggal. (untuk
informasi lebih lanjut lihat int jenis halaman).
Jam -CPU di 84Mhz.
-96 KByte SRAM.
-512 KByte memori Flash untuk kode.
a DMA controller, yang dapat meringankan CPU
dari melakukan tugas-tugas intensif memori.
c. Arduino Mega




Arduino Mega Mirip dengan Arduino Uno, sama-sama menggunakan USB type A to B untuk pemogramannya. Tetapi Arduino Mega, menggunakan Chip yang lebih tinggi ATMEGA2560. Dan tentu saja untuk Pin I/O Digital dan pin input Analognya lebih banyak dari Uno.
Arduino mega 2560 adalah papan mikrokontroler ATmega2560 berdasarkan (datasheet) memiliki 54 digital pin input / output (dimana 15 dapat digunakan sebagai output PWM), 16 analog input, 4 UART (hardware port serial), osilator kristal 16 MHz, koneksi USB, jack listrik, header ICSP, dan tombol reset. Ini berisi semua yang diperlukan untuk mendukung mikrokontroler,hanya menghubungkannya ke komputer dengan kabel USB atau power dengan adaptor AC-DC atau baterai. Arduino Mega kompatibel dengan sebagian besar shield,dirancang untuk Arduino Duemilanove atau Diecimila.
Mega 2560 adalah update dari Arduino Mega
Arduino Mega2560 berbeda dari semua board
sebelumnya ,tidak menggunakan chip driver FTDI USB-to-serial. Sebaliknya, fitur ATmega16U2 (ATmega8U2 dalam revisi 1 dan revisi 2 papan) diprogram sebagai konverter USB-to-serial.
Revisi 2 dewan Mega2560 memiliki resistor menarik garis 8U2 HWB ke tanah, sehingga lebih mudah untuk dimasukkan ke dalam mode DFU.
Revisi 3 dari dewan memiliki fitur-fitur baru berikut:
- 1,0 pinout: menambahkan SDA dan pin SCL yang dekat dengan pin AREF dan dua pin baru lainnya ditempatkan dekat dengan pin RESET, yang IOREF yang memungkinkan perisai untuk beradaptasi dengan tegangan yang tersedia dari papan. Di masa depan, perisai akan kompatibel baik dengan dewan yang menggunakan AVR yang beroperasi dengan 5V dan dengan Arduino Due yang beroperasi dengan 3.3V. Yang kedua adalah pin tidak terhubung, yang disediakan untuk tujuan masa depan.
-Stronger RESET sirkuit.
-Atmega 16U2 menggantikan 8U2.
d. Arduino Leonardo




Bisa dibilang Leonardo adalah saudara kembar dari Uno. Dari mulai jumlah pin I/O digital dan pin input Analognya sama. Hanya pada Leonardo menggunakan Micro USB untuk pemogramannya.

Arduino Leonardo adalah papan mikrokontroler
berdasarkan ATmega32u4 (lihat datasheet).
memiliki 20 digital pin input / output (yang 7 dapat digunakan sebagai output PWM dan 12 input
analog sebagai), osilator kristal 16 MHz, koneksi
micro USB, jack listrik, header ICSP, dan tombol reset. Berisi semua yang diperlukan untuk
mendukung mikrokontroler; hanya
menghubungkannya ke komputer dengan kabel
USB atau power dengan adaptor AC-DC atau
baterai untuk memulai menggunakkannya.
Leonardo berbeda dari semua papan sebelumnya
di bahwa ATmega32u4 telah built-in USB
komunikasi, menghilangkan kebutuhan untuk
prosesor sekunder. Hal ini memungkinkan
Leonardo tampil sebagai komputer yang terhubung
sebagai mouse dan keyboard, selain virtual (CDC)
serial / COM port. Ini juga memiliki implikasi lain
untuk perilaku modul .
e. Arduino Fio




Bentuknya lebih unik, terutama untuk socketnya.
Walau jumlah pin I/O digital dan input analognya sama dengan uno dan leonardo, tapi Fio memiliki Socket XBee. XBee membuat Fio dapat dipakai untuk keperluan projek yang berhubungan dengan wireless.

f. Arduino Lilypad




Bentuknya yang melingkar membuat Lilypad dapat dipakai untuk membuat projek unik. Seperti membuat amor iron man misalkan. Hanya versi lamanya menggunakan ATMEGA168, tapi masih cukup untuk membuat satu projek keren. Dengan 14 pin I/O digital, dan 6 pin input analognya.

g. Arduino Nano





 Sepertinya namanya, Nano yang berukulan kecil dan sangat sederhana ini, menyimpan banyak fasilitas. Sudah dilengkapi dengan FTDI untuk pemograman lewat Micro USB. 14 Pin I/O Digital, dan 8 Pin input Analog (lebih banyak dari Uno). Dan ada yang menggunakan ATMEGA168, atau ATMEGA328.
 ArduinoNano adalah sebuah papan kecil, lengkap, dan ramah-papan tempat memotong roti berdasarkan ATmega328
(Arduino Nano 3.x) atau ATmega168 (Arduino Nano 2.x). Ini memiliki lebih atau kurang fungsi yang sama dari Arduino
Duemilanove, tetapi dalam paket yang berbeda. Ini tidak memiliki hanya colokan listrik DC, dan bekerja dengan kabel
USB Mini-B bukan satu standar. The Nano dirancang dan
diproduksi oleh Gravitech.
h. Arduino Mini




Arduino Mini ditujukan untuk pengguna tingkat lanjut yang membutuhkan fleksibilitas, biaya rendah, dan ukuran kecil.
Muncul dengan minimum komponen (tidak ada on-board USB
atau pin header) untuk menjaga biaya turun. Ini adalah pilihan yang baik untuk papan Anda ingin meninggalkan board
tertanam dalam proyek. Harap dicatat bahwa ada dua versi
dari board: satu yang beroperasi pada 5V (seperti kebanyakan
papan Arduino), dan salah satu yang beroperasi pada 3.3V.
Pastikan untuk memberikan yang benar daya dan penggunaan
komponen yang operasi tegangan cocok dengan board.

Fasilitasnya sama dengan yang dimiliki Nano. Hanya tidak dilengkapi dengan Micro USB untuk pemograman. Dan ukurannya hanya 30 mm x 18 mm saja.

i. Arduino Micro


Arduino Mikro adalah board mikrokontroler berdasarkan
ATmega32u4 (lihat datasheet), yang dikembangkan bersama dengan Adafruit. Ini memiliki 20 digital pin input / output (yang
7 dapat digunakan sebagai output PWM dan 12 input analog
sebagai), osilator 16 MHz kristal, koneksi USB mikro, header
ICSP, dan tombol reset. Ini berisi semua yang diperlukan untuk
mendukung mikrokontroler; hanya menghubungkannya ke komputer dengan kabel USB mikro untuk memulainya. Dengan
memiliki faktor bentuk yang memungkinkannya untuk dapat dengan mudah ditempatkan pada papan tempat memotong roti :D.
Arduino Micro mirip dengan Arduino Leonardo in bahwa
ATmega32u4 telah built-in USB komunikasi,Dengan
menghilangkan kebutuhan untuk prosesor sekunder. Hal ini memungkinkan Micro muncul ke komputer yang terhubung
sebagai mouse dan keyboard, selain virtual (CDC) serial /
COM port. Ini juga memiliki implikasi lain untuk pemanfaatan board .
Ukurannya lebih panjang dari Nano dan Mini. Karena memang fasilitasnya lebih banyak yaitu; memiliki 20 pin I/O digital dan 12 pin input analog.

j. Arduino Ethernet




Ini arduino yang sudah dilengkapi dengan fasilitas ethernet. Membuat Arduino kamu dapat berhubungan melalui jaringan LAN pada komputer. Untuk fasilitas pada Pin I/O Digital dan Input Analognya sama dengan Uno.

k. Arduino Esplora




Rekomendasi bagi kamu yang mau membuat gadget sepeti Smartphone, karena sudah dilengkapi dengan Joystick, button, dan sebagainya. Kamu hanya perlu tambahkan LCD, untuk lebih mempercantik Esplora.
Arduino Esplora adalah papan mikrokontroler berasal dari
Arduino Leonardo. Esplora berbeda dari semua papan Arduino
sebelumnya dalam hal ini menyediakan sejumlah built-in, siap
digunakan set sensor onboard untuk interaksi. Ini dirancang untuk orang yang ingin bangun dan berjalan dengan Arduino
tanpa harus belajar tentang elektronik dari pertama. Untuk
langkah-demi-langkah pengantar Esplora, memeriksa Memulai dengan Esplora panduan.
Esplora onboard suara dan cahaya output, dan beberapa sensor input, termasuk joystick, slider, sensor suhu,
accelerometer, mikrofon, dan sensor cahaya. Hal ini juga memiliki potensi untuk memperluas kemampuan dengan dua
input dan output konektor Tinkerkit, dan soket untuk layar LCD
warna TFT.
Seperti papan Leonardo, yang Esplora menggunakan
mikrokontroler AVR Atmega32U4 dengan 16 MHz osilator kristal dan koneksi USB mikro mampu bertindak sebagai perangkat USB klien, seperti mouse atau keyboard.
Di sudut kiri atas papan ada tombol tekan reset, yang dapat Anda gunakan untuk me-restart board arduino. Ada empat
LED Status:
-Pada [Hijau] menunjukkan apakah board menerima catu daya
L [yellow] terhubung langsung ke mikrokontroler, dapat diakses melalui pin 13
-RX Dan TX [kuning] menunjukkan data yang dikirim atau diterima melalui komunikasi USB
Dewan berisi semua yang diperlukan untuk mendukung
mikrokontroler; hanya menghubungkannya ke komputer
dengan kabel USB untuk memulainya.

l. Arduino Robot










 Ini adalah paket komplit dari Arduino yang sudah berbentuk robot. Sudah dilengkapi dengan LCD, Speaker, Roda, Sensor Infrared, dan semua yang kamu butuhkan untuk robot sudah ada pada Arduino ini.


Sejarah Singkat Arduino
Semuanya berawal dari sebuah thesis yang dibuat oleh Hernando Barragan, di institute Ivrea , Italia pada tahun 2005, dikembangkan oleh Massimo Banzi dan David Cuartielles dan diberi nama Arduin of Ivrea. Lalu diganti nama menjadi Arduino yang dalam bahasa Italia berarti teman yang berani.
Tujuan awal dibuat Arduino adalah untuk membuat perangkat mudah dan murah, dari perangkat yang ada saat itu. Dan perangkat tersebut ditujukan untuk para siswa yang akan membuat perangkat desain dan interaksi. Visi awalnya aja udah mulia kan.
Saat ini tim pengembangnya adalah Massimo Banzi, David Cuartielles, Tom Igoe, Gianluca Martino, David Mellis, dan Nicholas Zambetti. Mereka mengupayakan 4 hal dalam Arduino ini, yaitu:
1. Harga terjangkau
2. Dapat dijalankan diberbagai sistem operasi, Windows, Linux, Max, dan sebagainya.
3. Sederhana, dengan bahasa pemograman yang mudah bisa dipelajari orang awam, bukan untuk orang teknik saja.
4. Open Source, hardware maupun software.
Sifat Arduino yang Open Source, membuat Arduino berkembang sangat cepat. Dan banyak lahir perangkat-perangkat sejenis Arduino. Seperti DFRDuino atau Freeduino, dan kalau yang lokal ada namanya CipaDuino yang dibuat oleh SKIR70, terus ada MurmerDuino yang dibuat oleh Robot Unyil, ada lagi AViShaDuino yang salah satu pembuatnya adalah Admin Kelas Robot.
Sampai saat ini pihak resmi, sudah membuat berbagai jenis-jenis Arduino. Mulai dari yang paling mudah dicari dan paling banyak digunakan, yaitu Arduino Uno. Hingga Arduino yang sudah menggunakan ARM Cortex, beebentuk Mini PC. Dan sudah ada ratusan ribu Arduino yang digunakan di gunakan di dunia pada tahun 2011. Dan untuk hari ini, yang bisa kamu hitung sendiri ya. Dan Arduino juga sudah banyak dipaka oleh perusahaan besar. Contohnya Google menggunakan Arduino untuk Accessory Development Kit, NASA memakai Arduino untuk prototypin, ada lagi Large Hadron Colider memakai Arduino dalam beberapa hal untuk pengumpulan data. Dan banyak yang bertanya juga Arduino ini menggunakan bahasa pemograman apa? Arduino sebenarnya menggunakan bahas C, yang sudah disederhanakan. Sehingga orang awam pun bisa menjadi seniman digital, bisa mempelajari Arduino dengan mudahnya...

Cukup sekian tentang ARDUINO smga bermanfaat 😎☺😊
Tunggu post selanjutnya tentang bahasa program Arduino nya ya !!!
😛😜😜😜😛



coding suhu arduino

#include <SD.h> #include <SPI.h> #include <DS3231.h> File data_file; DS3231  rtc(SDA, SCL); const int lm35_pi...