PROJECT CODEVISION AVR C€¢Untuk LED ANODA : Logika 0 = led menyala Logika 1 = led mati •Untuk...

of 44 /44
PART 7 Void & Define Dosen : Dwisnanto Putro, S.T, M.Eng

Embed Size (px)

Transcript of PROJECT CODEVISION AVR C€¢Untuk LED ANODA : Logika 0 = led menyala Logika 1 = led mati •Untuk...

PART 7 Void & Define Dosen : Dwisnanto Putro, S.T, M.Eng

Untuk LED ANODA : Logika 0 = led menyala

Logika 1 = led mati

Untuk LED KATODA : Logika 0 = led mati

Logika 1 = led menyala

LED (LIGHT EMITING DIODE)

Published By Stefanikha69

Delay = tunda

Penundaan terhadap kinerja mikrokontroler

DELAY

Published By Stefanikha69

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

Published By Stefanikha69

Header delay

#include

Perintah delay

delay_ms(------);

Waktu tunda dalam milidetik:

Misalkan:

delay_ms(1000); berarti ditunda selama 1 detik

DELAY

Published By Stefanikha69

Dengan system delay, menciptakan system sinyal pulsa

DELAY

Published By Stefanikha69

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

Published By Stefanikha69

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.

#include

Published By Stefanikha69

Digunakan untuk mendefinisikan konstanta atau makro

Cara penulisan:

#define identifier konstanta

Contoh: #define MAX 100

(Setiap kemunculan max diganti dengan angka 100.)

#define

Published By Stefanikha69

Fungsi ini tidak memberikan hsil yang serupa nilai melainkan berupa sebuah proses. Fungsi ini bertipe void.

Contoh:

void kedip()

{

PORTD=0

delay_ms(500); //delay 500ms

PORTD=255;

delay_ms(500);

}

#void

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 #include #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