atmel avr kod yazma ve programlama örneği

Daha önce atmel avr mikrodenetleyiciler ile hazırlanmış projeler yayınlamıştım. Bugün http://mk102.blogspot.com sitesinde yayınlanan atmel avr'de kod yazma ve yazılan kodların mikrodenetleyiciye yüklenmesiyle ilgili bir yazıyı sizlere aktaracağım.
Bu sitede atmel, pic, intel işlemciler hakkında hazırlanmış işinize yarayabilecek yazılara ulaşabilirsiniz. Siteyi hazırlayan ve bilgilerini bizlerle paylaşanlara teşekkür ederim.
Alıntı yapılan siteye
buraya tıklayarak ulaşabilirsiniz.
Aşağıda Atmel AVR AT90S8515 mikrodenetleyici için yazılmış kod ve hex kodunun proteus'ta çalıştırılmasını görebilirsiniz. Atmel programlayıcı devrelerine ulaşmak için
buraya tıklayınız...

Atmel AVR assembly ile programlamaAtmel mikrokontrolleri assembly ile programlamak için başlangıç aşamasında basit bir program yapıp bunu AVR studio programında derleyip simule edeceğiz,sonrasında ISIS de kurup çalıştıralım...Öncelikle AVR studio(assembly derleyicisi,assembler) programı aşağındaki linkten kayıt olup indirip kurabilirsiniz..kayıt oluktuktan sonra
Direk link ATmel AVR studio indir(download)http://www.atmel.com/dyn/resources/prod_documents/aStudio4b528.exe
Kurulumu yaptıktan sonra açılış ekranında yeni proje oluşturalım.Bu kısımda bizden dosya ismini,kayıt yapılacağı yeri ve simule edilecek entegreyi seçmemizi vb. ayarları yapmamızı ister...
Simule edeceğimiz Atmel AVR AT90S8515 seçeriz,boş proje sayfamız ekrana gelir..


Proje sayfamız oluşturduktan sonra assembly dili ile komutlarımızı yazmaya başlayalım. örneğimizde portB ye bağladığımız ledleri flip-flop yani basit bir aç-kapa olayını yapalım.
.NOLIST
.INCLUDE "8515def.inc"
.LIST
.DEF mp=R16
RJMP
mainmain:
LDI mp,0b11111111
OUT DDRB,mp
loop:
LDI mp,0x00
OUT PORTB,mp
LDI mp,0xFF
OUT PORTB,mp
RJMP loop
AVR studio programında kodları derleyip çalıştırıyoruz,programda proje dosyamızı .aps uzantısı ile kayıt edilir.




Derlemiş olduğumuz .hex uzantılı dosyayı proteusta lojik problarla çalışıralım...

Atmel assembly örnek2 program
;*************************************************
;*Bu programda AT90S1200-12PI@4MHz ile
;*flash uygulaması 3 nolu çıkışı basit bir zaman
;*gecikmesiyle on-off yapılır....
;*************************************************
.include "1200def.inc"
;tanımlama dosyamızrjmp RESET
;program kodlarının başladığı nokta.def T2=r16
;T2 olarak tanımladığımız register
;********alt program*****************************
longDelay: ;etiket
ldi T2,05 ;T2 içerisine 05 değerini atadık
delay_1: ;etiket
dec T2 ;1 azalt
brne delay_1 ;sonuca göre devam
ret ;geri dönüş
equ led=3 ;led adına 3 atadık
;*******ana program******************************
RESET: ;etiket
sbi DDRD,led ;burda DDRD registerinin ledi yani 3 nolu pini çıkış yaptık..
flash: ;etiket
sbi PORTD,led ;LED on,
rcall longDelay ;alt programa git
cbi PORTD,led ;LED off
rcall longDelay ;alt programa git
rjmp flash ;sonsuz döngü

Yorumlar

Popüler Yayınlar:

grup priz ara kablo yapımı

gsm sinyal seviyesi asu dbm nedir

chrome ile programsız video nasıl indirilir

elektrikli fırın devre bağlantı şeması

dc motor yönü değiştirme devresi

elektronik malzeme komponent karşılık online site