Picproje Elektronik Sitesi

MİKRODENETLEYİCİLER => Atmel => Konuyu başlatan: ilhan_mkp - 22 Nisan 2012, 12:58:02

Başlık: 8bit işlemcide 9 girişi test etme asm ile
Gönderen: ilhan_mkp - 22 Nisan 2012, 12:58:02
arkadaşlar 8bitlik bir işlemcim var atmega16 9 girişim 3çıkışım var
girişlere göre çıkışları değiştereceğim fakat 9 biti en lolay nasıl test ederim
8biti aşağıdaki gibi kontrol ediyorum fakat 9bit olunca iş baya karışacak gibi
bu bit test olayını bana anlatabilirmisiniz avr olması şart değil mantığı anlasam yetecek


.include "m16def.inc"

.cseg
.org 0x0000
rjmp main

main:
ldi r16,0x00
out ddrc,r16 ;portc giriş

     ldi r16,0xff
out ddrd,r16 ;portd çıkış
     rjmp btknt

fw:
   sbi portd,0    ;portd0 set
   rjmp btknt

rw:
   sbi portd,1    ;portd1  set
   rjmp btknt     ;btknt etiketine atla

rst:
    cbi portd,0   ;portd0 reset
cbi portd,1   ;portd1 reset
   
btknt:
   in r17,pinc   ;pinc yi r17 yaz
   cpi r17,0xfe  ;r17 ile 0xfe değerini karşılaştır
   breq fw       ;karşılaştırma doğru ise fw ye atla
   
   in r17,pinc   ;pinc yi r17 yaz
   cpi r17,0x7e  ;r17 ile 0x7e değerini karşılaştır
   breq rw       ;karşılaştırma doğru ise rw ye atla
   
   in r17,pinc    ;pinc yi r17 yaz
   cpi r17,0xf0   ;r17 ile 0xf0 değerini karşılaştır
   breq rst       ;karşılaştırma doğru ise rw ye atla
   
   rjmp btknt    ;btknt atla

Başlık: Ynt: 8bit işlemcide 9 girişi test etme asm ile
Gönderen: mehmet - 30 Temmuz 2012, 01:12:40
8-biti taşıyan değişken gibi yine 8-bitlik bir değişken
daha tanımla, 9.biti kontrol etmek için. Bu değişkenin
0-1 olma durumunu denetleyerek sorunu çözebilirisin.

Saygılar...