assembly da gecikme kodu

atakan45

Üye
Katılım
27 Mar 2010
Mesajlar
20
Puanları
1
Yaş
31
merhaba sevgili arkadaşlarım size bir sorum olacak.ben assembly dilindee gecikme vermek istiyorum bunu için kullanmam gereken kod hangisidir.pıc basic pro da delay ms yazarak bir gecikme verebiliyordum.assemblyda nasıl yapabilirim bunu teşekkürler.
 
merhaba sevgili arkadaşlarım size bir sorum olacak.ben assembly dilindee gecikme vermek istiyorum bunu için kullanmam gereken kod hangisidir.pıc basic pro da delay ms yazarak bir gecikme verebiliyordum.assemblyda nasıl yapabilirim bunu teşekkürler.

1 s gecikme örneği:
Kod:
; Delay = 1 s
; Clock = 4 MHz

; delay = 1 s = 1000000 cycles
; Error = 0 %

	cblock
	i1
	i2
	i3
	endc

			;999997 cycles
	movlw	0x08
	movwf	i1
	movlw	0x2F
	movwf	i2
	movlw	0x03
	movwf	i3
Delay_0
	decfsz	i1, f
	goto	$+2
	decfsz	i2, f
	goto	$+2
	decfsz	i3, f
	goto	Delay_0

			;3 cycles
	goto	$+1
	nop
 
Merhaba,
Amatörce bir yazılım şeklini de ben vereyim.
SAYAC0 ve SAYAC1 için bellekte yer ayırmanız gerekiyor.

;***********
BEKLE
MOVLW H'FF'
MOVWF SAYAC0
DONGU0
MOVLW H'FF'
MOVWF SAYAC1
DONGU1
DECFSZ SAYAC1,F
GOTO DONGU1
DECFSZ SAYAC0,F
GOTO DONGU0
RETURN
;************
 

Forum istatistikleri

Konular
129,838
Mesajlar
930,669
Kullanıcılar
452,673
Son üye
loran laran

Yeni konular

Geri
Üst