Transistor BC547 Mikrokontroler AVR

2.5 Transistor BC547

Transistor adalah komponen elektronika multitermal, biasanya memiliki 3 terminal. Secara harfiah, kata Transistor berarti “Transfer resistor”, yaitu suatu komponen yang nilai resistansimantara terminalnya dapat diatur. Secara umum transistor terbagi dalam 3 jenis : 1. Transistor Bipolar 2. Transistor Unipolar 3. Transistor Unijunction Dalam pembuatan Robot Berkaki ini, Saya menggunakan tipe Transistor BC547 seperti Gambar 2.10. Gambar 2.10 Transistor BC547

2.6 Mikrokontroler AVR

Mikrokontroler AVR Alf dan Vegard’s Risc processor standar memiliki 8 bit, dimana semua instruksi dikemas dalam kode 16-bit, dan sebagian besar instruksi dieksekusi dalam 1 satu siklus clock. AVR berteknologi RISC Reduced Instruction Set Computing dimana set instruksinya dikurangi dari segi ukurannya dan Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. kompleksitas mode pengalamatannya, sedangkan arsitektur AVR sendiri awalnya dibuat oleh 2 orang mahasiswa di Norwegian Institute of Technology yaitu Alf-Egil Bogen dan Vegard Wollan yang selanjutnya dikembangkan oleh perusahaan Atmel di Norwegia dan AVR dapat dikelompokkan menjadi empat kelas, yaitu Altiny keluarga ATSOSxx, ATMega, dan AT86RFxx.

2.6.1 Pengenalan Mikrokontroller AVR ATmega16

AVR ATMega16 merupakan seri mikrokontroler CMOS 8-bit buatan Atmel, berbasis arsitektur RISC Reduced Instruction Set Computer. Hampir semua instruksi dieksekusi dalam satu siklus clock. AVR mempunyai 32 register general- purpose, timercounter fleksibel dengan mode compare, interrupt internal dan eksternal, serial UART, programmable Watchdog Timer, dan mode power saving, ADC dan PWM internal. AVR ATMega16 juga mempunyai In-System Programmable Flash on-chip yang mengijinkan memori program untuk diprogram ulang dalam sistem menggunakan hubungan serial SPI ATMega16. ATMega16 mempunyai throughput mendekati 1 MIPS per MHz membuat disainer sistem untuk mengoptimasi konsumsi daya versus kecepatan proses. Berikut design Mikrokontroller AVR ATmega16 pada Gambar 2.11. Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. Gambar 2.11 Mikrokontroler AVR ATmega16 Pengembangan sebuah sistem menggunakan mikrokontroller AVR buatan ATMEL menggunakan software CodeVisonAVR. CodeVision AVR merupakan software C-cross compiler, dimana program dapat ditulis dalam bahasa C. AVR Studio 4 memiliki IDE Integrated Development Environment yang lengkap, dimana menulis program, compile, link, pembuatan kode bahasa C dan download program ke chip AVR dapat dilakukan pada codevision, selain itu ada fasilitas terminal yaitu untuk melakukan komunikasi serial dengan mikrokontroller yang sudah di program [7]. Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

2.6.2 Konfigurasi PIN Mikrokontroler AVR ATMega16

Konfigurasi pin ATmega16 dengan kemasan 40 pin DIP Dual Inline Package . AVR memiliki keunggulan dibandingkan dengan mikrokontroller lain, keunggulan mikrokontroller AVR yaitu : AVR memiliki kecepatan eksekusi program yang lebih cepat karena sebagian besar instruksi dieksekusi dalam 1 siklus clock, lebih cepat dibandingkan dengan mikrokontroller jenis lain. Berikut design konfigurasi dari serial mikrokontroller AVR ATMega16 pada Gambar 2.12. Gambar 2.12 Konfigurasi Kaki Mikrokontroller AVR ATMega16 Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

2.6.3 Penjelasan Fungsi PIN Mikrokontroller AVR ATMega16

Fungsi PIN Mikrokontroller AVR ATMega16 tipe PDIP : a. Vcc : Merupakan pin yang berfungsi sebagai catu daya. b. GND : Merupakan pin Ground penghantar arus listrik. c. Port A PA0..PA7 : Merupakan pin input output dua arah dan pin masukan ADC. d. Port B PB0..PB7 : Merupakan pin input output dua arah dan pin fungsi khusus, seperti dapat dilihat pada table di bawah ini. Tabel 2.2 Fungsi Khusus Port B Pin Fungsi Khusus PB7 SCK SPI Bus Serial Clock PB6 MISO SPI Bus Master InputSlave Output PB5 MOSI SPI Bus Master InputSlave Output PB4 SS SPI Slave Input PB3 AIN1 Analog Comparator Negative Input OC0 TimerCounter0 Output Compare Match Output PB2 AIN0 Analog Comparator Positive Input INT2 External Interrupt 2 Input Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. PB1 T1 TimerCounter0 External Counter Input PB0 T0 T1 TimerCounter0 External Counter Input XCK USART External Clock InputOutput e. Port C PC0..PC7 : Merupakan pin inputoutput dua arah dan pin fungsi khusus, seperti dapat dilihat pada tabel dibawah ini. Tabel 2.3 Fungsi Khusus Port C Pin Fungsi Khusus PC7 TOSC2 Timer Oscillator Pin2 PC6 TOSC1 Timer Oscillator Pin1 PC5 TDI JTAG Test Data In PC4 TDO JTAG Test Data Out PC3 TMS JTAG Test Mode Select PC2 TCK JTAG Test Clock PC1 SDA Two-wire Serial Bus Data InputOutput Line PC0 SCL Two-wire Serial Bus Clock Line Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. f. Port D PD0..PD7 : Merupakan pin inputoutput dua arah dan pin khusus, seperti dapat dilihat pada tabel dibawah ini. Tabel 2.4 Fungsi Khusus Port D Pin Fungsi Khusus PD7 OC2 TimerCounter2 Output Compare Match Output PD6 ICP TimerCounter1 Input Capture Pin PD5 OC1A TimerCounter1 Output Compare A Match Output PD4 OC1B TimerCounter1 Output Compare B Match Output PD3 INT1 External Interrupt 1 Input PD2 INT0 External Interrupt 0 Input PD1 TXD USART Output Pin PD0 RXD USART Input Pin g. RESET : Merupakan pin yang digunakan untuk me-reset mikrokontroler. h. XTAL1 XTAL2 : Merupakan pin masukkan clok eksternal. i. AVCC : Merupakan pin masukan tegangan untuk ADC 1. AREF : Merupakan pin masukan tegangan referensi ADC Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. Dari penerangan tiap fungsi PIN yang ada pada Mikrokontroler AVR ATMega16 menjelaskan adanya Bagan Rancangan Blok Diagram. Design bagan rancangan blok diagram dapat dilihat pada Gambar 2.13. Gambar 2.13 Blok Diagram AVR ATMega16 Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

2.6.4 Memori Program ATMega16

Arsitektur ATMega16 mempunyai dua memori utama, yaitu memori data dan memori program. Selain itu, ATMega16 memiliki memori EEPROM untuk menyimpan data. ATMega16 memiliki 16K byte On-chip In-System Reprogrammable Flash Memory untuk menyimpan program. Instruksi ATMega16 semuanya memiliki format 16 atau 32 bit, maka memori flash diatur dalam 8K x 16 bit. Memori flash dibagi kedalam dua bagian, yaitu bagian program boot dan aplikasi. Bootloader adalah program kecil yang bekerja pada saat sistem dimulai yang dapat memasukkan seluruh program aplikasi ke dalam memori prosesor. [3]. Design Arsitektur Mikrokontroller AVR ATMega16 dapat dilihat pada Gambar 2.14. Gambar 2.14 Arsitektur Mikrokontroler AVR ATMega16 Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.

2.7 Konsep Pemprograman Bahasa C