PART 7 Void & Define Dosen : Dwisnanto Putro, S.T, M.Eng
LED (LIGHT EMITING DIODE) Untuk LED ANODA : Logika 0 = led menyala Logika 1 = led mati Untuk LED KATODA : Logika 0 = led mati Logika 1 = led menyala
DELAY Delay = tunda Penundaan terhadap kinerja mikrokontroler
DELAY Menghasilkan delay dalam program-c berada pada header delay.h yang harus dimasukan (include) sebelum digunakan. Sebelum memanggil fungsi, interupsi harus dimatikan terlebih dahulu, apabila tidak maka delay akan lebih lama dari yang diharapkan. Juga sangat penting untuk menyebutkan frekuensi clock chip IC AVR yang digunakan pada menu Project configure - C compiler - Code Generation.
DELAY Header delay #include <delay.h> Perintah delay delay_ms(------); Waktu tunda dalam milidetik: Misalkan: delay_ms(1000); berarti ditunda selama 1 detik
DELAY Dengan system delay, menciptakan system sinyal pulsa
#include Biasanya digunakan untuk menyertakan file header (.h) atau file library. File include berguna memberitahukan compiler agar membaca file yang akan di include-kan lebih dahulu agar mengenali definisi-definisi yang digunakan dalam program sehingga tidak dianggap error.
#include Cara penulisan: # include < > untuk lokasi standar file yang telah disetting oleh tools biasanya pada folder include atau folder direktori compiler. # include.. untuk lokasi file yang kita tentukan sendiri.
#define Digunakan untuk mendefinisikan konstanta atau makro Cara penulisan: #define identifier konstanta Contoh: #define MAX 100 (Setiap kemunculan max diganti dengan angka 100.)
#void Fungsi ini tidak memberikan hsil yang serupa nilai melainkan berupa sebuah proses. Fungsi ini bertipe void. Contoh: void kedip() { PORTD=0 delay_ms(500); PORTD=255; delay_ms(500); } //delay 500ms
New Project Run CodeVision
Chip select
configuration chip select Chip ATMEGA 8535 Clock 11.059200 Mhz
Untuk port gunakan PORTC untuk LED PORTC.0 PORTC.7 = output (0)
Save and Generate
Save File make folder and files
Display
Configuration ready compile
CODE PROGRAM #inlude<mega8535.h> #include<delay.h> #define LED1 0b11111110 #define LED2 0b11111101 #define LED3 0b11111011 Void jalan() { PORTC=LED1; delay_ms(1000); PORTC=LED2; delay_ms(1000); PORTC=LED3; delay_ms(1000); } Void(main){ PORTC=0xFF; DDRC=0xFF; while(1){ Jalan(); } }
SETTING USB DOWNLOADER : INSTALL DEVICE USB DOWNLOADER CONNECT USB DOWNLOADER TO PC/LAPTOP SETTING COM PORT: COMPUTER -> MANAGE -> DEVICE MANAGER PORT (COM &LPT) -> PROLIFIC USB TO SERIAL COMM PORT (COM...)
Configuration PORT Programmer
Choice : AVR Chip programmer type COM PORT BAUD RATE
COMPILER AND BUILD ALL PROGRAM Or Shift F9
Connecting USB Downloader PC/Laptop - Microcontroller, And...
Process Downloading...
FINISH
Error DOWNLOADING Solution : Check COM PORT Check Baud Rate Check Connection Downloader Check Prog/Serial TTL select
CV AVR WITH PROTEUS OPEN PROGRAM ISIS PROTEUS PROFESSIONAL
synchronization cv avr with proteus Creat Project and Design Double click pict microcntroller
synchronization cv avr with proteus Select clock frequency Select program file, (HEX file type)
synchronization cv avr with proteus Running ISIS Proteus FINISH... Created by. Dwisnanto Putro, Manado, September 2012
Task Buatlah #define untuk menyalakan led pada PIN0 sampai dengan PIN7
TASK BUATLAH project dengan system led berjalan pada PORTC.7, PORTC.6 dan PORTC.5 dengan masing-masing delay 250 ms (dengan menggunakan define dan Void)
TASK BUATLAH project dengan system led berjalan pada PORTC.1 s/d PORTC.6. masing-masing delay 100 ms. Misalkan: Step 1: hanya PORTC.1 mati Step 2: hanya PORTC.2 mati Step 3: hanya PORTC.3 mati Step 4: hanya PORTC.4 mati Step 5: hanya PORTC.5 mati Step 6: hanya PORTC.6 mati (PORTC Yang lain menyala) (dengan menggunakan define dan Void)
TASK BUATLAH project dengan system led berjalan pada PORTC.0 s/d PORTC.7. masing-masing delay 100 ms. (Secara berurutan menyala dari PORTC.7 s/d PORTC.0) (dengan menggunakan define dan Void)
TASK BUATLAH project dengan system led berjalan pada PORTC.0 s/d PORTC.7. masing-masing delay 100 ms. Misalkan: Step 1: PORTC.0 dan PORTC.7 ON Step 2: PORTC.1 dan PORTC.6 ON Step 3: PORTC.2 dan PORTC.5 ON Step 4: PORTC.3 dan PORTC.4 ON (dengan menggunakan define dan Void)
TASK BUATLAH project dengan system led berjalan pada PORTC.0 s/d PORTC.7. masing-masing delay 100 ms. Misalkan: Step 1: PORTC.0 dan PORTC.7 ON Step 2: PORTC.1 dan PORTC.6 ON Step 3: PORTC.2 dan PORTC.5 ON Step 4: PORTC.3 dan PORTC.4 ON Step 5: PORTC.2 dan PORTC.5 ON Step 6: PORTC.1 dan PORTC.6 ON Step 7: PORTC.0 dan PORTC.7 ON (dengan menggunakan define dan Void)
TASK BUATLAH project dengan system: JIKA PUSH BUTTON PADA PORTD.2 DITEKAN MAKA LED pada PORTC.2 MENYALA JIKA TIDAK DITEKAN PUSHBUTTON PADA PORTD.2 MAKA LED PADA PORTC.2 MATI (dengan menggunakan define dan Void)
TASK BUATLAH project dengan system: JIKA PUSH BUTTON PADA PORTD.2 DITEKAN MAKA LED pada PORTC.2 MENYALA JIKA PUSH BUTTON PADA PORTD.3 DITEKAN MAKA LED pada PORTC.3 MENYALA JIKA TIDAK DITEKAN PUSHBUTTON PADA PORTD.2 dan PORTD.3 MAKA LED PADA PORTC.2 DAN PORTC.3 MATI (dengan menggunakan define dan Void)
TASK BUATLAH project dengan system: JIKA PUSH BUTTON PADA PORTD.2 DITEKAN MAKA terjadi proses LED berjalan pada PORTC.0 s/d PORTC.7 JIKA PUSH BUTTON PADA PORTD.3 DITEKAN MAKA terjadi proses LED berjalan pada PORTC.7 s/d PORTC.0 (dengan menggunakan define dan Void)