You are on page 1of 6

VIEÁT CHÖÔNG TRÌNH ÑÔN GIAÛN CHO

VI ÑIEÀU KHIEÅN ATMEGA8515L DUØNG


CODE VISION
Phaàn cöùng vdk:
Maïch duøng Atmega8515 gioáng heät nhö maïch duøng AT89S52, chæ khaùc chaân reset thì taùc
ñoäng möùc thaáp. Neáu chöa coù maïch coù theå gaén tröïc tieáp 1IC 8515 leân testboard, vôùi 6 chaân
duøng naïp ISP laø VCC – MOSI – MISO – SCK – RESET – GND. 2 ñöôøng nguoàn laø 5Vdc.
Noái port C vôùi 8 led ñôn (taùc ñoäng möùc thaáp thì led saùng). Chöa caàn noái theâm thaïch anh
vaø tuï (ta duøng dao ñoäng beân trong). Neáu maïch reset chöa raùp ñöôïc thì chæ caàn noái 1 ñieän
trôû khoaûng 10k leân nguoàn. Heát!

Phaàn cöùng vaø phaàn meàm naïp cho Atmega8515:


Ta duøng maïch naøo cuõng ñöôïc mieãn laø naïp ISP vaø hoã trôï mega8515, ví duï nhö “SPI Flash
Programmer 3.7”. Heát!

Phaàn meàm vieát chöông trình cho vdk:


Trong baøi naøy, ta söû duïng CodeVision, phaàn meàm naøy duøng ngoân ngöõ C gioáng nhö Keil C,
caùc thao taùc vôùi cöûa soå giao dieän cuõng töông töï. Sau ñaây laø 1 ví duï ñôn giaûn ñieàu khieån
led ôû port C.
Chaïy giao dieän chöông trình:
Coù theå ñoùng caùc file project vaø file c cuõ khoâng caàn thieát
Vaøo menu: File/New ñeå taïo 1 file C môùi, choïn muïc source trong hoäp thoaïi hieän ra vaø
nhaán OK; xem hình döôùi

Trong vuøng soaïn thaûo cuûa file C, ta coù theå vieát 1 ñoaïn code ñôn giaûn nhö sau:

//khai bao thu vien:


#include <mega8515.h> //file dinh nghia cac thanh ghi ATmega8515
#include <delay.h> //file chua ham delay_us va delay_ms

void main(void) //Dau chuong trinh chinh


{
unsigned char i; //khai bao bien
//khoi tao:
DDRC = 0xFF; //8 pin port c la ngo ra
PORTC = 0xFF; //8 pin deu ra muc high(1)
DDRD = 0x00; //8 pin port D la ngo vao
PORTD = 0xFF; //co dien tro keo len (ben trong)

while(1) //lap hoai


{
PORTC = PORTC + 1; //tang port C 1 bit
delay_ms(1000); //tri hoan 1s
if(PIND.7 == 0) //kiem tra PD7 = 0?
{
PORTC = 254;
for(i=0;i<8;i++) //vong lap 8 lan
{
PORTC = PORTC << 1; //dich port C 1 bit sang trai
delay_ms(500);
}
PORTC = 255;
}
}
}

Sau khi vieát xong, löu file c naøy laïi:

Vaøo menu File/New, Choïn muïc Project trong hoäp thoaïi hieän ra, roài choïn OK:

Hoäp thoaïi Confirm hieän ra hoûi ta coù duøng CodeWizard khoâng, choïn No.
Sau ñoù choïn ñöôøng daãn vaø ñaët teân file cho project:

tieáp theo, cöûa soå Configure Project xuaát hieän, ta phaûi thieát laäp caùc thoâng soá caøi ñaët cho
project naøy:
Taïi muïc Files: Nhaán Add, sau ñoù choïn file C luùc naøy löu, roài nhaán Open
Nhaán chuoät sang muïc C Compiles seõ xuaát hieän caùc muïc choïn nhö hình döùôùi ñaây. Ta choïn
vi ñieàu khieån Atmega8515L taïi muïc Chip:; vaø choïn taàn soá thaïch anh 1MHz (maëc ñònh laø
dao ñoäng RC beân trong IC). Sau cuøng nhaán OK.

Tieáp theo, vaøo menu Project/Check Syntax ñeå kieåm tra loãi. Neáu coù loãi cöûa soå Messages
phía döôùi seõ hieän thoâng baùo loãi vaø ta phaûi söûa loãi tröôùc khi bieân dòch tieáp. Trong file treân
khoâng coù loãi neân ta nhaán Shift_F9 hoaëc vaøo menu Project/Make ñeå bieân dòch ra file Hex.
1 cöûa soå Information xuaát hieän thoâng tin veà caùc thoâng soá söû duïng IC. Nhaán OK ñeå ñoùng
laïi. Theá laø ñaõ xong vieäc soaïn thaûo file, baây giôø ta coù theå chaïy chöông trình naïp SPI Flash
Programmer ñeå naïp cho VDK roài.

HEÁT!

Ngaøy 16-18/12/2006
Nguyenhop29

You might also like