reikia padėti suprasti šio delsimo kodas!

G

Ghalebi

Guest
Salam everyone,Aš naudoju PIC16F84A su 4 MHz oscillator kai tikslu ..
ir nors šeriami mane su šiais kodais, siekiant plėtoti 5 sekundes greičiau ..Kodas

; 5 sekundes.

DELAY5

CLRF TMR0; START TMR0.

LOOPB

MOVF TMR0, W; SKAITYTI TMR0 Į W.

SUBLW ,160, laikas - 160

STATUSAS BTFSS, ZEROBIT; keista diffrence

GOTO LOOPB; Skirtumas nėra nulis

RETLW 0; laikas yra 160, grįžti.
 
Please help ..

<img src="http://www.edaboard.com/images/smiles/icon_sad.gif" alt="Liūdnas" border="0" />
 
Vidaus fosc laikrodis 32 768Hz, Prescaler 1:256

MCU laikrodis fosc / 4 = 8192Hz

Produkcijos iš Prescaler yra 8192Hz / 256 = 32Hz

Laikotarpis yra T = 1 / f = 1 / 32Hz = 0,03125 s

Vėlavimas t x 160 = 0,03125 s x 160 = 5s

Šis kodo fragmentą yra blogai, bandymas Zero is'nt patartina.

 
Thanx a lot vyras, taip aišku ..

bet u didnt kaip fragmentas, galėtų u duoti UR pasiūlymą tobulinti ji ..

Ačiū

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Šypsotis" border="0" />
 
Štai kodas

Kodas

; 5 sekundes, fosc 32 768Hz

DELAY5

CLRF TMR0; Išvalyti TMR0.

LOOPB

MOVF TMR0, W; SKAITYTI TMR0 Į W.

SUBLW ,160, laikas - 160

BTFSS STATUS, C; keista ne skolintis

GOTO LOOPB;

RETLW 0; laikas yra 160, grįžti.
 
Dar kartą ačiū, pone,
bet whats su tikrinimo Carry bitų vietoj nulis šiek tiek skirtumas!

O ką jei aš dirbu fosc = 4 MHz ..

Linkėjimai

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Šypsotis" border="0" />
 
Kodas

;--------- Kintamojo dydžio apibrėžimus

# define RAM_Start 0x20

CBLOCK RAM_Start

counterLo

counterMi

counterHi

ENDC

;----------------------------------------------

; Fosc = 4MHz, vėlavimo 4,999994 s

;----------------------------------------------

delay5 2 (iš skambutis)

movlw 0x70; 3

movwf counterLo 4;

movlw 0x10, 5

movwf counterMi 6;

movlw 0xF9 7;

movwf counterHi 8;

kilpa

incf counterLo, F 1;

btfsc STATUS, Z; 3

incf counterMi, F, 4

btfsc STATUS, Z; 6

incf counterHi 7;

btfss STATUS, Z; 9

goto loop; 11

retlw 0x00; 10
 

Welcome to EDABoard.com

Sponsor

Back
Top