Pengertian Bahasa Pemrograman komputer Beserta Jenis dan Contohnya

9:08 AM Comment

 

Pengertian Bahasa Pemrograman komputer Beserta Jenis dan Contohnya

Jenis-Jenis Bahasa Komputer dan Contohnya

Bahasa komputer didefinisikan sebagai kode atau sintaks yang digunakan untuk menulis program atau aplikasi tertentu. Bahasa komputer digunakan untuk berkomunikasi dengan komputer. Secara garis besar bahasa komputer dapat diklasifikasikan menjadi tiga kategori bahasa tingkat rendah, bahasa mesin, dan bahasa tingkat tinggi. Bahasa mesin dianggap sebagai bahasa komputer tertua di antara ketiganya. Dalam bahasa mesin, input langsung diberikan sebagai input biner yang diproses oleh mesin. Input biner berarti bentuk angka satu dan nol. Untuk pemrosesan bahasa komputer, sistem membutuhkan compiler dan interpreter untuk mengubah bahasa mesin ke dalam bahasa komputer sehingga dapat diproses

Bahasa Mesin

Bahasa mesin kadang-kadang disebut sebagai kode mesin atau kode objek yang terdiri dari digit biner 0 dan 1. Digit biner ini dipahami dan dibaca oleh sistem komputer. Bahasa ini dianggap sebagai bahasa asli karena dapat langsung dipahami oleh unit pemrosesan pusat (CPU). Bahasa mesin tidak begitu mudah dipahami, karena bahasa ini menggunakan sistem biner di mana perintah ditulis dalam bentuk 1 dan 0 yang tidak mudah untuk diartikan. Hanya ada satu bahasa yang dipahami oleh bahasa komputer yaitu bahasa mesin.

Sistem operasi mendefinisikan bagaimana program harus menulis sehingga dapat dikonversi ke bahasa mesin dan sistem mengambil tindakan yang sesuai. Program dan skrip komputer juga dapat ditulis dalam bahasa pemrograman lain seperti C, C++, dan JAVA. Namun bahasa-bahasa tersebut tidak dapat langsung dipahami oleh suatu sistem komputer sehingga diperlukan suatu program yang dapat mengubah program komputer tersebut menjadi bahasa mesin. Compiler digunakan untuk mengubah program ke bahasa mesin yang dapat dengan mudah dipahami oleh sistem komputer. Kompiler menghasilkan file biner dan file yang dapat dieksekusi.

Contoh bahasa mesin dengan tulisan Hello Word

01001000 0110101 01101100 01101100 01101111 00100000 01010111 01101111 01110010 01101100 01100100.

Bahasa Tingkat Rendah

Bahasa tingkat rendah untuk mikroprosesor dan banyak perangkat lain yang dapat diprogram. Bahasa assembly juga dianggap sebagai bahasa generasi kedua. Bahasa generasi pertama adalah bahasa mesin. Bahasa assembly sebagian besar terkenal untuk menulis sistem operasi dan juga dalam menulis aplikasi desktop yang berbeda. kegiatan yang dilakukan oleh programmer dengan menggunakan bahasa assembly adalah manajemen memori, akses registry, dan operasi clock cycle. Kelemahan dari bahasa assembly adalah kodenya tidak dapat digunakan kembali dan bahasanya tidak begitu mudah dipahami. Bahasa assembly dianggap sebagai kelompok bahasa lain. Bahasa ini digunakan untuk mengimplementasikan representasi simbolis dari kode mesin yang digunakan untuk memprogram arsitektur CPU. Nama lain dari bahasa assembly adalah kode assembly. Untuk prosesor apapun, bahasa pemrograman yang paling banyak digunakan adalah bahasa assembly.

Dalam bahasa assembly, pemrogram melakukan operasi yang dapat langsung dieksekusi pada unit pemrosesan pusat (CPU). Bahasa ini memiliki kelemahan tertentu karena tidak mengandung variabel atau fungsi apa pun dalam program dan juga program ini tidak portabel pada prosesor yang berbeda. Bahasa tingkat rendah ini menggunakan struktur dan perintah yang sama dengan bahasa mesin yang digunakan tetapi menggunakan nama sebagai pengganti angka. Operasi yang dilakukan menggunakan bahasa assembly sangat cepat. Operasinya jauh lebih cepat jika dibandingkan dengan bahasa tingkat tinggi.

Contoh bahasa tingkat rendah

; progam untuk mencetak huruf A ke layar

.model small

.code

org 100h

mulai" mov ah,02

mov dl,65

int 21h

int 20 h

end mulai

Bahasa Tingkat Tinggi

Pengembangan bahasa tingkat tinggi dilakukan ketika programmer menghadapi masalah dalam menulis program karena bahasa yang lebih lama memiliki masalah portabilitas yang berarti kode yang ditulis dalam satu mesin tidak dapat ditransfer ke mesin lain. Dengan demikian mengarah pada perkembangan bahasa tingkat tinggi. Bahasa tingkat tinggi mudah dipahami dan kode dapat ditulis dengan mudah karena program yang ditulis mudah digunakan dalam bahasa tingkat tinggi. Keuntungan lain dari kode yang ditulis dalam bahasa tingkat tinggi adalah kode tidak tergantung pada sistem komputer yang berarti kode tersebut dapat ditransfer ke mesin lain. Bahasa tingkat tinggi menggunakan konsep abstraksi dan juga fokus pada bahasa pemrograman daripada berfokus pada komponen perangkat keras komputer seperti pemanfaatan register atau pemanfaatan memori.

Pengembangan bahasa tingkat yang lebih tinggi dilakukan untuk programmer untuk menulis program yang dapat dibaca manusia yang dapat dengan mudah dipahami oleh pengguna mana pun. Sintaks yang digunakan dan gaya pemrograman dapat dengan mudah dipahami oleh manusia jika dibandingkan dengan bahasa tingkat rendah. Satu-satunya persyaratan dalam bahasa tingkat tinggi adalah kebutuhan kompiler. Karena program yang ditulis dalam bahasa tingkat tinggi tidak langsung dipahami oleh sistem komputer. Sebelum eksekusi program tingkat tinggi, perlu dikonversi ke bahasa tingkat mesin. Contoh bahasa tingkat tinggi adalah C++, C, JAVA, FORTRAN, Pascal, Perl, Ruby, dan Visual Basic.

Penjelasan Lengkap Pinout Pada Arduino Uno

9:41 AM Comment

 

Board Arduino diprogram menggunakan bahasa yang berasal dari C dan C++. Dalam artikel ini, kita akan melihat lebih dekat pada perangkat keras Arduino, dan lebih khusus lagi yaitu mengenai pinout Arduino Uno. Arduino Uno menggunakan mikrokontroler ATmega328 oleh Atmel. Pinout Arduino Uno terdiri dari 14 pin digital, 6 input analog, jack adaptor, koneksi USB dan header ICSP. Dalam artikel ini, kita akan membahas mengenai pinout yang ada pada Arduino Uno.

Penjelasan Lengkap Pinout Pada Arduino Uno

Catu daya pada arduino uno

Ada 3 cara untuk menyalakan Arduino Uno:

Barrel Jack : Barrel jack atau DC Power Jack dapat digunakan untuk memberi daya pada board Arduino. Jack barel biasanya terhubung ke adaptor. board dapat disuplay dengan power 5-20 volt tetapi pabrikan merekomendasikan untuk menggunakan power antara 7-12 volt. Di atas 12 volt, regulator akan menjadi cepat  panas.

Pin VIN : Pin ini digunakan untuk memberi daya pada board Arduino Uno menggunakan sumber daya eksternal. Tegangan harus berada dalam kisaran yang disebutkan di atas.

Kabel USB : saat terhubung ke komputer, memberikan 5 volt pada 500mA.

Ada dioda pelindung polaritas yang menghubungkan antara kutub positif dari jack barel ke pin VIN, dengan nilai 1 Ampere.

pada arduino catu daya yang digunakan menentukan daya yang tersedia untuk sirkuit kalian. Misalnya, memberi daya pada sirkuit menggunakan USB membatasi kalian hingga 500mA. Pertimbangkan bahwa ini juga digunakan untuk memberi daya pada MCU, periferalnya, regulator terpasang, dan komponen yang terhubung dengannya. Saat menyalakan sirkuit melalui jack barel atau VIN, kapasitas maksimum yang tersedia ditentukan oleh regulator 5 dan 3,3 volt di papan Arduino.

5v dan 3v3 : Tersedia tegangan 5 dan 3.3v yang diatur untuk memberi daya pada komponen eksternal sesuai dengan spesifikasi yang telah ditentukan.

GND : Di pinout Arduino Uno, kalian dapat menemukan 5 pin GND, yang semuanya saling berhubungan.

RESET : mengatur ulang Arduino

IOREF : Pin ini adalah referensi input/output. Ini memberikan referensi tegangan yang dengannya mikrokontroler beroperasi.

Pinout Analog

Arduino Uno memiliki 6 pin analog, yang memanfaatkan ADC (Analog to Digital converter).

Pin ini berfungsi sebagai input analog tetapi juga dapat berfungsi sebagai input digital atau output digital.

Pinout Digital

Pin 0-13 dari Arduino Uno berfungsi sebagai pin input/output digital.

Pin 13 dari Arduino Uno terhubung ke LED built-in.

Di Arduino Uno - pin 3,5,6,9,10,11 memiliki kemampuan PWM

Apa itu pwm ?

Secara umum, Pulse Width Modulation (PWM) adalah teknik modulasi yang digunakan untuk mengkodekan pesan menjadi sinyal berdenyut. PWM terdiri dari dua komponen utama: frekuensi dan siklus kerja. Frekuensi PWM menentukan berapa lama waktu yang dibutuhkan untuk menyelesaikan satu siklus (periode) dan seberapa cepat sinyal berfluktuasi dari tinggi ke rendah. Siklus tugas menentukan berapa lama sinyal tetap tinggi dari total periode. Siklus tugas diwakili dalam persentase.

Di Arduino, pin yang diaktifkan PWM menghasilkan frekuensi konstan ~ 500Hz, sedangkan siklus kerja berubah sesuai dengan parameter yang ditetapkan oleh pengguna. Terlihat seperti gambar dibawah ini

Penjelasan Lengkap Pinout Pada Arduino Uno

Sinyal PWM digunakan untuk kontrol kecepatan motor DC, peredupan LED, dan lainnya

Protokol Komunikasi

Serial (TTL) : Pin digital 0 dan 1 adalah pin serial Arduino Uno.

komunikasi ini menggunakan modul USB.

Pin SPI : SS/SCK/MISO/MOSI adalah pin khusus untuk komunikasi SPI. Mereka dapat ditemukan pada pin digital 10-13 dari Arduino Uno dan pada header ICSP.

I2C : Pin SCL/SDA adalah pin khusus untuk komunikasi I2C. Di Arduino Uno mereka ditemukan pada pin Analog A4 dan A5.

Aref : Tegangan referensi untuk input analog.

Interupsi : INT0 dan INT1. Arduino Uno memiliki dua pin interupsi eksternal.

Interupsi Eksternal : Interupsi eksternal adalah interupsi sistem yang terjadi ketika ada gangguan dari luar. Interferensi dapat berasal dari pengguna atau perangkat keras lain dalam jaringan. Kegunaan umum untuk interupsi ini di Arduino adalah membaca frekuensi gelombang persegi yang dihasilkan oleh encoder atau membangunkan prosesor pada peristiwa eksternal.

Ada dua pin interupsi eksternal pada ATmega168/328 yang disebut INT0 dan INT1. baik INT0 dan INT1 dipetakan ke pin 2 dan 3. Sebaliknya, interupsi Perubahan Pin dapat diaktifkan pada salah satu pin.

ICSP : adalah singkatan dari In-Circuit Serial Programming. Nama tersebut berasal dari In-System Programming headers (ISP). Produsen seperti Atmel yang bekerja dengan Arduino telah mengembangkan header pemrograman serial dalam sirkuit mereka sendiri. Pin ini memungkinkan pengguna untuk memprogram firmware papan Arduino. Ada enam pin ICSP yang tersedia di papan Arduino yang dapat dihubungkan ke perangkat programmer melalui kabel pemrograman.

Penjelasan Lengkap Pinout Pada Arduino Uno


Macam Macam Tipe Data Pada C++.

12:56 PM Comment

 

Macam Macam Tipe Data Pada C++.

Tipe data menentukan tipe dan operasi yang dapat dilakukan pada data. C++ menyediakan berbagai tipe data dan setiap tipe data direpresentasikan secara berbeda di dalam memori komputer. Berbagai tipe data yang disediakan oleh C++ adalah tipe data bawaan, tipe data turunan, dan tipe data yang ditentukan pengguna seperti yang ditunjukkan pada gambar dibawah ini.

Tipe - Tipe Data Dalam Pemrograman C++.

Tipe data dasar (fundamental) yang disediakan oleh c++ adalah tipe data integral, floating point, dan void. Di antara tipe data ini, tipe data integral dan floating-point dapat didahului oleh beberapa pengubah tipe. Pengubah ini atau dikenal sebagai kualifikasi tipe merupakan kata kunci yang mengubah ukuran atau rentang atau kedua tipe data. Berbagai pengubah pendek, panjang.

Selain tipe data dasar ini, ANSI C++ telah memperkenalkan dua tipe data lagi yaitu, bool dan wchar_t.

Tipe Data Integral: Tipe data integral digunakan untuk menyimpan bilangan bulat dan mencakup tipe data char (karakter) dan int (bilangan bulat).

Char : Karakter mengacu pada alfabet, angka, dan karakter lain (seperti {, @, #, dll.) yang ditentukan dalam rangkaian karakter ASCII. Dalam C++, tipe data char juga diperlakukan sebagai tipe data integer karena karakter disimpan secara internal sebagai bilangan bulat dengan rentang nilai dari -128 hingga 127. Tipe data char menempati 1 byte memori (yaitu, hanya menampung satu karakter pada suatu waktu).

Pengubah yang dapat mendahului char signed dan unsigned. Berbagai tipe data karakter dengan ukuran dan jangkauannya tercantum dalam tabel dibawah ini

Tipe - Tipe Data Dalam Pemrograman C++.

Int : Angka tanpa bagian pecahan mewakili data bilangan bulat. Dalam C++, tipe data int digunakan untuk menyimpan bilangan bulat seperti 4, 42, 5233, -32, -745. Dengan demikian, ia tidak dapat menyimpan angka seperti 4.28, -62.533.

Floating-point : Tipe data floating-point digunakan untuk menyimpan bilangan real seperti 3 .28, 64. 755765, 8.01, -24.53. Tipe data ini termasuk tipe data float dan double. Berbagai tipe data floating-point dengan ukuran dan jangkauannya tercantum dalam Tabel


Tipe - Tipe Data Dalam Pemrograman C++.

Void : Tipe data void digunakan untuk menentukan daftar parameter kosong ke suatu fungsi dan tipe kembalian untuk suatu fungsi. Ketika void digunakan untuk menentukan daftar parameter kosong, ini menunjukkan bahwa suatu fungsi tidak mengambil argumen apa pun dan ketika digunakan sebagai tipe pengembalian untuk suatu fungsi, ini menunjukkan bahwa suatu fungsi tidak mengembalikan nilai apa pun. Untuk void, tidak ada memori yang dialokasikan dan karenanya, tidak dapat menyimpan apa pun. Akibatnya, void tidak dapat digunakan untuk mendeklarasikan variabel sederhana, namun dapat digunakan untuk mendeklarasikan pointer generik.

Bool dan wcha_t : Tipe boo1data hanya dapat menampung nilai Boolean, yaitu; benar atau salah, di mana benar mewakili 1 dan salah mewakili O. Ini hanya membutuhkan satu bit penyimpanan, namun disimpan sebagai bilangan bulat dalam memori. Dengan demikian, ini juga dianggap sebagai tipe data integral. Tipe data bool paling sering digunakan untuk mengekspresikan hasil operasi logika yang dilakukan pada data. Ini juga digunakan sebagai tipe pengembalian fungsi yang menunjukkan keberhasilan atau kegagalan fungsi.

Selain tipe data char, C++ menyediakan tipe data lain wchar_t yang digunakan untuk menyimpan karakter lebar 16-bit. Karakter lebar digunakan untuk menampung set karakter besar yang terkait dengan beberapa bahasa non-Inggris.

Tipe Data Turunan : Tipe data yang diturunkan dari tipe data bawaan dikenal sebagai tipe data turunan. Berbagai tipe data turunan yang disediakan oleh C++ adalah array, persimpangan, referensi dan pointer.

Array 

Array adalah kumpulan elemen dari tipe data yang sama yang dirujuk dengan nama yang sama. Semua elemen dalam array disimpan di lokasi memori yang berdekatan (satu demi satu) dan setiap elemen diakses oleh indeks atau nilai subskrip yang unik. Nilai subscript menunjukkan posisi elemen dalam array.

Fungsi  

Fungsi adalah segmen program mandiri yang melakukan tugas tertentu yang terdefinisi dengan baik. Dalam C++, setiap program berisi satu atau lebih fungsi yang dapat dipanggil dari bagian lain dari suatu program, jika diperlukan.

Referensi 

Referensi adalah nama alternatif untuk variabel. Artinya, referensi adalah alias untuk variabel dalam suatu program. Variabel dan referensinya dapat digunakan secara bergantian dalam suatu program karena keduanya merujuk ke lokasi memori yang sama. Oleh karena itu, perubahan yang dilakukan pada salah satu dari mereka (katakanlah, variabel) tercermin di yang lain (pada referensi).

Pointer 

Pointer adalah variabel yang dapat menyimpan alamat memori dari variabel lain. Pointer memungkinkan untuk menggunakan memori secara dinamis. Artinya, dengan bantuan pointer, memori dapat dialokasikan atau tidak dialokasikan ke variabel pada saat run-time, sehingga membuat program lebih efisien.


Cara Menggunakan Pin PWM Arduino Untuk Kontrol Kecepatan Motor Dc

4:32 PM Comment

 

Kecepatan motor DC pada umumnya berbanding lurus dengan tegangan suplai daya, jadi jika tegangan diturunkan dari 9 volt menjadi 4,5 volt maka kecepatan motor dc menjadi setengah dari kecepatan semula. Namun dalam praktiknya, untuk mengubah kecepatan motor DC tidak perlu terus-menerus mengubah tegangan suplai dayanya. Yaitu dengan cara mengatur pada output kecepatan PWM untuk motor DC dengan cara memvariasikan tegangan yang disuplai ke motor DC

Sinyal PWM pada dasarnya adalah gelombang persegi frekuensi tinggi (biasanya lebih besar dari 1KHz). Siklus Tugas gelombang persegi ini bervariasi untuk memvariasikan daya yang disuplai ke beban.

Sinyal input yang diberikan pada kontroler PWM dapat berupa menjadi sinyal analog atau digital sesuai dengan desain kontroler PWM. Kontroler PWM menerima sinyal kontrol dan menyesuaikan siklus kerja sinyal PWM sesuai dengan kebutuhan.

Untuk mengontrol motor dc yang melebihi 5v diperlukan driver motor, kaliini menggunakan driver motor L298n

Driver Motor L298N adalah pengontrol yang menggunakan H-Bridge untuk dengan mudah mengontrol arah dan kecepatan hingga 2 motor DC. Tutorial ini akan menunjukkan cara menggunakannya

Driver dapat digunakan hingga 2 motor DC. Colokkan satu motor ke terminal berlabel OUT1 dan OUT2. Colokkan motor kedua ke terminal berlabel OUT3 dan OUT4:

Cara Menggunakan Pin PWM Arduino Untuk Kontrol Kecepatan Motor Dc

Deretan pin di kanan bawah L298N mengontrol kecepatan dan arah motor. IN1 dan IN2 mengontrol arah motor yang terhubung ke OUT1 dan OUT2. IN3 dan IN4 mengontrol arah motor yang terhubung ke OUT3 dan OUT4. Disini pin yang digunakan pada arduino yaitu pin 2, 3, 4, 5, 9 dan 10. Untuk pin 9 dan 10 gunanya mengontrol kecepatan motor.

Cara Menggunakan Pin PWM Arduino Untuk Kontrol Kecepatan Motor Dc

Kalian dapat mengubah kecepatan dengan pin EN menggunakan PWM. ENA mengontrol kecepatan motor kiri dan ENB mengontrol kecepatan motor kanan. Di sini  diguanakan pin 9 dan 10 di Arduino. Ini opsional dan motor akan tetap berjalan jika kalian tidak melakukannya. Tetapi karena untuk mengontrol kecepatannya maka cara ini perlu dilakukan. Untuk programnya dapat dilihat dibawah ini

[program]


int motor1pin1 = 2;
int motor1pin2 = 3;
int ENA = 9;

int motor2pin1 = 4;
int motor2pin2 = 5;
int ENB = 10;

void setup() {
  // put your setup code here, to run once:
  pinMode(motor1pin1, OUTPUT);
  pinMode(motor1pin2, OUTPUT);
  pinMode(motor2pin1, OUTPUT);
  pinMode(motor2pin2, OUTPUT);
  pinMode(ENA, OUTPUT);
  pinMode(ENB, OUTPUT);
}

void loop() {
  // put your main code here, to run repeatedly:   
  digitalWrite(motor1pin1, HIGH);
  digitalWrite(motor1pin2, LOW);
  analogWrite (ENA, 255);
  digitalWrite(motor2pin1, HIGH);
  digitalWrite(motor2pin2, LOW);
  analogWrite (ENB, 255);
  delay(1000);

  digitalWrite(motor1pin1, LOW);
  digitalWrite(motor1pin2, HIGH);
  analogWrite (ENA, 100);
  digitalWrite(motor2pin1, LOW);
  digitalWrite(motor2pin2, HIGH);
  analogWrite (ENA, 100);
  delay(1000);
}
<

[Lengkap] Pin Out Pada Arduino Mega

11:26 AM Comment

 

Gambar berikut menunjukkan tata letak papan Arduino Mega yang khas. Tidak seperti Arduino Nano, semua komponen ditempatkan di sisi atas PCB.

 

Arduino Mega PinOut

Seperti yang Kalian perhatikan, ada konektor USB Tipe-B di tepi kiri papan yang digunakan untuk menyalakan papan serta memprogram Mikrokontroler. Ada juga jack DC 2,1 mm untuk menyediakan catu daya eksternal.

Disini akan membahas tentang pin Arduino Mega khusunya Pinout Arduino Mega.

Spesifikasi Arduino Mega

Karena Arduino Mega didasarkan pada Mikrokontroler ATmega2560, spesifikasi Arduino Mega sebagian besar terkait dengan MCU ATmega2560. Namun dibawah ini gambaran singkat tentang beberapa spesifikasi teknis penting Arduino Mega 2560.

Ada beberapa cara di mana Kalian dapat memberi daya pada papan Mega. Cara pertama dan mudah adalah menggunakan Konektor USB Type-B. Cara selanjutnya adalah dengan memberikan unregulated supply pada kisaran 6V hingga 20V hingga pin VIN Mega.

Kalian juga dapat memasukkan catu daya dari luar yang dipasangkan melalui Pin VIN.

Jenis memori yang digunakan pada arduino mega

Sebenarnya, ini khusus untuk MCU yaitu, ATmega2560, yang digunakan pada Arduino Mega Board. Ada tiga memori berbeda yang tersedia di ATmega2560. Mereka

Memori Flash 256 KB

8 KB dari SRAM

4 KB EEPROM

8 KB Memori Flash digunakan oleh kode bootloader.

Pin Input Dan Output Pad Arduino Mega

Dari 86 pin yang tersedia di papan Mega, 72 pin dikaitkan dengan input dan output. Dalam 54 pin (D0 hingga D53) adalah pin IO digital sejati, yang dapat dikonfigurasi sesuai aplikasi Anda menggunakan fungsi pinMode(), digitalWrite() dan digitalRead().

Semua pin IO Digital ini mampu mengambil 20mA arus (maksimum 40mA diperbolehkan). Fitur tambahan dari pin IO Digital adalah ketersediaan resistor pull-up internal (yang tidak terhubung secara default). Nilai resistor pull-up internal akan berada di kisaran 20KΩ hingga 50KΩ.

Ada juga 16 Pin Input Analog (A0 hingga A15). Semua pin input analog menyediakan fitur ADC resolusi 10-bit, yang dapat dibaca menggunakan fungsi analogRead().

Poin penting tentang pin Input Analog adalah pin tersebut dapat dikonfigurasi sebagai pin IO Digital, jika diperlukan.

Pin IO digital 2 – 13 dan 44 – 46 mampu menghasilkan Sinyal PWM 8-bit. Anda dapat menggunakan fungsi analogWrite() untuk ini.

Komunikasi Pada Arduino Mega

Arduino Mega mendukung tiga jenis antarmuka komunikasi yang berbeda. yaitu:

Serial

I2C atau I2C

SPI

Mungkin antarmuka komunikasi yang paling umum di alam semesta Arduino adalah Komunikasi Serial. Bahkan, papan Arduino (UNO atau Nano atau Mega) diprogram menggunakan komunikasi serial.

Arduino Mega mendukung empat antarmuka Komunikasi Serial perangkat keras. Pin IO digital 0 dan 1 digunakan sebagai pin Serial RX0 dan TX0 untuk menerima dan mengirimkan data serial. Pin ini terhubung ke pin serial dari USB on-board ke Serial Converter IC.

Demikian pula. Digital IO menyematkan 19 dan 18 sebagai RX1 dan TX1, 17 dan 16 masing-masing sebagai RX2 dan TX2 dan 15 dan 14 sebagai RX3 dan TX3.

Digital IO Pins 20 dan 21 dapat dikonfigurasi sebagai SDA (20) dan SCL (21) untuk mendukung komunikasi I2C atau I2C atau Two Wire Interface (TWI).

Antarmuka komunikasi terakhir adalah SPI. Pin IO Digital 50, 51 52 dan 53 masing-masing dapat dikonfigurasi sebagai pin SPI MISO, MOSI, SCK dan SS.

Fitur tambahan

Ada LED terpasang yang terhubung ke pin IO digital 13. Gunakan LED ini untuk melakukan operasi Blinky. Tegangan referensi untuk ADC internal secara default diatur ke 5V. Tetapi dengan menggunakan pin AREF, Anda dapat mengatur batas atas ADC secara manual.

Menggunakan pin IOREF, Anda dapat mengatur tegangan referensi untuk operasi Mikrokontroler.

Untuk mereset mikrokontroler, Anda dapat menggunakan tombol RESET on-board.

Meskipun Anda dapat memprogram Arduino Mega menggunakan kabel USB, ada ketentuan untuk memprogram MCU menggunakan antarmuka In-Circuit Serial Programming (ICSP).

Bootloader UART, yang dimuat sebelumnya ke Mikrokontroler ATmega2560, memungkinkan pemrograman melalui antarmuka serial. Tetapi ICSP tidak memerlukan bootloader apa pun. Anda dapat memprogram Arduino Mega menggunakan ISCP atau menggunakan ISCP Arduino Mega untuk memprogram Papan Arduino lainnya.

Pin IO Digital 2, 3, 18, 19, 20 dan 21 dapat dikonfigurasi masing-masing sebagai Pin Interupsi Eksternal INT0, INT1, INT5, INT4, INT3 dan INT2. Gunakan fungsi attachInterrupt() untuk mengonfigurasi Interrupt untuk tepi naik, tepi turun, atau perubahan level pada pin.

Pin Out pada Arduino Mega

 


Cara Membuat Saklar Lampu Otomatis Sederhana Tanpa Arduino

3:24 PM Comment

 

Artikel kali ini akan membahas mengenai cara membuat saklar lampu otomatis tetapi tanpa menggunakan arduino, jadi siapapun akan bisa mencobanya dengan mudah, namun jika ingin menggunakan arduino bisa kalian kunjungi pada artikel cara membuat lampu taman otomatis 

Untuk bahan yang perlu disiapkan yaitu :

  • Sensor LDR
  • Transistor BD139
  • LED
  • Resistor 100k ohm
  • Resistor 330 ohm

Setelah semua sudah disiapkan, selanjutnya proses merangkai, untuk rangkaian silahkan lihat pada gambar dibawah ini :

Cara Membuat Saklar Lampu Otomatis Sederhana Tanpa Arduino

  • Hubungkan base pada transistor bd139 ke kaki ldr
  • Hubungkan emoter transistor bd139 ke kaki ldr yang belum terhubung
  • Resistor 100k ohm hubungkan ke kaki base transistor bd139
  • Kaki positif (+) LED hubungkan ke resistor 330 ohm dan kaki resistor yang lainnya hubungkan ke kaki resistor 100k ohm yang belum terhubung, jika bingung dapat luhat pada gambar diatas
  • Kaki negatif (-) LED hubungkan ke kaki emiter pada transistor bd139
  • Untuk powernya diambil dari kaki emiter untuk tegangan negatif(-) dan untuk tegangan positif diambil adri jalur antara resistor 330ohm dan resistor 100k ohm yang telah dihubungkan menjadi satu tadi

Untuk ujicoba yaitu tutup permukaan sensor ldr dengan menggunakan tangan atau simulasinya pada keadaan gelap LED akan hidup, dan ketika permukaan sensor mendapatkan cahaya atau tidak ditutup maka LED akan mati atau disimulasikan pada siang hari atau cuaca cerah