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
Published By Stefanikha69
•DELAY • Delay
= tunda
• Penundaan
terhadap kinerja mikrokontroler
Published By Stefanikha69
•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. •
Published By Stefanikha69
•DELAY •
Header delay #include <delay.h>
•
Perintah delay
delay_ms(------); Waktu tunda dalam milidetik: Misalkan: delay_ms(1000); berarti ditunda selama 1 detik
Published By Stefanikha69
•DELAY •
Dengan system delay, menciptakan system sinyal pulsa
Published By Stefanikha69
#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.
Published By Stefanikha69
#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.
Published By Stefanikha69
#define •
Digunakan untuk mendefinisikan konstanta atau makro
•
Cara penulisan: #define
•
identifier
konstanta
Contoh: #define MAX 100 (Setiap kemunculan max diganti dengan angka 100.)
Published By Stefanikha69
#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
Published By Stefanikha69
•New Project • Run
CodeVision
Published By Stefanikha69
Published By Stefanikha69
• Chip
select
Published By Stefanikha69
configuration chip select • Chip ATMEGA 8535 • Clock 11.059200 Mhz
Published By Stefanikha69
• Untuk
port gunakan PORTC untuk LED PORTC.0 – PORTC.7 = output (0)
Published By Stefanikha69
• Save
and Generate
Published By Stefanikha69
• Save
File – make folder and files
Published By Stefanikha69
• Display
Published By Stefanikha69
•Configuration ready compile
Published By Stefanikha69
Published By Stefanikha69
•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(); }}
Published By Stefanikha69
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....)
Published By Stefanikha69
•Configuration PORT Programmer
Published By Stefanikha69
Choice : • AVR Chip programmer type • COM PORT • BAUD RATE
Published By Stefanikha69
•COMPILER AND BUILD ALL PROGRAM
Or Shift F9
Published By Stefanikha69
• Connecting
USB Downloader – PC/Laptop - Microcontroller, And....
Published By Stefanikha69
• Process
Downloading.........
Published By Stefanikha69
FINISH
Published By Stefanikha69
• Error
DOWNLOADING
Solution : • Check COM PORT • Check Baud Rate • Check Connection Downloader • Check Prog/Serial TTL select Published By Stefanikha69
•CV AVR WITH PROTEUS OPEN PROGRAM ISIS PROTEUS PROFESSIONAL
Published By Stefanikha69
•synchronization cv avr with proteus • Creat
Project and Design • Double click pict microcntroller
Published By Stefanikha69
•synchronization cv avr with proteus • Select
clock frequency • Select program file, (HEX file type)
Published By Stefanikha69
•synchronization cv avr with proteus
• Running
ISIS Proteus
• FINISH... Created by. Dwisnanto Putro, Manado, September 2012
Published By Stefanikha69
Task
Buatlah #define untuk menyalakan led pada PIN0 sampai dengan PIN7
Published By Stefanikha69
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)
Published By Stefanikha69
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) •
Published By Stefanikha69
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)
Published By Stefanikha69
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) Published By Stefanikha69
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)
Published By Stefanikha69
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)
Published By Stefanikha69
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)
Published By Stefanikha69
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)
Published By Stefanikha69