• Anasayfa
    • » micelk
      • » Atmel AVR programlama-Yapılmış Devre Projeler

Atmel AVR programlama-Yapılmış Devre Projeler

Atmel mikrokontrolleri assembly ile programlamak için başlangıç aşamasında basit bir örnek yapıılmıştır. AVR studio programında derleyip simule edilmiş,sonrasında ISIS de çalıştırılmış.Öncelikle AVR studio(assembly derleyicisi,assembler) programı aşağındaki linkten kayıt olup indirip kurabilirsiniz..

Sisteme Kayıt olduktan sonra indirmek için:
http://www.atmel.com/forms/software_download.asp?fn=dl_aStudio4b528.exe

Direk indirmek için:
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...

atmel avr settings ayarları

Simule edeceğimiz Atmel AVR AT90S8515 seçeriz,boş proje sayfamız ekrana gelir..

atmel avr entegre seçimi

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.

atmel avr simulayon ekranı

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

atmel avr proteus görünü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ız
rjmp 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ü


PORTD portunu çıkış yapalım,çıkışa bağlı ledleri yanık duruma getirelim,ben biraz tembel olduğum için D portuna lojik prob bağlayarak test yapıyor.

Not defterimizi veya boş proje dosyası açıyoruz, aşağıdaki kodlarımızı yazalım

;======================================
;ali veya velinin programı:P
;bu ksımları derleyici görmezden gelir ,
;yani sen nekadar yazarsan yaz derleyici bu kısmı atlayacaktır
;======================================
.include "tn2313def.inc" ;bu dosyanın içerisinde attiny 2313 tanımlamaları var
;======================================
.cseg ;daha önceki konularda bu (sayaç) yönergeyi yazmıştım,kod segmenti
.org 0x0000 ;kodlarımızı bu adresten başlatıyoruz.
.def bos=R16 ;bunu biraz değişiklik olması açısından ekledim,bos kutu:P
rjmp reset ;bu komut reset etiketine gitmesini söylüyor
;======================================
reset: ;etiket
ldi bos,0b00000111 ;portd ye, 3 biri bos kutuya attık
out ddrd,bos ;kutunun içini ddrd registerine atınca çıkış yapmış olduk
;======================================
baslayalim: ;etiket
ldi bos,0b00000101;ne gerek var 2 register kullanmaya şimdilik bir tane yetiyor
out portd,bos ;portdye bos registerini yaz
;======================================
sonsz: ;etiket
rjmp sonsz ;sonu olmayan bir döngüye girer

Avr Studio görünümü:

attiny avr görünümü

Proteus görünümü,kütüphaneler eksik olsuğundan AT90S2313 ile çalıştırdım.

atmel avr proteus

bu programda reset sonrasında ledler 1 konumunda ve her buton kendisine kaşılık gelen ledi lojik 0'a çekiyor...

;==================================
;veri transfer örneği program2:P
;==================================
;==========tanımlamalar============
.include "tn2313def.inc"; attiny2313 tanımlamalar
.cseg;kod segment sayacı
.org 0x0000;kodların başlama noktası..
.def boskutu=r16;registere etiket...
.def ikincikutu=r17;registere etiket...
;==================================
rjmp reset ;programın başlaması
;==================================
reset: ;etiket
ldi boskutu,0b00000000;d portunu
out ddrd,boskutu;giriş yap
ldi boskutu,0b01111111;b portunu
out ddrb,boskutu;çıkış yap
ldi boskutu,0b01111111;pull-up direnci veya pinleri
out portb,boskutu;ilk durumda 1 veya aktif yap..
;============basla================
start:;programa başla
in ikincikutu,PINB ;pinleri oku
out portd,ikincikutu;pinleri yaz
rjmp start ;sonsuz...

Avr Studio görünümü:

avr studio simulasyon attniy

Devrenin Proteus görünümü:

attiny led atmel proteus

Atmel avr İle yapılmış projeler-devreler-programlar...(not:Açılmayan linkler için Anadizine geçiniz)

(telecart)Telefon kartı okuma projesi
http://www.serasidis.gr/circuits/telecard_reader/telecardreader.htm
http://www.serasidis.gr/circuits/safety_lock/safety_lock.htm

LCD sayıcı
http://www.serasidis.gr/circuits/lcd_counter/lcd_counter.htm

LCD keypad kullanımı
http://www.serasidis.gr/circuits/lcd_keys/lcd_keys.htm

AVR MCU programlamak için AT90Sxxxx ailesi devre şeması
http://www.serasidis.gr/circuits/avrprog/avrprog.htm

AVR ISP devre şemaları
http://www.serasidis.gr/circuits/avr_isp/avr_isp.htm

anolog dijital çevirici
http://www.serasidis.gr/circuits/Tiny26_analog/AnalogInputs.htm

VGA video adapter
http://www.serasidis.gr/circuits/AVR_VGA/avr_vga.htm

SMS ile uzaktan kontrol
http://www.serasidis.gr/circuits/smscontrol/smscontroller.htm

2 kanal RF kontrol
http://www.serasidis.gr/circuits/RF_remote_control/RF_remote_control.htm

Osilaskop--oscilloscope
http://www.serasidis.gr/circuits/AVR_oscilloscope/avr_oscilloscope.htm

Small TV termineli
http://www.serasidis.gr/circuits/TV_terminal/Small_TV_terminal.htm

USB ISP programlayıcı
http://www.serasidis.gr/circuits/usbAvrProg/usbAvrProg.htm

IR ile PC kontrol devresi
http://www.serasidis.gr/circuits/InReCoMe/InReCoMe.htm

1.000 Kht sinyal jenaratörü (ATTINY2313/AT902313/ATMEAG8515/AT908515, etc.)
http://cappels.org/dproj/1_kHz_Signal_Source/1_KHz_Sine_Wave_Generator.html

Better LC Meter Based on Atmel AVR ATTINY861 atmel programlama
http://cappels.org/dproj/EvenBetterLCMeter/Even_Better_LC_Meter.html

LC Determination by Resonant Frequency Measurement
Atmel AVR ATTINY861
http://cappels.org/dproj/lgm/lgm.html

atmel devreler (Not:Açılmayan Linkler için sitelerin Ana dizinine geçiniz)
2 line x 16 character LCD shows the calculated inductance and the oscillation frequency (ATtiny2313, AT90S2313)
http://cappels.org/dproj/nlglcm/Pretty%20Good%20LC%20Meter%20Project.html

MAX038 Function/Sweep Generator with Markers (ATtiny2313, AT90S1200A)
http://cappels.org/dproj/functsweep/functionswp.html

Frequency Meter and Pulse Generator (ATtiny2313, AT90S2313)
http://cappels.org/dproj/AVRfpls/fmpg.htm

Digital Lock-in Milliohmmeter (ATtiny2313, AT90S2313)
http://cappels.org/dproj/dlmom/dlmom.html

Digital RF Field Strength Indicator (ATtiny2313, AT90S2313)
http://cappels.org/dproj/difsi/dfsi.htm

RF Field Strength Probe (AT90S1200A)
http://cappels.org/dproj/Azpage/azpage.htm

LTD - Low Cost Telemetering Device; ATMega8 scanning voltmeter with
Morse Code output (ATMega8)
http://cappels.org/dproj/morbcn/morbcn.html

Waveform Monitor with LCD (ATtiny2313, AT90S2313)
http://cappels.org/dproj/wfcp/wfcp.htm

LCD kayan yazı vs...Not:Açılmayan Linkler için sitelerin Ana dizinine geçiniz.
Serial Interface for Truly MTC-C162DPLY-2N, 2 line X 16 char LCD display
(AVR controllers with RAM)
http://cappels.org/dproj/tlcd/tlcd.html

Serial Interface and bias supply for Seiko-Epson G1216B dot graphics display (ATtiny2313, AT90S2313)
http://cappels.org/dproj/sed/sed.htm

A 330MHz Remote Control With A Simulated Princeton Technolog PT2264 ATTINY2313
http://cappels.org/dproj/330MHz_Remote_Control_Simulationg_PT2264_with_ATTINY2313/330MHz_Remote_Control_Simulationg_PT2264_with_ATTINY2313.html

A Simple FM Stereo Transmitter (ATTINY12, ATTINY25, ATtiny2313, AT90S2313, AT90S232, or nearly any other CMOS microntroller-Yes probably even a PIC!)
http://cappels.org/dproj/FM_MPX_STEREO/SIMPLE%20FM%20STEREO%20MULTIPLEX%20ENOCDER%20CIRCUIT.html

Terminal Interface with Minimum Mass Wireless Coupler (ATtiny2313, AT90S2313)
http://cappels.org/dproj/minmassrfbase/minmassrfbu.html

Scanning Voltmeter with Minimum Mass Wireless Coupler ATMega8)
http://cappels.org/dproj/minmassrfM8/minmassrf8.html

Frequency Meter with Minimum Mass Wireless Coupler (ATtiny2313, AT90S2313)
http://cappels.org/dproj/minmassrffm/minmassrffmtr.html

LCD Display with Minimum Mass Wireless Coupler (ATtiny2313, AT90S2313)
http://cappels.org/dproj/minmassrfTruly/mmrft.html

Digital wireless for the bench top (ATtiny12)
http://cappels.org/dproj/LCRFLINK/LCRFLINK.htm

RS-232 to Wireless Instrument Data Channel (ATtiny2313, AT90S2313)
http://cappels.org/dproj/minmassrfbase/minmassrfbu.html

Frequency meter with wireless Data Channel(ATtiny2313, AT90S2313
http://cappels.org/dproj/232LINK/Fmeter%20w%20RF%20channel/rfwrfl.htm

1750 Meter Lowfer Band amplitude modulated RF source(ATtiny2313, AT90S2313)
http://cappels.org/dproj/187khzrf/187khz_RF_Source.html

A Dual Mode Superhet/Direct Conversion AM receiver for 181.818 kHz (Lowfer)
(ATtiny2313, AT90S2313)
http://cappels.org/dproj/dmrcvr/DualModeReceiver.html

AVR projeleri
http://home.arcor.de/burkhard-john/index_e.html
http://www.embedtronics.com/

Atmel havada yazı
http://hem.bredband.net/robinstridh/

Atmel AVR Disassembler
http://www.visi.com/%7Edwinker/revava/

AVR projesi 5x7 LED dot matrix pong
http://heim.ifi.uio.no/%7Ehaakoh/avr/
http://www.avr.ausis.de/

projeler
http://www.avrguide.com/
http://thomaspfeifer.net/

avr assembly
Projects based on the AVR Tiny13/15/25/2313
Investment Banker Eliminator. Tiny25 ...
http://www.ullasmann.eu/Eliminator.zip
US Telephone Tone Generator

AVR TinyX3 Not:Açılmayan Linkler için sitelerin Ana dizinine geçiniz.
Tiny2313 Parallel Sinewave Generator.
http://www.ullasmann.eu/Parr_Sine.zip

Tiny2313 Phase Shifter.
http://www.ullasmann.eu/Phase%20Shifter.zip

Tiny2313 10-Bit PWM Digital Ringer.
http://www.ullasmann.eu/Digital%20Ringer_Tiny2313.zip

Tiny13 Debouncer using A2D routine.
http://www.ullasmann.eu/A2D_Debounce.zip

Tiny13 Multiple SineWave Generator.
http://www.ullasmann.eu/SineWaves.zip

Tiny13 Internet Connection.
http://www.ullasmann.eu/Tiny_Internet%20Code.zip

Tiny13 Proportional Integral Derivitative Controller (PID).
http://www.ullasmann.eu/Tiny13%20Pid%20Controller.zip

Tiny13 Digital Low PassFilter .
http://www.ullasmann.eu/Lo%20Pass.zip

Tiny13 Led Light Detector.
http://www.ullasmann.eu/Opto.zip

Tiny13 Power Supply Unit (PSU).
http://www.ullasmann.eu/Psu.zip

Tiny13 Maximum Power Point Tracker (MPPT).
Tiny13 RGB Color Meter.
Tiny13 Color Sensor.


AVR TinyX5 Not:Açılmayan Linkler için sitelerin Ana dizinine geçiniz.
Investment Banker Eliminator. Tiny25 ...
Sweep Sine wave generator. Tiny25 ...
50/60HZ. 3 Phase Sine wave generator. Tiny25 ...
Novel Capacitive Sensor. Tiny25 ..
Macro Sine Generator. Tiny25 ...
PT100 RTD Temperature Logger. Tiny25 ...
http://www.ullasmann.eu/PT100.zip

Serial Software Trick. Tiny25 ...
Temperature Logger. Tiny25 ...
Debouncer using DSP routine. Tiny25 ...
Input Multiplexor. Tiny25 ...
US Telephone Tone Generator. Tiny25 ...
8-Bit International Telephone Ringer. Tiny25 ...
Pyrameter. Tiny15 ..
Ammeter. Tiny15 ...
http://www.ullasmann.eu

AVR Handy
Basic Avr Handy Info from the experts
http://www.spletomat.com/tech/a1018
Handy Accu Charger.
http://www.ullasmann.eu/Pdf/charger.pdf
Tiny to Handy SimCard Interface
http://www.ullasmann.eu/Pdf/Handy%20to%20Tiny.pdf
Handy Temperature Logger
http://www.ullasmann.eu/Sim_Tiny45.zip

http://www.hanssummers.com/electronics/equipment/wind/index.htm
http://www.simister.net/%7Ewayne/onebutton/otherpro.htm
http://www.cappels.org/dproj/Home.htm
http://attiny.com/


Not:Açılmayan Linkler için sitelerin Ana dizinine geçiniz.



Diğer Konular:

Derleyici Yönergeleri

SISO kullanımı (serial-in,serial-out)

Mikroişlemci Denetim Sistemi

Yeniden Adresleme Yönergeleri ASEG- CSEG-DSEG

intel 8251 A Programlanabilir İletişim Arabirimi

Butonlarda Oluşan Arklar

Windows 16 bit x86 Debug ile Yapılmış Örnek

Boot Sektöre Nasm ile 16 bit Uygulama

RFID chip ile Yapılmış Proje ve linkler

PSoC Programmable System on Chip


Geri dön