MIKROKONTROLER
Oleh
Puji syukur kehadirat Tuhan Yang Maha Esa atas segala limpahan rahmat,
taufik, serta hidayah-Nya sehingga saya dapat menyelesaikan Tugas Makalah Matakuliah
Mikrokontroler (Arduino) ini tanpa hambatan sedikitpun sesuai dengan waktu yang telah
direncanakan.
Saya menyadari ada keterbatasan dalam penyusunan makalah ini. Oleh karena
itu, saya selaku pembuat sangat mengharapkan kritik dan saran yang membangun
sehingga saya dapat menyempurnakan kesalahan-kesalahan dalam laporan ini.
Akhirnya hanya kepada Tuhan Yang Maha Esa sajalah kita kembalikan semua
urusan dan semoga makalah ini dapat bermanfaat bagi semua pihak, khususnya bagi
penulis dan para pembaca pada umumnya, semoga Tuhan Yang Maha Esa memberkati
dan dicatat sebagai pahala disisi-Nya, amin.
Samuel Sinaga
DAFTAR ISI
Bab 3 . Arduino…………………………………………………………….……………vi
central processing unit – mulai dari prosesor 4-bit yang sederhana hingga
prosesor kinerja tinggi 64-bit.
input/output antarmuka jaringan seperti port serial (UART)
antarmuka komunikasi serial lain seperti I²C, Serial Peripheral Interface
and Controller Area Network untuk sambungan sistem
periferal seperti timer dan watchdog
RAM untuk penyimpanan data
ROM, EPROM, EEPROM atau Flash memory untuk menyimpan program
komputer
pembangkit clock – biasanya berupa resonator rangkaian RC
pengubah analog-ke-digital
Untuk membuat sistem minimal paling tidak dibutuhkan sistem clock dan reset,
walaupun pada beberapa mikrokontroler sudah menyediakan sistem clock
internal, sehingga tanpa rangkaian eksternal pun mikrokontroler sudah beroperasi.
130 macam instruksi yang hampir semuanya dieksekusi dalam satu siklus
clock.
32 x 8-bit register serba guna.
Kecepatan mencapai 16 MIPS dengan clock 16 MHz.
32 KB Flash memory dan pada arduino memiliki bootloader yang
menggunakan 2 KB dari flash memori sebagai bootloader.
Memiliki EEPROM (Electrically Erasable Programmable Read Only
Memory) sebesar 1KB sebagai tempat penyimpanan data semi permanent
karena EEPROM tetap dapat menyimpan data meskipun catu daya
dimatikan.
Memiliki SRAM (Static Random Access Memory) sebesar 2KB.
Memiliki pin I/O digital sebanyak 14 pin 6 diantaranya PWM (Pulse
Width Modulation) output.
Master / Slave SPI Serial interface.
Pengenalan Mikrokontroler
Pengenalan Mikrokontroler Arduino
Perancangan Desain Skematik Arduino
Pemograman Arduino Uno
Adapun tujuan dari pembuatan makalah ini yaitu untuk menambah pengetahuan
dan memahami apa itu ardunio. Manfaat pembuatan makalah ini yaitu pembaca
dapat mengetahui tentang pengenalan mikrokontroler, mikrokontroler arduino,
perancangan desain skematik arduino, dan pemograman arduino uno.
BAB 2
MIKROKONTROLER
AMCC
• Atmel AVR32
• MARC4
• ATMega16
Cypress MicroSystems
• CY8C2xxxx (PSoC)
Freescale Semiconductor
Fujitsu
Holtek
• HT8
Intel
Microchip
National Semiconductor
• COP8, CR16
NEC
Philips Semiconductors
STMicroelectronics
• ST 62, ST 7
Texas Instruments
• TMS370, MSP430
Ubicom
• IP2022
Xilinx
• Z8
• Z86E02
Parallax, Inc.
PicAxe
Murah, tidak lebih dari sekedar PIC yang dimuati BASIC. Bagian
programmernya ditancapi dengan 3 resistors. Penawaran BASIC
menawarkan fungsionalitas yang besar dengan adanya fasilitas IF..GOTO
secara terbatas.
Berikut ini akan saya jelaskan beberapa macam macam jenis atau
tipe - tipe arduino yang ada dipasaran,kalau sebelumnya kita telah
berkenalan dengan arduino, apa itu arduino dan lain sebagainya , buat
yang belum monggo di cek aja di Sini . Dan kali ini kita akan
mengenalkan anggota keluarga dari Arduino.
1. Arduino Uno
2. Arduino Due
-TWI: SDA dan SCL pin yang dekat dengan pin AREF.
3. Arduino Leonardo
Tentu saja, board Galileo juga perangkat lunak yang cocok dengan
Arduino Software Development Environment (IDE), yang membuat
kegunaan dan pengenalan snap. Selain hardware Arduino dan
kompatibilitas software, arduino.
7. Arduino Nano R3
The Arduino Nano 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.
• Arduino Mega
Input Analog
Input Analog atau analog pin adalah pin-pin yang berfungsi untuk menerima
sinyal dari komponen atau rangkaian analog. Misalnya dari potensiometer,
sensor suhu, sensor cahaya, dsb.
Catu Daya
Pin-pin catu daya adalah pin yang memberikan tegangan untuk komponen
atau rangkaian yang dihubungkan dengan Arduino. Pada bagian catu daya ini
terdapat juga pin Vin dan Reset. Vin digunakan untuk memberikan tegangan
langsung kepada Arduino tanpa melalui tegangan USB atau adaptor. Reset
adalah pin untuk memberikan sinyal reset melaui tombol atau rangkaian
eksternal.
Baterai / Adaptor
Soket baterai atau adaptor digunakan untuk menyuplai Arduino dengan
tegangan dari baterai/adaptor 9V pada saat Arduino sedang tidak
disambungkan ke komputer. Kalau Arduino sedang disambungkan ke
komputer melalui USB, Arduino mendapatkan suplai tegangan dari USB, jadi
tidak perlu memasang baterai/adaptor saat memprogram Arduino.
4.2 Tampak depan Arduino Uno
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.
Summary
Microcontroller : ATmega328
Operasi dengan daya : 5V Voltage
Input Tegangan (disarankan) :7-12V
Input Tegangan (batas) : 6-20V
Digital I / O Pins : 14 (dimana 6 memberikan output PWM)
Analog Input Pin :6
DC per I / O Pin : 40 mA
Flash Memory : 32 KB (ATmega328)
SRAM : 2 KB (ATmega328)
EEPROM : 1 KB (ATmega328)
Clock Speed : 16 MHz
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.
3.3V
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 (yang dapat dibaca dan
ditulis dengan EEPROM library).
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. Lihat (attachInterrupt) fungsi untuk rincian lebih lanjut.
PWM (Pulse Width Modulation)
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.
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, Untuk komunikasi SPI, menggunakan perpustakaan
SPI.
BAB 5
PEMOGRAMAN
2. Common Katoda
Merupakan kebalikan dari Common Anoda. Disini semua katoda disatukan secara
parallel dan dihubungkan ke GROUND. Karena seluruh katoda dihubungkan ke
GROUND, maka COMMON KATODA ini berada pada kondisi AKTIF HIGH (led
akan menyala/aktif bila diberi logika 1).
Prinsip Kerja :
Prinsip kerja seven segmen ialah input biner pada switch dikonversikan masuk ke
dalam decoder, baru kemudian decoder mengkonversi bilangan biner tersebut
menjadi decimal, yang nantinya akan ditampilkan pada seven segment.
Seven segment dapat menampilkan angka-angka desimal dan beberapa karakter
tertentu melalui kombinasi aktif atau tidaknya LED penyusunan dalam seven
segment. Untuk memudahkan penggunaan seven segment, umumnya digunakan
sebuah decoder( mengubah/ mengkoversi input bilangan biner menjadi decimal) atau
seven segment driver yang akan mengatur aktif tidaknya led-led dalam seven
segment sesuai dengan nilai biner yang diberikan.
Dekoder BCD ke seven segment digunakan untuk menerima masukan BCD 4-bit
dan memberikan keluaran yang melewatkan arus melalui segmen untuk
menampilkan angka desimal. Jenis dekoder BCD ke seven segment ada dua macam
yaitu dekoder yang berfungsi untuk menyalakan seven segment mode common
anoda dan dekoder yang berfungsi untuk menyalakan seven segment mode common
katoda. Contoh IC converter BCD to Seven Segment untuk 7-segment Common
Anoda pake decoder IC TTL 7447 untuk Common Katoda pakai IC TTL 7448.
Unsignedcharx=5,a,y,detik,sat_mnt,pul_mnt,sat_jam,pul_jam,hit[10]={0b01111111,
0b00011100, 0b10111011, 0b10111110, 0b11011100, 0b11101110, 0b11100111,
0b00111100, 0b11111111, 0b11111110}; //common katoda
void rolling()
{
enable4=1;enable1=0;
set=hit[sat_mnt];
delay_ms(x);
if(sat_mnt>9){sat_mnt=0;pul_mnt++;}
enable1=1;enable2=0;
set=hit[pul_mnt];
delay_ms(x);
if(pul_mnt>5){pul_mnt=0;sat_jam++;}
enable2=1;enable3=0;
set=hit[sat_jam];
delay_ms(x);
if(sat_jam>9){sat_jam=0;pul_jam++;}
enable3=1; enable4=0;
set=hit[pul_jam];
delay_ms(x);
if(pul_jam>=4&&sat_jam==2){sat_jam=0;pul_jam=0;}
void setting()
{
while(1)
{
if (tombol1==0)
{
delay_ms(200);
while(tombol1==0);
a++;
if(a==1)
{ for(;;)
{
enable4=1;enable1=0;;set=hit[sat_mnt];
if(tombol2==0){ delay_ms(200);
while(tombol2==0);sat_mnt++;if(sat_mnt>9)sat_mnt=0;}
else if(tombol1==0){break;};
};
}
else if(a==2)
{ for(;;)
{
enable1=1;enable2=0;;set=hit[pul_mnt];
if(tombol2==0){ delay_ms(200);
while(tombol2==0);pul_mnt++;if(pul_mnt>5)pul_mnt=0;}
else if(tombol1==0){break;};
};
}
else if(a==3)
{ for(;;)
{
enable2=1;enable3=0;;set=hit[sat_jam];
if(tombol2==0){ delay_ms(200);
while(tombol2==0);sat_jam++;if(sat_jam>9)sat_jam=0;}
else if(tombol1==0){break;};
};
}
else if(a==4)
{ for(;;)
{
enable3=1; enable4=0;;set=hit[pul_jam];
if(tombol2==0){delay_ms(200);
while(tombol2==0);pul_jam++;if(pul_jam>2)pul_jam=0;}
else if(tombol1==0){break;};
};
}
else if(a>4){a=0;goto lanjut;};
}
else if(a==0)break;
lanjut:
void jalan()
{
for (detik=1;detik<60;detik++)
{
DDRB.4=DDRB.5=1;
PORTB.5=1;
PORTB.4=1;
for (y=0;y<=24;y++)
{
rolling();
setting();
};
PORTB.4=0;
PORTB.5=0;
for (y=0;y<=24;y++)
{
rolling();
setting();
};
};
sat_mnt++;
void main(void)
{
PORTB=0xFF;
DDRB=0x00;
PORTC=0xFF;
DDRC=0xFF;
PORTD=0x00;
DDRD=0xFF;
set=hit[0];
delay_ms(10);
while(1)
{ jalan(); }
Konsep Dasar
Sinyal PWM pada umumnya memiliki amplitudo dan frekuensi dasar yang
tetap, namun memiliki lebar pulsa yang bervariasi. Lebar Pulsa PWM berbanding
lurus dengan amplitudo sinyal asli yang belum termodulasi. Artinya, Sinyal PWM
memiliki frekuensi gelombang yang tetap namun duty cycle bervariasi (antara 0%
hingga 100%)
[4] Spring Loaded Elektromagnet. Solenoid 12V Pull Type. [Online]. Tersedia :
http://www.engineeringshock.com/12v-pull-type-solenoid.html [2 Agustus 2012]