Tush 0 Report post Posted June 15, 2009 boas.. precisava de saber como e que posso fazer para ter um ciclo de 3 segundos a programar no PIC P16F627, ja tou farto de dar voltas e nada!!! alguem me pode ajudar?? COUNT EQU 0X2C … DELAY MOVLW 100 MOVWF COUNT LOOP DECFSZ COUNT,1 GOTO LOOP RETURN cumps Quote Share this post Link to post Share on other sites
KilL_MaSTeR 232 Report post Posted June 15, 2009 eish...já não me lembro de nada dessa sintaxe Quote Share this post Link to post Share on other sites
SoKo 0 Report post Posted June 15, 2009 se fosse no 8051 ainda era gajo de ajudar, nesse não sei... essa sintax, pelo que sei de 8051, anda lá perto para o que queres (se a percebi bem). o que eu fazia era ver quantos ciclos maquina demorava o decrementar uma variavel (e as restantes instruções necessárias), depois fazia as contas para 3segundos Quote Share this post Link to post Share on other sites
Tush 0 Report post Posted June 15, 2009 se fosse no 8051 ainda era gajo de ajudar, nesse não sei...essa sintax, pelo que sei de 8051, anda lá perto para o que queres (se a percebi bem).o que eu fazia era ver quantos ciclos maquina demorava o decrementar uma variavel (e as restantes instruções necessárias), depois fazia as contas para 3segundospois e mais o menos isso..mas podias m explicar como e que fazias as contas?? isto e para um trabalho pratico e o prof nao deu noções disso..ando la perto mas nao da..sei que 1 seg sao 5M de instruçoes mas o problema e por isso em pratica..cumps Quote Share this post Link to post Share on other sites
SoKo 0 Report post Posted June 16, 2009 no 8051 tens o timer que te mete a contar, e faz auto reload sempre que chega ao fim da contagem e mesmo assim nao passaram, por exemplo, os 3 segundos. esse nao faço a minima se tem timer. o que fazia era ver em segundos quanto demora um ciclo maquina. depois com uma regra 3 simples sabes quantos ciclos maquina precisas para 3 segundos. tive microprocessadores o ano passado... ja esqueci algumas coisas, mas é +- assim. o datasheet do micro deve, muito provavelmente, ter o numero de ciclos maquina que demora cada instrução. ps: no time é carregar o valor maximo possivel e decrementa-lo (ou o inverso), se pela regra 3 simples n precisares de decrementar todo o valor, o que duvido muito para 3 segundos, usas um registo de controlo ou qq coisa assim. Quote Share this post Link to post Share on other sites
Tush 0 Report post Posted June 16, 2009 no 8051 tens o timer que te mete a contar, e faz auto reload sempre que chega ao fim da contagem e mesmo assim nao passaram, por exemplo, os 3 segundos. esse nao faço a minima se tem timer.o que fazia era ver em segundos quanto demora um ciclo maquina. depois com uma regra 3 simples sabes quantos ciclos maquina precisas para 3 segundos.tive microprocessadores o ano passado... ja esqueci algumas coisas, mas é +- assim.o datasheet do micro deve, muito provavelmente, ter o numero de ciclos maquina que demora cada instrução.ps: no time é carregar o valor maximo possivel e decrementa-lo (ou o inverso), se pela regra 3 simples n precisares de decrementar todo o valor, o que duvido muito para 3 segundos, usas um registo de controlo ou qq coisa assim.Ja consegui resolver o problema. Consegui resolver o problema sem usar o Timer mexi so no Delay Obrigado pela ajuda ;) Cumps Quote Share this post Link to post Share on other sites
SoKo 0 Report post Posted June 16, 2009 no 8051 tens o timer que te mete a contar, e faz auto reload sempre que chega ao fim da contagem e mesmo assim nao passaram, por exemplo, os 3 segundos. esse nao faço a minima se tem timer.o que fazia era ver em segundos quanto demora um ciclo maquina. depois com uma regra 3 simples sabes quantos ciclos maquina precisas para 3 segundos.tive microprocessadores o ano passado... ja esqueci algumas coisas, mas é +- assim.o datasheet do micro deve, muito provavelmente, ter o numero de ciclos maquina que demora cada instrução.ps: no time é carregar o valor maximo possivel e decrementa-lo (ou o inverso), se pela regra 3 simples n precisares de decrementar todo o valor, o que duvido muito para 3 segundos, usas um registo de controlo ou qq coisa assim.Ja consegui resolver o problema. Consegui resolver o problema sem usar o Timer mexi so no Delay Obrigado pela ajuda ;) Cumpsde nada ;) Quote Share this post Link to post Share on other sites