Anda di halaman 1dari 13

BAB I PENDAHULUAN

1.1.Tujuan Percobaan Adapun tujuan dari praktikum ini adalah : 1. Memahami penggunaan mikrokontroler AVR ATMEGA 8535. 2. Membuat aplikasi dari penggnaan AVR ATEGA 8535 berupa running LED kekanan dan kekiri. 3. Memahami Pembuatan Program Running LED dengang Switch Pada Program CodeVisionAVR V2.03.4

1.2. Landasan Teori CodeVisionAVR CodeVisionAVR adalah C cross-compiler, Integrated Development Environment dan Automatic Program Generator dirancang bagi keluarga AVR Atmel dari mikrokontroler. Program ini dirancang untuk dijalankan di bawah sistem operasi Windows XP 95, 98, Me, NT 4, 2000 dan. C cross-compiler melaksanakan hampir semua elemen dari bahasa C ANSI, sebagaimana diizinkan oleh arsitektur AVR, dengan beberapa fitur tambahan untuk mengambil keuntungan dari kekhususan dari arsitektur AVR dan kebutuhan sistem tertanam. File COFF dikompilasi objek dapat C source level debug, dengan variabel menonton, menggunakan Atmel AVR Studio debugger. Integrated Development Environment (IDE) memiliki built-in Chip AVR In-System Programmer perangkat lunak yang memungkinkan pengalihan otomatisasi program ke chip mikrokontroler setelah kompilasi berhasil / perakitan. Di-System Programmer perangkat lunak ini dirancang untuk bekerja bersama dengan STK500/AVRISP/AVRProg Atmel (AVR910 aplikasi catatan), Kanda Sistem STK200 +, / 300 Dontronics DT006, Vogel Elektronik VTEC-ISP, Futurlec JRAVR dan ATCPU/Mega2000 MicroTronics programmer / pengembangan papan. Untuk debugging embedded system, yang menggunakan komunikasi serial, IDE memiliki built-in Terminal. Selain perpustakaan standar C, compiler C CodeVisionAVR telah mendedikasikan perpustakaan untuk: Alfanumerik modul LCD Philips bus I2C

National Semiconductor LM75 Sensor Suhu Philips PCF8563, PCF8583, Dallas Semiconductor DS1302 dan DS1307 Jam Real Time Dallas Semiconductor 1 Wire protokol Dallas Semiconductor DS1820/DS18S20 Sensor Suhu Dallas DS1621 Semikonduktor Thermometer / Thermostat .Dallas Semikonduktor DS2430 dan DS2433 EEPROMs SPI Power manajemen Delay .Gray kode konversi CodeVisionAVR juga berisi CodeWizardAVR Otomatis Program Generator, yang memungkinkan Anda untuk menulis, dalam hitungan menit, semua kode yang diperlukan untuk melaksanakan fungsi-fungsi berikut: Memori eksternal akses setup Chip reset identifikasi sumber Input / Output Port inisialisasi inisialisasi interupsi eksternal Timer / Counter inisialisasi Watchdog Timer inisialisasi UART (USART) inisialisasi dan komunikasi serial interrupt driven buffer Analog komparator inisialisasi inisialisasi ADC SPI Interface inisialisasi Dua Wire Interface inisialisasi Bisa Antarmuka inisialisasi I2C Bus, Suhu LM75 Sensor, DS1621 Thermometer / Thermostat dan PCF8563, PCF8583, DS1302, DS1307 Real Time Jam inisialisasi 1 Wire Bus dan DS1820/DS18S20 inisialisasi Sensor Suhu inisialisasi modul LCD. PROTEUS Banyak pengguna CAD mengabaikan menangkap skematik sebagai kejahatan yang diperlukan dalam proses pembuatan layout PCB tapi kita selalu membantah sudut pandang ini. Dengan layout PCB kini menawarkan otomatisasi dari kedua penempatan komponen dan melacak routing, mendapatkan desain ke dalam komputer sering bisa elemen paling

memakan waktu latihan. Dan jika Anda menggunakan rangkaian simulasi untuk mengembangkan ide-ide Anda, Anda akan menghabiskan lebih banyak waktu bekerja pada skema. ISIS telah diciptakan dengan pikiran ini. Hal ini telah berkembang lebih dari dua belas tahun penelitian dan pengembangan dan telah dibuktikan oleh ribuan pengguna di seluruh dunia. Kekuatan arsitekturnya telah memungkinkan kami untuk mengintegrasikan simulasi konvensional berbasis grafik pertama dan sekarang - dengan Proteus VSM - sirkuit simulasi interaktif ke lingkungan desain. Untuk pertama kalinya adalah mungkin untuk menggambar rangkaian lengkap untuk micro-controller berbasis sistem dan kemudian menguji secara interaktif, semua dari dalam bagian yang sama dari perangkat lunak. Sementara itu, ISIS tetap memiliki sejumlah fitur yang ditujukan untuk desainer PCB, sehingga desain yang sama dapat diekspor untuk produksi dengan ARES atau perangkat lunak lain PCB layout. Untuk pengguna pendidikan dan penulis rekayasa, ISIS juga unggul untuk menghasilkan skema menarik seperti yang Anda lihat dalam majalah-majalah. Ini memberikan kontrol total gambar tampilan dalam hal lebar garis, isi gaya, warna dan font. Selain itu, sistem template memungkinkan Anda untuk menentukan 'gaya rumah' dan untuk menyalin tampilan satu gambar yang lain. Mikrokontroler Mikrokontroler adalah suatu alat elektronika digital yang mempunyai masukan dan keluaran serta kendali dengan program yang bisa ditulis dan dihapus dengan cara khusus, cara kerja mikrokontroler sebenarnya membaca dan menulis data. Sekedar contoh, bayangkan diri Anda saat mulai belajar membaca dan menulis, ketika Anda sudah bisa melakukan hal itu Anda bisa membaca tulisan apapun baik buku, cerpen, artikel dan sebagainya, dan Andapun bisa pula menulis hal-hal sebaliknya. Begitu pula jika Anda sudah mahir membaca dan menulis data maka Anda dapat membuat program untuk membuat suatu sistem pengaturan otomatik menggunakan mikrokontroler sesuai keinginan Anda. Mikrokontroler merupakan komputer didalam chip yang digunakan untuk mengontrol peralatan elektronik, yang menekankan efisiensi dan efektifitas biaya. Secara harfiahnya bisa disebut pengendali kecil dimana sebuah sistem elektronik yang sebelumnya banyak memerlukan komponen-komponen pendukung seperti IC TTL dan CMOS dapat direduksi/diperkecil dan akhirnya terpusat serta dikendalikan oleh mikrokontroler ini. Dengan penggunaan mikrokontroler ini maka :

Sistem elektronik akan menjadi lebih ringkas Rancang bangun sistem elektronik akan lebih cepat karena sebagian besar dari sistem adalah perangkat lunak yang mudah dimodifikasi Pencarian gangguan lebih mudah ditelusuri karena sistemnya yang kompak

Namun demikian tidak sepenuhnya mikrokontroler bisa mereduksi komponen IC TTL dan CMOS yang seringkali masih diperlukan untuk aplikasi kecepatan tinggi atau sekedar menambah jumlah saluran masukan dan keluaran (I/O). Dengan kata lain, mikrokontroler adalah versi mini atau mikro dari sebuah komputer karena mikrokontroler sudah mengandung beberapa periferal yang langsung bisa dimanfaatkan, misalnya port paralel, port serial,

komparator, konversi digital ke analog (DAC), konversi analog ke digital dan sebagainya hanya menggunakan sistem minimum yang tidak rumit atau kompleks. Mikrokontroler Atmega8535 Mikrokontroler adalah IC yang dapat diprogram berulang kali, baik ditulis atau dihapus (Agus Bejo, 2007). Biasanya digunakan untuk pengontrolan otomatis dan manual pada perangkat elektronika.

Konfigurasi pin ATmega8535 (Data Sheet AVR) Konfigurasi pin ATmega8535 dengan kemasan 40 pin DIP (Dual Inline Package). Fungsi dari masing-masing pin Atmega8535 sebagai berikut: 1. VCC merupakan pin yang berfungsi sebagai masukan catu daya. 2. GND merupakan pin Ground. 3. Port A (PortA0PortA7) merupakan pin input/output dua arah dan pin masukan ADC. 4. Port B (PortB0PortB7) merupakan pin input/output dua arah dan pin fungsi Khusus.

Fungsi khusus Port B Pin PB7 PB6 PB5 PB4 Fungsi Khusus SCK (SPI Bus Serial Clock) MISO (SPI Bus Master Input/ Slave Output) MOSI (SPI Bus Master Output/ Slave Input) SS (SPI Slave Select Input) AIN1 (Analog Comparator Negative Input) PB3 OC0 (Timer/Counter0 Output Compare Match Output) AIN0 (Analog Comparator Positive Input) PB2 PB1 INT2 (External Interrupt 2 Input) T1 (Timer/ Counter1 External Counter Input) T0 T1 (Timer/Counter External Counter Input) PB0 XCK (USART External Clock Input/Output)

Fungsi khusus Port C Pin PC7 PC6 PC5 PC4 PC3 PC2 Fungsi khusus TOSC2 ( Timer Oscillator Pin2) TOSC1 ( Timer Oscillator Pin1) Input/Output Input/Output Input/Output Input/Output

PC1 PC0

SDA ( Two-wire Serial Buas Data Input/Output Line) SCL ( Two-wire Serial Buas Clock Line)

Fungsi khusus Port D Pin PD7 PD6 PD5 PD4 PD3 PD2 PD1 PD0 Fungsi khusus OC2 (Timer/Counter Output Compare Match Output) ICP (Timer/Counter1 Input Capture Pin) OC1A (Timer/Counter1 Output Compare A Match Output) OC1B (Timer/Counter1 Output Compare B Match Output) INT1 (External Interrupt 1 Input) INT0 (External Interrupt 0 Input) TXD (USART Output Pin) RXD (USART Input Pin)

5. RESET merupakan pin yang digunakan untuk me-reset mikrokontroler. 6. XTAL1 dan XTAL2 merupakan pin masukan clock eksternal. 7. AVCC merupakan pin masukan tegangan untuk ADC. 8. AREFF merupakan pin masukan tegangan referensi ADC. Beberapa tahun terakhir, mikrokontroler sangat banyak digunakan terutama dalam pengontrolan robot. Seiring perkembangan elektronika, mikrokontroler dibuat semakin kompak dan bahasa pemrograman juga ikut berubah. Salah satunya adalah mikrokontroler AVR ATmega8535 yang menggunakan teknologi RISC (Reduce Instruction Set Compute) dimana program berjalan lebih cepat karena hanya membutuhkan satu siklus clock untuk mengeksekusi program.

Selain itu mikrokontroler AVR ATmega8535 telah dilengkapi dengan ADC internal, EEPROM internal, Timer/Counter, I2C, dll (M.Ary Heryanto, 2008). Sehingga dengan fasilitas yang lengkap , programmer dan desainer dapat menggunakannya untuk berbagai aplikasi sistem elektronika seperti robot, otomasi industri, komunikasi, dan aplikasi lainnya.

Gambar 2.7 Mikrokontroler AVR ATmega8535 Bahasa Pemograman Codevision Pada Mikrokontroler AVR Atmega 8535 Pengembangan sebuah sistem menggunakan mikrokontroler AVR buatan Atmel

menggunakan software AVR Studio dan CodeVision AVR. AVR Studio merupakan software khusus untuk bahasa assembly yang mempunyai fungsi sangat lengkap, yaitu digunakan untuk menulis program, kompilasi, simulasi, dan download program ke IC mikrokontroler. Sedangkan Codevision AVR merupakan software C-cross compiler, dimana program dapat ditulis dalam bahasa C. Codevision memiliki IDE (Integrated Development Environment) yang lengkap, dimana penulisan program, kompiler, link, pembuatan kode mesin (assembler) dan download program ke chip mikrokontroler AVR dapat dilakukan pada Codevision, selain itu ada fasilitas terminal, yaitu untuk melakukan komunikasi serial dengan mikrokontroler yang sudah diprogram. Proses download program ke IC mikrokontroler AVR dapat menggunakan system download secara ISP (In-System Programming). In-Sistem Programmable Flash on-chip mengizinkan memori program untuk diprogram ulang dalam sistem menggunakan hubungan serial SPI (Heri Andrianto, 2008).

BAB II PERCOBAAN
3.1.Alat dan Bahan 1 buah PC/Leptop Program Proteus yang sudah diinstalkan pada PC/Leptop Program codeVision yang sudah diinstalkan pada PC/Leptop 3.2.Gambar Rangkaian

3.3. Program #include <mega8535.h> #include <delay.h> void main(void) { PORTA=0xFF; DDRA=0xFF; PORTB=0xFF; // Port A aktif high // Port A sebagai output // Internal Pull up aktif

DDRC=0x00; } while (1) {

//Port c sebagai input

if (PINB.0 == 0) { PORTA=0b11111110; delay_ms(500); PORTA=0b11111101; delay_ms(500); PORTA=0b11111011; delay_ms(500); PORTA=0b11110111; delay_ms(500); PORTA=0b11101111; delay_ms(500); PORTA=0b11011111; delay_ms(500); PORTA=0b10111111; delay_ms(500); PORTA=0b01111111; delay_ms(500); } if (PINB.1 == 0) { PORTA=0b01111111; delay_ms(500); PORTA=0b10111111; delay_ms(500); PORTA=0b11011111; delay_ms(500);

PORTA=0b11101111; delay_ms(500); PORTA=0b11110111; delay_ms(500); PORTA=0b11111011; delay_ms(500); PORTA=0b11111101; delay_ms(500); PORTA=0b11111110; delay_ms(500); }

3.4. Langkah Kerja 1. Instalkan Program Proteus pada PC. 2. Buat rangkaian pada proteus seperti rangkaian diatas. 3. Instalkan program CodeVision pada PC. 4. Pada code wizard, setting PortA sebagai output dan PortB sebagai input. 5. Buat program running LED seperti diatas. 6. Masukkan program pada Proteus lalu klik play maka program akan running ke kiri jika di tekan switch1 dan running ke kanan jika ditekan switch2.

BAB III ANALISA


Percobaan ini dengan pemograman AVR untuk menjalankan LED yang jika ditekan switch1 maka LED akan running ke kiri dan jika ditekan switch2 LED akan running kekanan. Dan apabila switch aktif keduanya maka led akan berjalan kebawah dan ke atas. Disini kita menggunakan PortA sebagai output dan PortC sebagai input. Untuk menjadikan PORTB sebagai input dan mengaktifkan internal pull up dari PORTB maka kita membuat program seperti berikut: PORTC=0xFF; DDRC=0x00; // Internal Pull up aktif //Port b sebagai input

Untuk menjadikan PORTA sebagai output, maka kita membuat program outputnya seperti berikut: PORTA=0xFF; DDRA=0xFF; // Port A aktif high // Port A sebagai output // jika pinb.1 diberikan logika nol maka led akan running dari

if (PINC.1 == 0) kiri ke kanan. {

PORTA=0b01111111; delay_ms(500); PORTA=0b10111111; delay_ms(500); PORTA=0b11011111; delay_ms(500); PORTA=0b11101111; delay_ms(500); PORTA=0b11110111; delay_ms(500); PORTA=0b11111011; delay_ms(500);

PORTA=0b11111101; delay_ms(500); PORTA=0b11111110; delay_ms(500); Jika diberikan logika nol pada PORTB.0 maka bit nol akan bergeser dari kanan ke kiri yang disimbolkan oleh led. Jika diberikan logika nol pada PORTB.1 maka bit nol akan bergeser dari kiri kekanan yang disimbolkan oleh LED. if(PINC.0==0) > Ini prosedur penekanan switch,,,jika PC.0 ditekan maka akan memberikan logika 0 pada pemrograman, dan akan mengaktifkan prosedure dari program running LED dibawah ini: PORTA=0b11111110; > konfigurasi nilai output yang akan ditampilkan pada LED delay_ms(1000); > delay sebagai selang waktu pergantian jalannya suatu pemrograman PORTA=0b11111101; delay_ms(1000); PORTA=0b11111011; delay_ms(1000); PORTA=0b11110111; delay_ms(1000); PORTA=0b11101111; delay_ms(1000); PORTA=0b11011111; delay_ms(1000); PORTA=0b10111111; delay_ms(1000); PORTA=0b01111111; delay_ms(1000);

BAB IV PENUTUP

4.1. Kesimpulan Dari analisa diatas dapat disimpulkan hal-hal sebagai berikut: 1. Mikrokontroler AVR ATMEGA 8535 mempunyai 4 buah port yang bisa digunakan sebagai input dan output. 2. Pemrograman Menggunakan CodeVisison, hal yang perlu diperhatikan: a. #include > ini merupakan program konfigurasi untuk pengenalan program yang akan dibuat b. void main(void)> Awal Program Utama ini harus diperhatikan,,karna ini merupakan kepala awal dalam pembuatan program c. PORTA=0xFF; Merupakan Settingan untuk penggunaan PORTA Jika PORTA=0x00 > ini untuk PORTA berfungsi aktif low Jika PORTA=0xFF> ini untuk PORTA berfungsi aktif high d. PINC.0==0 > merupakan program penekanan switch,,yang artinya PINC.0 ditekan maka kontrol diberikan inputan data logika nol (0) e. Delay_ms > Instruction selang waktu dalam running program 3. Mikrokontroler AVR digunakan sebagai pengontrol dalam sebuah alat dengan bahasa pemograman C. 4.2 Saran Periksa kemali program yang telah dibuat (apakah masih error, atau sudah complete) Pastikan dimana input dan output pada program dan Implementasi Hardware

Anda mungkin juga menyukai