Semua Akan Digital Pada Akhirnya... Dari Audio, Video, TV, Kontrol, Keuangan, Kesehatan dan Sebagainya. Blog Ini Ditujukan Buat Kamu Yang Ingin Belajar Dasar Digital Dan Yang selalu Bertanya, Kenapa Bisa Begini Dan Harus Begitu ?

Selasa, 17 Agustus 2021

USB ASP vs Arduino Sketch - Mampu nggak ya ? Kita gunakan packages ATTinyCore

Saat arduino muncul dengan library opensource nya yg beragam dan kemudahan kodingnya, inilah menjadi awal keengganan orang elektro menggunakan IC microcontroller dasar. Padahal fungsi yang sama dengan arduino dapat diraih dengan penggunaan resource ( memori flash dan RAM ) yang lebih irit. Namun ketika IC cloning Atmel 328 muncul dari produsen negara api, semua kemudahan itu menjadi pilihan para mahasiswa yg belajar mikrokontroller.



Lalu bagaimana dengan nasib pencinta IC AVR dasar yang menginginkan kemudahan koding pada sketch arduino? Ternyata diluar sana ada github yg khusus menyediakan platform penerjemah sketch ke avr sekelas attiny yaitu : https://github.com/SpenceKonde/ATTinyCore . Gambar diatas merupakan penerjemahan port I/O yg biasa dikenal di arduino menjadi port pada attiny 2313. Lalu langkah instalasi packagenya bagaimana ?


1. Ubah board manager tambahan dengan pilihan preferences seperti pada gambar 



Pada Additional board tambahkan : http://drazzy.com/package_drazzy.com_index.json 


2.  Pilih Boards manager  




3. Install boards bernama ATTinyCore



4. Pastikan sketch Arduino kamu sudah paling terbaru, sehingga menu boards attiny core muncul seperti gambar 



Ic avr yg kita gunakan adalah ATTiny 2313 A , jadi pilih pada menu yang benar.



5. Hubungkan USB ASP dan pilih jenis programmer yang digunakan 




6. Kita coba scriptnya, dengan Led pada #B0 atau I/O # 9 dan Tombol pull up pada port #B1 atau  I/0 # 10 .



int ledPin = 9; // pin untuk LED
int inPin = 10;   // input pin (tombol)
int val = 0;     // var pin status



void setup() {
  pinMode(ledPin, OUTPUT);  // LED sebagai output
  pinMode(inPin, INPUT);    // tombolsebagai input
  digitalWrite(ledPin, LOW);
}

void loop()
{

val = digitalRead(inPin);  // read input value

  if (val == HIGH) {         // cek tombol
    digitalWrite(ledPin, LOW);  // LED OFF
  } 
  else {
    digitalWrite(ledPin, HIGH);  //  LED ON
  }
}

7. Compile pada arduino scketch dan bisa di unduh menuju attiny melalui usbasp, baik menggunakan sketch langsung atau menggunakan avrdude.



Walau muncul warning seperti diatas, jangan khawatir karena ini merupakan missmatch firmware  saat perintah merubah clock USBasp. Warning ini muncul juga kok di penjelasan sebelumnya  : https://www.aisi555.com/2021/08/usb-asp-avrdude-cara-flash-ic.html


Untuk script lainnya kita bisa gunakan mode tombol toogle terhadap LED.



int ledPin = 9; // pin untuk LED
int inPin = 10;   // input pin (tombol)
int val = 0;     // var pin status
bool nyala = false; // status toogle


void setup() {
  pinMode(ledPin, OUTPUT);  // LED sebagai output
  pinMode(inPin, INPUT);    // tombolsebagai input
  digitalWrite(ledPin, LOW);
}

void loop()
{

val = digitalRead(inPin);  // read input value

 if (val == LOW && nyala == false) {     //toogle
    digitalWrite(ledPin, HIGH);  // LED ON
    nyala=true;
    delay(50);
  } 
  else if (val == LOW && nyala == true){
    digitalWrite(ledPin, LOW);  //  LED OFF
    nyala=false;
    delay(50);
  }
}

Perlu diingat bahwa sketch arduino sangat bergantung pada library yang sangat memakan memory, sedangkan attiny merupakan ic yg minimalis. Jadi penggunaan library sangat dihindari agar mengatasi error akibat memori habis, terutama RAM.

Pada penjelasan selanjutnya akan kita coba membaca DHT11 tanpa library pada attiny 2313.


Share:

0 komentar:

Posting Komentar

Kontak Penulis



12179018.png (60×60)
+628155737755

HP: 081331339072
Mail : ahocool@gmail.com

Site View

Categories

555 (8) 7 segmen (3) adc (4) amplifier (2) analog (15) android (12) antares (3) arduino (21) artikel (11) attiny (3) attiny2313 (19) blog (1) bluetooth (1) cmos (2) crypto (2) dasar (45) digital (1) display (3) esp8266 (25) euro2020 (13) gcc (1) iklan (1) infrared (2) Input Output (3) iot (44) jam (7) jualan (12) kereta api (1) keyboard (1) keypad (3) kios pulsa (2) kit (6) komponen (16) komputer (3) komunikasi (1) kontrol (7) lain-lain (8) lcd (2) led (14) led matrix (6) line tracer (1) lm35 (1) memory (1) metal detector (4) microcontroller (70) micropython (6) mikrokontroller (12) mikrotik (5) mqtt (1) ninmedia (3) ntp (1) paket belajar (19) palang pintu otomatis (1) parabola (78) pcb (2) power (1) praktek (2) project (33) proyek (1) python (3) radio (15) raspberry pi (4) remote (1) revisi (1) rfid (1) robot (1) rpm (2) rs232 (1) script break down (3) sdcard (3) sensor (1) sharing (3) signage (1) sinyal (1) sms (6) software (18) solar (1) solusi (1) tachometer (2) technology (1) teknologi (2) telegram (2) telepon (9) televisi (145) television (28) transistor (2) troubleshoot (3) tulisan (83) tutorial (80) tvri (2) vu meter (2) vumeter (2) wav player (3) wayang (1) wifi (3)

Arsip Blog

Diskusi


kaskus
Forum Hobby Elektronika