Sari la conținut
ELFORUM - Forumul electronistilor

Pic explicare cod incepator


winner23

Postări Recomandate

Salut,

Am si eu o rugaminte imi poate explica cineva cum functioneaza urmatoarea secventa de cod? Mentionez ca am gasit-o intr-un program si fiind incepator nu am inteles cum functioneaza ...dupa parerea mea ar trebui sa intre in ciclu infinit dar nu o face.

;---------------------------------------------------------------------------WAIT_100ms   ;---------------------------------------------------------------------------;intarziere de 100 ms     		movlw   .129		movwf   Waux2_SYS_LOOP6			movlw   0		movwf   Waux1_SYS_LOOP7			decfsz  Waux1,f		goto    _SYS_LOOP7		decfsz  Waux2,f		goto    _SYS_LOOP6	;2+1+1+129*(2+256*3+1+2)=99,721 ms		movlw   .93		movwf   Waux1_SYS_LOOP8		decfsz  Waux1,f		goto    _SYS_LOOP8		decfsz  Waux2,f		;+2+93*3=100,002 ms		return			;+2=100,004 ms;---------------------------------------------------------------------------
dupa parerea mea ...ar trebui sa intre in ciclu infinit la sys loop 07 deoarece are o trimitere neconditionata (goto) mentionez ca am cunostinte de java si c /c++ asa ca va rog sa explicati cat mai 'babeste' deoarece nu m-am mai lovit de asm. Deasemenea nu inteleg ce este cu toate calculele de milisecunde .Va multumesc anticipat
Link spre comentariu
  • Răspunsuri 3
  • Creat
  • Ultimul Răspuns

Top autori în acest subiect

  • winner23

    2

  • Eugen_B

    1

  • MatyC

    1

Top autori în acest subiect

Acolo calculeaza numarul de cicluri necesare pentru executia acelei bucati de cod. "goto" foloseste 2 cicluri, "movlw" 1 ciclu si tot asa. Durata unui ciclu este dependenta de frecventa de tact. Practic este 1/(FOSC/4) la marea majoritate a microcontrolerelor produse de microchip si se noteaza cu Tcy. Mai multe informatii gasesti si aici http://www.microchip.com/forums/m424143-print.aspx.

Link spre comentariu

Creează un cont sau autentifică-te pentru a adăuga comentariu

Trebuie să fi un membru pentru a putea lăsa un comentariu.

Creează un cont

Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!

Înregistrează un nou cont

Autentificare

Ai deja un cont? Autentifică-te aici.

Autentifică-te acum



×
×
  • Creează nouă...

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.Termeni de Utilizare si Ghidări