modul perekayasaan sistem...

24
MODUL PEREKAYASAAN SISTEM KONTROL Nianda Aji Pratama S.Pd. Mardiyanto S.Pd. MIKROKONTROL ATMega8535 Teknik Elektronika Industri SMK N 1 SEMARANG

Upload: lylien

Post on 23-May-2018

263 views

Category:

Documents


7 download

TRANSCRIPT

Page 1: MODUL PEREKAYASAAN SISTEM KONTROLpintar.jatengprov.go.id/uploads/users/nianda_aji_p/materi/SMK... · mengetahui langkah-langkah membuat project baru dengan menggunakan software CodeVision

MODUL PEREKAYASAAN SISTEM KONTROL

Nianda Aji Pratama S.Pd.

Mardiyanto S.Pd.

MIKROKONTROL ATMega8535

Teknik Elektronika Industri

SMK N 1 SEMARANG

Page 2: MODUL PEREKAYASAAN SISTEM KONTROLpintar.jatengprov.go.id/uploads/users/nianda_aji_p/materi/SMK... · mengetahui langkah-langkah membuat project baru dengan menggunakan software CodeVision

PEREKAYASAAN SISTEM KONTROL

PEMPROGRAMAN MIKROKONTROL ATMega8535

SMK N 1 SEMARANG

Nianda Aji Pratama S.Pd.

2

A. Topik :

Program CodeVisionAVR

B. Kompetensi

Setelah praktikum peserta menguasai penggunaan program CodeVisionAVR sebagai

compailer C mikrokontroller AVR C. Sub Kompetensi Setelah praktikum peserta menguasai

sub kompetensi:

1. mengetahui tool-tool yang ada pada software CodeVisionAVR

2. mengetahui elemen-elemen software CodeVision AVR.

3. mengetahui langkah-langkah membuat project baru dengan menggunakan software

CodeVision AVR

4. membuat project baru dan mengkompilasi ke mikrokontroller

D. Teori Dasar 1. Pengenalan Program CodeVision AVR

Software CodeVisionAVR merupakan perangkat lunak kompailer C dan merupakan

pembangkit program otomatis. Software CodeVisionAVR didesain untuk mikrokontroller

keluarga atmel AVR. Software CodeVisionAVR dapat berjalan pada sistem operasi windows

95, 98, Me, NT 4, 2000 dan windows XP. Kompailer C melakukan pendekatan elemen dari

bahasa ANSI C sesuai dengan arsitektur dari AVR, dengan beberapa fitur yang ditambahkan.

Integrated Development Environment (IDE) mendukung software AVR Chip In-System

Programmer sehingga memungkinkan untuk melakukan transfer secara otomatis dari

program ke chip mikrokontroller setelah berhasil dikompilasi atau diassembly. Software In-

System Programmer didesain untuk dapat bekerja dan mendukung tipe chip AVR

STK500/AVRISP/AVRProg, Kanda Systems STK200+/300, Dontronics DT006, Vogel

Elektronik VTEC-ISP, Futurlec JRAVR dan MicroTronics ATCPU/Mega2000

programmers/development boards. Software CodeVisionAVR juga mempunyai fasilitas

CodeWizardAVR, yang digunakan untuk membantu menuliskan dengan cepat secara

otomatis kedalam program. Dengan CodeWizardAVR membantu kita untuk membuat

kerangka program dan menuliskan fungsi-fungsi:

a. Mengatur External memory

b. Mengidentifikasi sumber reset Chip

c. Inisialisai Port Input/Output

Page 3: MODUL PEREKAYASAAN SISTEM KONTROLpintar.jatengprov.go.id/uploads/users/nianda_aji_p/materi/SMK... · mengetahui langkah-langkah membuat project baru dengan menggunakan software CodeVision

PEREKAYASAAN SISTEM KONTROL

PEMPROGRAMAN MIKROKONTROL ATMega8535

SMK N 1 SEMARANG

Nianda Aji Pratama S.Pd.

3

d. Inisialisasi External Interrupts

e. Inisialisasi Timers/Counters

f. Inisialisasi Watchdog Timer

g. Inisialisasi UART (USART) and interrupt driven buffered serial communication

h. Inisialisasi Analog Comparator

i. Inisialisasi ADC

j. Inisialisasi antarmuka SPI

k. Inisialisasi antarmuka Two Wire

l. Inisialisasi antarmuka CAN

m. Inisialisasi I2C Bus, LM75 Temperature Sensor, DS1621 Thermometer/Thermostat dan

PCF8563, PCF8583, DS1302, DS1307 Real Time Clocks

n. Inisialisasi 1 Wire Bus and DS1820, DS18S20 Temperature Sensors

o. Inisialisasi LCD module.

2. Tampilan CodeVisionAVR

Pada saat pertama kali dibuka CodeVisionAVR akan tampil

Gambar 1. tampilan awal CodeVisionAVR

Elemen CodeVisionAVR terdiri dari Title bar, Menu Bar, Toolbar, Editor, Navigator/Code

Templates/Clipboard History window, Message window.

Page 4: MODUL PEREKAYASAAN SISTEM KONTROLpintar.jatengprov.go.id/uploads/users/nianda_aji_p/materi/SMK... · mengetahui langkah-langkah membuat project baru dengan menggunakan software CodeVision

PEREKAYASAAN SISTEM KONTROL

PEMPROGRAMAN MIKROKONTROL ATMega8535

SMK N 1 SEMARANG

Nianda Aji Pratama S.Pd.

4

Gambar 2. Elemen CodeVisionAVR.

1. Title bar

Menunjukan judul, nama file dan lokasi file disimpan

2. Menu bar

Kumpulan menu-menu perintah CodeVisionAVR, yaitu menu File, Edit, View, Insert,

Tools, Settings, Windows, Help

3. Toolbar

Ikon-ikon yang mewakili suatu perintah, untuk memudahkan pengguna tanpa harus

mencari di bagian menu.

4. Navigator/Code Templates/Clipboard History window

a. Navigator

Navigator digunakan untuk memudahkan pengguna melihat file ataupun

membuka file

b. Code Templates

Digunakan untuk memudahkan pengguna menuliskan sequence kode dengan

cepat dan dapat dengan mudah mengeditnya

Page 5: MODUL PEREKAYASAAN SISTEM KONTROLpintar.jatengprov.go.id/uploads/users/nianda_aji_p/materi/SMK... · mengetahui langkah-langkah membuat project baru dengan menggunakan software CodeVision

PEREKAYASAAN SISTEM KONTROL

PEMPROGRAMAN MIKROKONTROL ATMega8535

SMK N 1 SEMARANG

Nianda Aji Pratama S.Pd.

5

c. Clipboard History

Digunakan untuk melihat dan mengakses teks yang sering dipakai sehingga tidak

perlu menuliskan kembali. Caranya dengan mengkopi teks yang akan disimpan

dan mempaste di window clipboard.

5. Editor

Digunakan untuk mengetikan program dan mengedit program

6. Message window

Tempat untuk mengetahui informasi hasil kompilasi program apakah ada error ataupun tidak.

E . Alat dan Bahan

1. Komputer dengan program Codevision AVR.

2. Trainer Mikrokontroller AVR ATMega8535

F. Keselamatan Kerja

1. Pergunakan komputer dengan langkah-langkah yang benar baik pada saat menghidupkan

menggunakan dan mematikan

2. Apabila ada kesulitan atau keraguan konsultasikan dengan instruktur

G. Langkah Kerja

1. Jalankan program CodeVision AVR

2. Lakukan langkah-langkah pemrograman CodeVision AVR

H. Membuat sebuah proyek

Langkah-langkah untuk membuat project baru dengan menggunakan software

CodeVisionAVR adalah sebagai berikut:

1. Pilih menu [File]→[New] atau dapat mengklik toolbar akan muncul kotak dialog:

Gambar 3. menu membuat project baru

Page 6: MODUL PEREKAYASAAN SISTEM KONTROLpintar.jatengprov.go.id/uploads/users/nianda_aji_p/materi/SMK... · mengetahui langkah-langkah membuat project baru dengan menggunakan software CodeVision

PEREKAYASAAN SISTEM KONTROL

PEMPROGRAMAN MIKROKONTROL ATMega8535

SMK N 1 SEMARANG

Nianda Aji Pratama S.Pd.

6

Jika kita menginginkan untuk membuat sebuah project baru maka pilih [File Type] → Project

2. setelah ditekan OK maka akan muncul dialog yang menanyakan apakah ingin

menggunakan CodeWizardAVR untuk membuat project baru.

Gambar 4. persetujuan menu membuat project baru

Untuk memudahkan membuat kerangka program maka ditekan YES

3. setelah ditekan YES maka akan muncul kotak dialog CodeWizardAVR seperti berikut:

Langkah-langkahnya:

a. Pilih jenis chip mikrokontroller yang digunakan

Gambar 5. menentukan fungsi chip di CodeWizardAVR

b. Pilih clock frequency sesuai dengan kristal yang digunakan

c. Kemudian pilih tab ports akan ditunjukan seperti berikut:

Page 7: MODUL PEREKAYASAAN SISTEM KONTROLpintar.jatengprov.go.id/uploads/users/nianda_aji_p/materi/SMK... · mengetahui langkah-langkah membuat project baru dengan menggunakan software CodeVision

PEREKAYASAAN SISTEM KONTROL

PEMPROGRAMAN MIKROKONTROL ATMega8535

SMK N 1 SEMARANG

Nianda Aji Pratama S.Pd.

7

Gambar 6. menentukan fungsi port di CodeWizardAVR

d. Secara default semua port akan disetting sebagai input, kita bisa mengganti dengan

mengklik kotak pada Data Direction, jika kita menginginkan Port tersebut menjadi Output

maka klik pada tombol tersebut sehingga akan berganti Out. Program akan mengganti

register DDRx sesuai dengan yang kita pilih apakah sebagai Input (In) ataukah Output (Out).

e. Kemudian klik kotak pada bagian Pullup/Output Value, jika kita menginginkan input

dengan Pullup maka klik kotak tersebut sehingga akan berganti tulisan P. Apabila Port

sebagai output maka kita bisa memilih apakah aktif Low (0) ataupun aktif High (1). Ini

digunakan untuk melakukan setting register PORTx sesuai dengan yang kita pilih.

Contoh: jika kita menginginkan Port A sebagai input dan Port B sebagai Output, maka setting

CodeWizardnya seperti gambar di bawah:

Gambar 7. Menentukan fungsi PortA Gambar 8. Menentukan fungsi PortB

Page 8: MODUL PEREKAYASAAN SISTEM KONTROLpintar.jatengprov.go.id/uploads/users/nianda_aji_p/materi/SMK... · mengetahui langkah-langkah membuat project baru dengan menggunakan software CodeVision

PEREKAYASAAN SISTEM KONTROL

PEMPROGRAMAN MIKROKONTROL ATMega8535

SMK N 1 SEMARANG

Nianda Aji Pratama S.Pd.

8

4. setelah membuat kerangka program dengan menggunakan CodeWizard AVR kemudian

pilih program preview untuk mengetahui apakah kode yang kita buat sesuai dengan yang kita

inginkan.

5. jika sudah sesuai dengan yang kita inginkan maka pilih Generate, Save and Exit

Gambar 9. Melakukan generate dan menyimpan CodeWizard

Kemudian simpan project, dan diberi nama source file, nama project file, dan nama

codewizard project file.

6. setelah disimpan maka akan tampil program secara keseluruhan sehingga kita tinggal

mengedit dan menambahkan fungsi atau perintah lain kedalam program

7. setelah program selesai, maka siap dilakukan kompilasi

8. sebelum melakukan kompilasi pilih menu [Setting]→[Programmer]. Pilih Atmel AVRProg

(AVR910) untuk AVR Chip Programmer Type, Communication Port pilih sesuai port yang

disediakan untuk USB downloader (lihat pada Divice manager windows), dan setting Baud

Rate dengan nilai 115200 lalu tekan OK.

Gambar 11. setting programmer K-125R.

Page 9: MODUL PEREKAYASAAN SISTEM KONTROLpintar.jatengprov.go.id/uploads/users/nianda_aji_p/materi/SMK... · mengetahui langkah-langkah membuat project baru dengan menggunakan software CodeVision

PEREKAYASAAN SISTEM KONTROL

PEMPROGRAMAN MIKROKONTROL ATMega8535

SMK N 1 SEMARANG

Nianda Aji Pratama S.Pd.

9

9. setelah disetting semua, maka siap untuk melakukan proses kompilasi. Secara bertahap

dapat dilakukan dengan mengklik pada toolbar untuk melakukan check syntax dan untuk

mengetahui apakah program yang kita tulis ada error ataukah tidak.

Apabila program ada error maka di bagian message akan muncul kesalahan seperti pada

gambar berikut:

Gambar 12. tampilan message

cara menanganinya adalah: dengan mengklik 2 kali pada pesan error maka akan ditunjukan

baris mana yang terjadi error.

setelah tidak ada error , kemudian klik untuk melakukan kompilasi dan terakhir klik

.

9. Untuk melakukan make atau download program ke IC pilih [Tools] [chip Programmer]

maka akan muncul:

Page 10: MODUL PEREKAYASAAN SISTEM KONTROLpintar.jatengprov.go.id/uploads/users/nianda_aji_p/materi/SMK... · mengetahui langkah-langkah membuat project baru dengan menggunakan software CodeVision

PEREKAYASAAN SISTEM KONTROL

PEMPROGRAMAN MIKROKONTROL ATMega8535

SMK N 1 SEMARANG

Nianda Aji Pratama S.Pd.

10

Kemudian klik Program All, maka proses download akan berlangsung.

Page 11: MODUL PEREKAYASAAN SISTEM KONTROLpintar.jatengprov.go.id/uploads/users/nianda_aji_p/materi/SMK... · mengetahui langkah-langkah membuat project baru dengan menggunakan software CodeVision

PEREKAYASAAN SISTEM KONTROL

PEMPROGRAMAN MIKROKONTROL ATMega8535

SMK N 1 SEMARANG

Nianda Aji Pratama S.Pd.

11

PERCOBAAN 1

INPUT OUTPUT (IO)

I. JUDUL PERCOBAAN

Input Output pada mikrokontroler AVR merupakan dasar dari prinsip pengontrolan berbasis

mikrokontroler. Dimana orientasi dari penerapan mikrokontroler ialah untuk mengendalikan

suatu sistem berdasarkan informasi input, diproses dan dilakukan aksi pada bagian output

II. TUJUAN PERCOBAAN

Setelah menyelesaikan praktikum ini, yang anda peroleh adalah :

1. Praktikan dapat memprogram mikrokontroler AVR ATmega8535 sebagai output, serta

mengendalikan perangkat menggunakan bahasa C.

2. Praktikan dapat memprogram mikrokontroler AVR ATmega8535 sebagai input dan output,

serta mengendalikan perangkat menggunakan bahasa C.

III. TEORI SINGKAT

Fasilitas input/output merupakan fungsi mikrokontroller untuk dapat menerima sinyal

masukan (input) dan memberikan sinyal keluaran (output). Sinyal input maupun sinyal output

adalah berupa data digital 1 (high, mewakili tegangan 5 volt) dan 0 (low, mewakili tegangan

0 volt). Mikrokontroller ATMEGA8535 memiliki 4 buah PORT 8 bit bidirectional yang

dapat difungsikan sebagai PORT input maupun PORT output yaitu PORTA, PORTB ,

PORTC, dan PORT D.

Register digunakan untuk mengatur fungsi dari pin-pin pada tiap port. Register dapat

Page 12: MODUL PEREKAYASAAN SISTEM KONTROLpintar.jatengprov.go.id/uploads/users/nianda_aji_p/materi/SMK... · mengetahui langkah-langkah membuat project baru dengan menggunakan software CodeVision

PEREKAYASAAN SISTEM KONTROL

PEMPROGRAMAN MIKROKONTROL ATMega8535

SMK N 1 SEMARANG

Nianda Aji Pratama S.Pd.

12

dianalogikan sebagai kumpulan switch on/off yang digunakan untuk mengaktifkan

fungsi apa yang akan dipakai dari port mikrokontroller. Pada setiap port pin terdapat 3 buah

register 8 bit: DDRxn, PORTxn, dan PINxn.

Register DDRxn digunakan untuk menentukan arah dari pin yang bersangkutan.

Jika DDRxn diberikan nilai 1 (high), maka pin digunakan sebagai output. Jika

DDRxn diberikan nilai 0 (low), maka pin difungsikan sebagai input.

Register PORTxn digunakan untuk mengaktifkan pull-up resistor (pada saat pin

difungsikan sebagai input), dan memberikan nilai keluaran pin high/low (pada

saat difungsikan sebagai output). Konfigurasi PORTxn dan DDRxn dapat dilihat pada

tabel dibawah,

Tabel 1: konfigurasi port pin

Tri-state adalah kondisi diantara high dan low, atau biasa disebut dengan keadaan

mengambang (floating). Kondisi tri-state sangat dihindari dalam dunia digital.

Terlepas dari setting DDRxn, PINxn merupakan register yang berfungsi untuk

mengetahui keadaan tiap-tiap pin pada mikrokontroller. Register ini sangat dibutuhkan untuk

membaca keadaan pin pada saat difungsikan sebagai input.

Page 13: MODUL PEREKAYASAAN SISTEM KONTROLpintar.jatengprov.go.id/uploads/users/nianda_aji_p/materi/SMK... · mengetahui langkah-langkah membuat project baru dengan menggunakan software CodeVision

PEREKAYASAAN SISTEM KONTROL

PEMPROGRAMAN MIKROKONTROL ATMega8535

SMK N 1 SEMARANG

Nianda Aji Pratama S.Pd.

13

IV. ALAT & BAHAN YANG DIGUNAKAN

1. Satu set PC yang dilengkapi dengan software CodeVision AVR.

2. Satu set Trainer Mikrokontroller AVR ATmega8535

Gambar 1. Modul trainer ATmega8535

Gambar 2. Circuit Modul LED.

Page 14: MODUL PEREKAYASAAN SISTEM KONTROLpintar.jatengprov.go.id/uploads/users/nianda_aji_p/materi/SMK... · mengetahui langkah-langkah membuat project baru dengan menggunakan software CodeVision

PEREKAYASAAN SISTEM KONTROL

PEMPROGRAMAN MIKROKONTROL ATMega8535

SMK N 1 SEMARANG

Nianda Aji Pratama S.Pd.

14

V. LANGKAH PERCOBAAN

Berikut adalah aplikasi praktik yang nantinya dapat lebih menjelaskan Input dan

Output. Peserta diharapkan mengikuti petunjuk langkah demi langkah.

Percobaan 1. Output

langkah-langkahnya sebagai berikut:

1. Rangkailah modul seperti pada gambar belikut

2. Operasikan software CodeVisionAVR

3. Buatlah project baru dengan, menggunakan CodeWizardAVR

a. mensetting chipe menggunakan ATmega8535 pada clock 12 Mhz

Page 15: MODUL PEREKAYASAAN SISTEM KONTROLpintar.jatengprov.go.id/uploads/users/nianda_aji_p/materi/SMK... · mengetahui langkah-langkah membuat project baru dengan menggunakan software CodeVision

PEREKAYASAAN SISTEM KONTROL

PEMPROGRAMAN MIKROKONTROL ATMega8535

SMK N 1 SEMARANG

Nianda Aji Pratama S.Pd.

15

b. mensetting PORTC sebagai Output

4. Pada CodeWizardAVR tersebut pilih File Generate, Save and Exit. Beri nama dan

simpan pada direktori baru di dalam direktori d:\mikrokontroler

5. Pada source program-C yang dihasilkan, header mega16.h.

Page 16: MODUL PEREKAYASAAN SISTEM KONTROLpintar.jatengprov.go.id/uploads/users/nianda_aji_p/materi/SMK... · mengetahui langkah-langkah membuat project baru dengan menggunakan software CodeVision

PEREKAYASAAN SISTEM KONTROL

PEMPROGRAMAN MIKROKONTROL ATMega8535

SMK N 1 SEMARANG

Nianda Aji Pratama S.Pd.

16

/*****************************************************

This program was produced by the

CodeWizardAVR V2.03.9 Standard

Automatic Program Generator

© Copyright 1998-2008 Pavel Haiduc, HP InfoTech s.r.l.

http://www.hpinfotech.com

Project :

Version :

Date : 20/08/2013

Author : user

Company :

Comments:

Chip type : ATmega8535

Program type : Application

AVR Core Clock frequency: 12,000000 MHz

Memory model : Small

External RAM size : 0

Data Stack size : 256

*****************************************************/

#include <mega8535.h>

#include <delay.h>

// Declare your global variables here

void main(void)

{

// Declare your local variables here

// Input/Output Ports initialization

// Port A initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In

// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T

PORTA=0x00;

DDRA=0x00;

// Port B initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In

// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T

PORTB=0x00;

DDRB=0x00;

// Port C initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In

Page 17: MODUL PEREKAYASAAN SISTEM KONTROLpintar.jatengprov.go.id/uploads/users/nianda_aji_p/materi/SMK... · mengetahui langkah-langkah membuat project baru dengan menggunakan software CodeVision

PEREKAYASAAN SISTEM KONTROL

PEMPROGRAMAN MIKROKONTROL ATMega8535

SMK N 1 SEMARANG

Nianda Aji Pratama S.Pd.

17

// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T

PORTC=0x00;

DDRC=0x00;

// Port D initialization

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In

// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T

PORTD=0x00;

DDRD=0xFF;

// Timer/Counter 0 initialization

// Clock source: System Clock

// Clock value: Timer 0 Stopped

// Mode: Normal top=FFh

// OC0 output: Disconnected

TCCR0=0x00;

TCNT0=0x00;

OCR0=0x00;

// Timer/Counter 1 initialization

// Clock source: System Clock

// Clock value: Timer 1 Stopped

// Mode: Normal top=FFFFh

// OC1A output: Discon.

// OC1B output: Discon.

// Noise Canceler: Off

// Input Capture on Falling Edge

// Timer 1 Overflow Interrupt: Off

// Input Capture Interrupt: Off

// Compare A Match Interrupt: Off

// Compare B Match Interrupt: Off

TCCR1A=0x00;

TCCR1B=0x00;

TCNT1H=0x00;

TCNT1L=0x00;

ICR1H=0x00;

ICR1L=0x00;

OCR1AH=0x00;

OCR1AL=0x00;

OCR1BH=0x00;

OCR1BL=0x00;

// Timer/Counter 2 initialization

// Clock source: System Clock

// Clock value: Timer 2 Stopped

// Mode: Normal top=FFh

// OC2 output: Disconnected

Page 18: MODUL PEREKAYASAAN SISTEM KONTROLpintar.jatengprov.go.id/uploads/users/nianda_aji_p/materi/SMK... · mengetahui langkah-langkah membuat project baru dengan menggunakan software CodeVision

PEREKAYASAAN SISTEM KONTROL

PEMPROGRAMAN MIKROKONTROL ATMega8535

SMK N 1 SEMARANG

Nianda Aji Pratama S.Pd.

18

ASSR=0x00;

TCCR2=0x00;

TCNT2=0x00;

OCR2=0x00;

// External Interrupt(s) initialization

// INT0: Off

// INT1: Off

// INT2: Off

MCUCR=0x00;

MCUCSR=0x00;

// Timer(s)/Counter(s) Interrupt(s) initialization

TIMSK=0x00;

// Analog Comparator initialization

// Analog Comparator: Off

// Analog Comparator Input Capture by Timer/Counter 1: Off

ACSR=0x80;

SFIOR=0x00;

while (1)

{

// Place your code here

PORTD=0x00;

delay_ms(1000);

PORTD=0xFF;

delay_ms(1000);

};

}

6. Lakukan check syntax, compile. Bila tidak ada error, programkan ke dalam flash.

Page 19: MODUL PEREKAYASAAN SISTEM KONTROLpintar.jatengprov.go.id/uploads/users/nianda_aji_p/materi/SMK... · mengetahui langkah-langkah membuat project baru dengan menggunakan software CodeVision

PEREKAYASAAN SISTEM KONTROL

PEMPROGRAMAN MIKROKONTROL ATMega8535

SMK N 1 SEMARANG

Nianda Aji Pratama S.Pd.

19

Percobaan 2. Input dan Output

Gambar 3. Gambar rangkaian input-output.

langkah-langkahnya sebagai berikut:

1. Rangkailah modul seperti pada gambar belikut

Page 20: MODUL PEREKAYASAAN SISTEM KONTROLpintar.jatengprov.go.id/uploads/users/nianda_aji_p/materi/SMK... · mengetahui langkah-langkah membuat project baru dengan menggunakan software CodeVision

PEREKAYASAAN SISTEM KONTROL

PEMPROGRAMAN MIKROKONTROL ATMega8535

SMK N 1 SEMARANG

Nianda Aji Pratama S.Pd.

20

Operasikan software CodeVisionAVR

2. Buatlah project baru dengan, menggunakan CodeWizardAVR

a. mensetting chipe menggunakan ATmega8535 pada clock 11.05092Mhz

b. mensetting USART

3. Pada CodeWizardAVR tersebut pilih File Generate, Save and Exit. Beri nama dan

simpan pada direktori baru di dalam direktori d:\mikrokontroler

4. Pada source program-C yang dihasilkan, mega16.h.

5. Pada bagian bawah didalam main-program, tambahkan perintah (yang berwarna

merah) berikut

/*********************************************

This program was produced by the

CodeWizardAVR V1.24.0 Standard

Automatic Program Generator

© Copyright 1998-2003 HP InfoTech s.r.l.

http://www.hpinfotech.ro

Page 21: MODUL PEREKAYASAAN SISTEM KONTROLpintar.jatengprov.go.id/uploads/users/nianda_aji_p/materi/SMK... · mengetahui langkah-langkah membuat project baru dengan menggunakan software CodeVision

PEREKAYASAAN SISTEM KONTROL

PEMPROGRAMAN MIKROKONTROL ATMega8535

SMK N 1 SEMARANG

Nianda Aji Pratama S.Pd.

21

e-mail:[email protected]

Project :

Version :

Date : 07/07/2010

Author :

Company :

Comments:

Chip type : ATmega8535

Program type : Application

Clock frequency : 11,059200 MHz

Memory model : Small

External SRAM size : 0

Data Stack size : 128

*********************************************/

#include <mega8535.h>

// Declare your global variables here

void main(void)

{

// Declare your local variables here

// Input/Output Ports initialization

// Port A initialization

// Func0=In Func1=In Func2=In Func3=In Func4=In Func5=In Func6=In Func7=In

// State0=T State1=T State2=T State3=T State4=T State5=T State6=T State7=T

PORTA=0x00;

DDRA=0x00;

// Port B initialization

// Func0=In Func1=In Func2=In Func3=In Func4=In Func5=In Func6=In Func7=In

// State0=P State1=P State2=P State3=P State4=P State5=P State6=P State7=P

PORTB=0xFF;

DDRB=0x00;

// Port C initialization

// Func0=Out Func1=Out Func2=Out Func3=Out Func4=Out Func5=Out Func6=Out

Func7=Out

// State0=0 State1=0 State2=0 State3=0 State4=0 State5=0 State6=0 State7=0

PORTC=0x00;

DDRC=0xFF;

// Port D initialization

// Func0=In Func1=In Func2=In Func3=In Func4=In Func5=In Func6=In Func7=In

// State0=T State1=T State2=T State3=T State4=T State5=T State6=T State7=T

PORTD=0x00;

DDRD=0x00;

Page 22: MODUL PEREKAYASAAN SISTEM KONTROLpintar.jatengprov.go.id/uploads/users/nianda_aji_p/materi/SMK... · mengetahui langkah-langkah membuat project baru dengan menggunakan software CodeVision

PEREKAYASAAN SISTEM KONTROL

PEMPROGRAMAN MIKROKONTROL ATMega8535

SMK N 1 SEMARANG

Nianda Aji Pratama S.Pd.

22

// Timer/Counter 0 initialization

// Clock source: System Clock

// Clock value: Timer 0 Stopped

// Mode: Normal top=FFh

// OC0 output: Disconnected

TCCR0=0x00;

TCNT0=0x00;

OCR0=0x00;

// Timer/Counter 1 initialization

// Clock source: System Clock

// Clock value: Timer 1 Stopped

// Mode: Normal top=FFFFh

// OC1A output: Discon.

// OC1B output: Discon.

// Noise Canceler: Off

// Input Capture on Falling Edge

TCCR1A=0x00;

TCCR1B=0x00;

TCNT1H=0x00;

TCNT1L=0x00;

OCR1AH=0x00;

OCR1AL=0x00;

OCR1BH=0x00;

OCR1BL=0x00;

// Timer/Counter 2 initialization

// Clock source: System Clock

// Clock value: Timer 2 Stopped

// Mode: Normal top=FFh

// OC2 output: Disconnected

ASSR=0x00;

TCCR2=0x00;

TCNT2=0x00;

OCR2=0x00;

// External Interrupt(s) initialization

// INT0: Off

// INT1: Off

// INT2: Off

MCUCR=0x00;

MCUCSR=0x00;

// Timer(s)/Counter(s) Interrupt(s) initialization

TIMSK=0x00;

// Analog Comparator initialization

// Analog Comparator: Off

// Analog Comparator Input Capture by Timer/Counter 1: Off

// Analog Comparator Output: Off

Page 23: MODUL PEREKAYASAAN SISTEM KONTROLpintar.jatengprov.go.id/uploads/users/nianda_aji_p/materi/SMK... · mengetahui langkah-langkah membuat project baru dengan menggunakan software CodeVision

PEREKAYASAAN SISTEM KONTROL

PEMPROGRAMAN MIKROKONTROL ATMega8535

SMK N 1 SEMARANG

Nianda Aji Pratama S.Pd.

23

ACSR=0x80;

SFIOR=0x00;

while (1)

{

// Place your code here

if (PINB.0==0) PORTC.0=1;

else if (PINB.1==0) PORTC.1=1;

else if (PINB.2==0) PORTC.2=1;

else if (PINB.3==0) PORTC.3=1;

else if (PINB.4==0) PORTC.4=1;

else if (PINB.5==0) PORTC.5=1;

else if (PINB.6==0) PORTC.6=1;;

else if (PINB.7==0) PORTC.7=1;

else PORTC =0;

};

}

6. Lakukan check syntax, compile. Bila tidak ada error, programkan ke dalam flash.

Page 24: MODUL PEREKAYASAAN SISTEM KONTROLpintar.jatengprov.go.id/uploads/users/nianda_aji_p/materi/SMK... · mengetahui langkah-langkah membuat project baru dengan menggunakan software CodeVision

PEREKAYASAAN SISTEM KONTROL

PEMPROGRAMAN MIKROKONTROL ATMega8535

SMK N 1 SEMARANG

Nianda Aji Pratama S.Pd.

24

VI. TUGAS/PERTANYAAN

Jawablah pertanyaan berikut untuk bagian analisa pada laporan resmi:

1. Mendisain program menggunakan bahasa-C memberikan kemudahan bagi programer.

Menurut anda perlukah kita mengetahui (belajar) bahasa assemblernya? Mengapa?

2. Gambarkan arsistektur I/O pada mikrokontroler AVR ATmega8535?

3. Buatlah program aplikasi agar lampu led pada input/output-board menyala

berkelap kelip dengan selang waktu tertentu. Gunakan pengarah preprocessor delay.h

dengan mengetikkan #include<delay.h>?

Catatan :

Laporan sementara dikumpulkan setelah menyelesaikan praktikum.

Tugas dikumpulkan 1 minggu setelah praktek berlangsung.