Semua Tentang Belajar Teknologi Digital Dalam Kehidupan Sehari - Hari

  • IC Timer 555 yang Multifungsi

    IC timer 555 adalah sirkuit terpadu (chip) yang digunakan dalam berbagai pembangkit timer, pulsa dan aplikasi osilator. Komponen ini digunakan secara luas, berkat kemudahan dalam penggunaan, harga rendah dan stabilitas yang baik

  • Ayo Migrasi TV Digital

    Kami bantu anda untuk memahami lebih jelas mengenai migrasi tv digital, apa sebabnya dan bagaimana efek terhadap kehidupan. Jasa teknisi juga tersedia dan siap membantu instalasi - setting perangkat - pengaturan antena dan distribusi televisi digital ke kamar kos / hotel

  • Bermain DOT Matrix - LOVEHURT

    Project Sederhana dengan Dot Matrix dan Attiny2313. Bisa menjadi hadiah buat teman atau pacarmu yang ulang tahun dengan tulisan dan animasi yang dapat dibuat sendiri.

  • JAM DIGITAL 6 DIGIT TANPA MICRO FULL CMOS

    Jika anda pencinta IC TTL datau CMOS maka project jam digital ini akan menunjukkan bahwa tidak ada salahnya balik kembali ke dasar elektronika digital , sebab semuanya BISA dibuat dengan teknologi jadul

  • Node Red - Kontrol Industri 4.0

    Teknologi kontrol sudah melampaui ekspektasi semua orang dan dengan kemajuan dunia elektronika, kini semakin leluasa berkreasi melalui Node Red

Senin, 04 Maret 2013

Timer dan Counter Pada Microcontroller AVR


- COUNTER/TIMER , apaan sih ? 

Adalah fasilitas di microcontroller untuk melakukan counter/perhitungan tanpa perlu menambahkan code di looping main program ( auto), sehingga nilai dari counter ( BIASANYA register TCNT) dapat di olah/manfaatkan sewaktu2


- JENIS COUNTER APA AJA ?

Secara umum Counter /Timer terdiri dari:

- Timer Biasa (8 bit & 16 bit)
- Clear Timer on Compare (CTC)
- Overflow Timer
- Output Compare 
- PWM timer ( bahasan tersendiri)

Kita bahas yang paling sering digunakan timer biasa dan timer CTC.


- Counter 8 bit & 16 Bit

Jadi ingat, 8 bit itu maximum nilai yg didapat 0 - 255, sedangkan 16 bit = 0 - 65535 , jadi berbeda di range nilai Counternya.

Semisal kita pakai IC attiny2313 dengan clock default 1MHZ, jadi jika kita dapat ambil matematika sederhana :


resolusi = 1/input clock = 1/1Mhz = 1 micro second


Jika kita inisialisasi counter dengan Full Speed , clock = input frek oscillator (1 Mhz),  dan digunakan 16 bit / counter 1 TCCR1B|=(1<<CS10), maka jika kita ingin menghidupkan suatu led di PortD dalam selang 1 detik,  kita tunggu nilai Counter(TCNT1) = 1000000;

wah....kelebihan ! Ingat..nilai TCNT1 max= 65535, jadi kita perlu membagi counter dengan variabel yg lain, semisal kita pake variable a; Jadi ketika TCTN1 = 10000; Lalu reset TCTN1=0 ; a++; (ditambah), berulang seterusnya sampe nilai a= 100; maka LED di PORTD dihidupkan/toogle. Berikut scriptnya :

Code:
#include <avr/io.h> 

int main (void) 
{ 
   DDRD |= (1 << PD0); // Set LED di portD0 

   TCCR1B |= (1 << CS10); // Set up counter dengan full speed 

int a;  variable

a=0;  //nilai awal dari variable
  
 while (1) 
   { 

   if(TCNT1 == 10000) 
      { a++;
         TCNT1=0;
      }

   if(a == 100)
     { 
     PORTD ^= (1 << PD0); // Toggle the LED 
     a=0;
     }

   } 
}


- PRESCALER 

Jika di pembahasan sebelumnya, kita menggunakan variabel sebagai pembagi counter yg berlebih, AVR memberikan suatu solusi dengan melakukan pembagian clock menjadi faktor 1/8, 1/64, 1/256, dan 1/1024

Dengan Prescaler ada pembagian resolusi  ( timer penambahan counter) yang  akan menjadi berkurang :

1(full speed) = 1 micro second
1/8 = 8 micro second
1/64 = 64 us
1/256= 256 us
1/1024=1024us

Nah...kita sekarang bisa membagi clock sesuai keinginan, dan menyederhanakan perhitungan

Semisal kita ingin mendelay LED 1 detik, dengan clock 1Mhz  maka kita coba dengan  prescale 1/8,  untuk mencari 1 detik nilai TCNT1 = 125000, masih lewat, prescale 1/64 maka nilai TCNT1 = 15625 ...nahh nilainya ga lewat dari batas 16 bit (65535) ....ketemu dehh....jadi kita sederhanakan script sebelumnya menjadi :

Code:
#define F_CPU 1000000UL //clock dari avr
#include <avr/io.h> 




int main (void) 

{ 

   DDRD |= (1 << PD0); // Set LED di portD0 
   TCCR1B |= (1 << CS11); // Set up counter dengan prescale 64
   //Baca datasheet untuk mencari konfigurasi prescaler yg laen



 while (1) 

   { 



   if(TCNT1 == 15624) 
 // nilai max 1 detik, perhitungan mulai 0 maka nilai dikurangi 1 dari 15625

   {
      PORTD ^= (1 << PD0); // Toggle the LED 
     TCNT1=0;
    }



   } 

}


- CLEAR TIME ON COMPARE + INTERUPT

selanjutnya AVR memberikan failitas CTC, yaitu kita menentukan nilai maximum dari TCNT1 dan secara otomatis akan mengclear nilai TCNT1. Nilai max dari TCNT1 diberikan melalui register OCR1A

setiap kali TCNT1 = OCR1A akan terjadi trigger interupt CTC, sehingga dapat dimanfaatkan untuk mentriger suatu output. codenya akan menjadi seperti ini


Code:
#define F_CPU 1000000UL //clock dari avr
#include <avr/io.h> 
#include <avr/interrupt.h>

ISR(TIMER1_COMPA_vect) //vector interupt compare

{ 

     PORTD ^= (1 << PD0); // Toggle the LED 

}

int main (void) 

{ 

   DDRD |= (1 << PD0); // Set LED di portD0 
   
   TCCR1B |= (1 << CS11); // Set up counter dengan prescale 64
   //Baca datasheet untuk mencari konfigurasi prescaler yg laen
   TCCR1B |= (1 << WGM12); // Configure timer 1 for CTC mode       
   TIMSK |= (1 << OCIE1A); // Enable CTC interrupt
   OCR1A = 15624; // nilai atas dari TCNT1, untuk perhitungan 1 detik

sei();   //hidupkan interupt


 while (1) 

   { 

    }

}


...mudah bukan ? atau makin pusing ?

Untuk counter dengan nilai frekuensi clock / XTAL lainnya dapat menggunakan rumus matematika sederhana untuk menetukan OCR1A 


OCR1A = [(Frekuensi AVR / Prescale) / frekuensi yg diinginkan ] - 1

atau

OCR1A = [(Frekuensi AVR / Prescale) * Periode yg di inginkan ] - 1


*) catatan : nilai prescale = 1,8,64,256,1024  bukan 1/prescale , untuk mempermudah saja


SELAMAT MENCOBA
Share:

Jumat, 22 Februari 2013

Wayang Android Kreasi Aisi555 "SANGUT DROID"



Seminggu ini dihabiskan untuk mendalami pengetahuan di bidang applikasi adobe air di Android. Tergugah oleh sebuah game anak-anak buatan amrik di google play akhirnya penulis teringat akan masa kecilnya di Bali dimana pernah membuat mainan wayang menggunakan kardus bekas. Setelah dicek di google play dan internet belum ada aplikasi wayang yang dipakai pada hape Android.  Ingat bahwa Wayang merupakan produk kebudayaan di Nusantara yang harus dilestarikan, sehingga perlu dibawa ke media yang lebih modern seperti aplikasi ini

Pada mulanya dibuatlah karakter "sangut" yang dapat digerakkan tangan dan mulutnya. Tokoh Sangut merupakan tokoh punakawan yang jenaka dari cerita pewayangan Mahabarata versi Bali. Tingkahnya yang kocak mungkin dapat menarik anak-anak untuk memainkannya. Jangan lupa menambahkan ceirta-cerita lucu dibalik gerak tangan dan mulutnya.


APK untuk applikasi "Sangut Droid" dapat diunduh disini


Selanjutnya kreatifitas tidak berhenti disini. Teringat bahwa pasangan si sangut di setiap tampilan kocaknya adalah tokoh punakawan tambun "DELEM". Mereka sering berolok-olok melakonkan komedi yang kocak yang tidak jarang menimbulkan gelak tawa penonton wayang. Lalu penulis lanjutkan ide ini menuju layar timeline dan actionscript dari software adobe flash CS 5.5 yang kemudian di compile menjadi aplikasi adobe-air yang dapat dimainkan di HP android. Hasilnya menjadi seperti dibawah ini, dimana pemain dapat menggerakkan secara bebas kedua tokoh ini.



Tujuan dari dibuatnya applikasi ini adalah mengingatkan kembali pada kebudayaan asli Indonesia khususnya Bali yang mungkin sudah mulai tergeser oleh tokoh kartun dari jepang atau amerika. Mungkin aplikasi ini tidak sebagus game dan atau animasi kelas dunia, tapi seperti halnya dunia Pewayangan dimana terdapat "Dalang" yang memainkannya maka dengan kreatifitas dalang yang tidak terbatas, maka pesan-pesan moril dapat disampaikan ke anak-anak melalui percakapan antara dua orang punakawan jenaka ini.


Aplikasi untuk Android versi 2.2 keatas dapat diunduh disini


Jangan lupa untuk menginstall Adobe Air pada HandHeld Android anda sebelum dapat menikmati aplikasi wayang android ini.



Kreasi berlanjut, dan pada maret 2013 berhasil mengkreasikan wayang android versi jowo dengan touch sensor

APK dapat diunduh disini



SELAMAT MENCOBA





Share:

Senin, 18 Februari 2013

Applikasi Android "Waterpas Pak Tukang" karya Aisi555



" Kini Pak Tukang Kayu pun bisa membangun rumah dengan HI-TECH "


Diawali dengan melihat sebuah video youtube yang mendemonstrasikan cara merancang aplikasi Android berbasis Adobe-flash dan Adobe-Air , meluncurlah diriku ke sebuah pusat Handphone di surabaya dan hunting handphone android. Tentunya karena akan dioprek-oprek akhirnya berpikiran untuk membeli HP android murah made in china dan karena ada booming X-Factor di RCTI dengan sponsor HP CROSS, maka tujuan mengerucut ke deretan ponsel android merek CROSS yang sedang promo. 

Pilihan yang murah meriah tertuju ke model Cross Andromeda A10 yang berprocessor 1GHz...akan tetapi memiliki ROM dan RAM yang bujugbuneng super irit. Sedikit kecewa karena applikasi cepet hang dan tiba-tiba keluar ke layar utama. Dan tak berselang lama Hp ini pun aku root dan kemudian beberapa aplikasi yang tidak perlu di "WIPE OUT" saja.

Tak sabar ingin mencoba mengoprek aplikasi berbasis flash, dimana diriku selama ini cukup banyak berkecimpung dengan aplikasi flash dan akhirnya berhasil membuat applikasi "hello world" pertamaku diiringi doa semoga 2013 menjadi tahun pengembangan aplikasi berbasis android.

applikasi hello world Android pertama


Kegatalan tangan ini memuncak ketika hari sabtu dan minggu yang cukup senggang berujung pada kreasi membaca sensor GPS pada Hp cross A-10, dan response time nya pun tidak mengecewakan

applikasi android GPS pada cross A10


Nah ... berlanjut ke sensor selanjutnya yang ada pada hampir semua HP android yaitu acelerometer yang merupakan sensor gerak. Hasilnya seperti gambar berikut yang cukup menarik untuk bermain game.



applikasi menggunakan acelerometer


Uhuii...jalan terbuka lebar dan ide dari teman sekantor menuju ke sebuah alat yang umum dipakai bapak tukang yaitu "WATERPAS" atau alat pengukur kemiringan, biasanya digunakan dalam menentukan tingkat ke-rataan suatu bangunan / benda. Hasilnya maknyus seperti video dibawah ini :





Mau ?  download APK nya di  http://www.4shared.com/android/t24MJHMM/waterpas.html  dan jangan lupa untuk menginstall adobe air pada HP android kamu (otomatis akan di download dan di install).

SELAMAT MENCOBA
Share:

Penurun dan Penstabil Tegangan DC Dengan Linear Regulator 78XX





Ketika diperlukan tegangan yang berbeda dari suatu sumber tegangan DC, maka yang terpikir adalah dengan menggunakan hukum pembagian tegangan menggunakan Resistor seperti gambar dibawah ini .






Berdasarkan rumus , Vout sangat dipengaruhi oleh resistansi/impedansi dari beban yang dipasang. Kemudian munculah solusi dengan menggunakan dioda "terbalik" yang memanfaatkan tegangan breakdown dari dioda yang lazim disebut "ZENER". Umumnya zener dipasang seperti gambar berikut :

220px-Zener_diode_voltage_regulator.svg.png (220×180)
Series_reg.gif (142×96)


Kestabilan dari regulator menggunakan zener ditentukan oleh besar arus yang di alirkan ke beban. Selanjutnya para produsen komponen elektronika merancang komponen regulator tegangan linear dengan memanfaatkan sifat-sifat dari zener. Ada dua jenis linear regulator yaitu Fixed dan Variabel, untuk Fixed regulator umumnya berkode 78xx ( positif regulator) dan 79xx (negatif regulator) sedangkan untuk Variabel regulator contoh yang paling banyak digunakan adalah LM317.



contoh rangkaian regulator +12v  dan -12v


Untuk LM317 lebih flexibel dengan mengatur nilai resistor pada pembagian tegangan di kaki nomer 1





contoh rangkaian regulator variabel menggunakan LM317



IC 78xx maupun LM317 umumnya memiliki rating arus beban maksimum berkisar 1 Ampere, sehingga untuk melayani arus yang lebih dari 1 Ampere diperlukan rangkaian driver arus seperti berikut ini :





penggunaan TIP2955 / 2SC2955 (Transistor jengkol) untuk menaikkan rating arus Max 5 Ampere


Bagaimana dengan arus yang lebih tinggi? ya mudah saja dengan melakukan cascade dari transistor daya seperti rangkaian berikut :



Perlu diperhatikan bahwa regulator penurun tegangan linear mempergunakan prinsip penghambatan energi melalui zener internal, sehingga tegangan dari input harus lebih tinggi sekitar 2 volt dari output yang diinginkan. Jika tegangan input terlalu tinggi, maka kelebihan energinya akan dibuang menjadi panas, sehingga pemakaian heatsink / aluminium kisi2 udara mutlak diperlukan.



SELAMAT MENCOBA
Share:

Kontak Penulis



12179018.png (60×60)
+628155737755

Mail : ahocool@gmail.com

Site View

Categories

555 (8) 7 segmen (3) adc (4) amplifier (2) analog (19) android (12) antares (11) arduino (27) artikel (11) attiny (3) attiny2313 (19) audio (5) baterai (5) blog (1) bluetooth (1) chatgpt (2) cmos (2) crypto (2) dasar (46) digital (11) dimmer (5) display (3) esp8266 (26) euro2020 (13) gcc (1) gsm (1) iklan (1) infrared (2) Input Output (3) iot (74) jam (7) jualan (12) kereta api (1) keyboard (1) keypad (3) kios pulsa (2) kit (6) komponen (17) komputer (3) komunikasi (1) kontrol (8) lain-lain (8) lcd (2) led (14) led matrix (6) line tracer (1) lm35 (1) lora (11) lorawan (2) MATV (1) memory (1) metal detector (4) microcontroller (70) micropython (6) mikrokontroler (1) mikrokontroller (14) mikrotik (5) modbus (9) mqtt (3) ninmedia (5) ntp (1) paket belajar (19) palang pintu otomatis (1) parabola (88) pcb (2) power (1) praktek (2) project (33) proyek (1) python (8) radio (28) raspberry pi (9) remote (1) revisi (1) rfid (1) robot (1) rpm (2) rs232 (1) script break down (3) sdcard (3) sensor (2) 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 (167) television (28) telkomiot (5) transistor (2) troubleshoot (3) tulisan (93) tutorial (108) tv digital (6) tvri (2) vu meter (2) vumeter (2) wav player (3) wayang (1) wifi (3) yolo (7)

Arsip Blog

Diskusi


kaskus
Forum Hobby Elektronika