Assembly

Disponível somente no TrabalhosFeitos
  • Páginas : 3 (736 palavras )
  • Download(s) : 0
  • Publicado : 22 de janeiro de 2013
Ler documento completo
Amostra do texto
2. Elaborar um programa em que todos os leds do PORTB se acendam e apaguem no período de 1ms, e depois aumente esse tempo para 100ms.

R: Agora utilizaremos o mesmo hardware proposto , porém nãoutilizaremos o botão, pois estaremos nos familiarizando com a rotina de DELAY. Na rotina principal teremos a instrução CALL DELAY, que será o responsável por chamar a rotina delay de 1 ms, isso só épossível fazendo o microcontrolador perder um tempo decrementando alguns registradores, que serão criados pelo usuário, pois cada instrução no PIC é executada muito rapidamente (1us com clock de 4MHz) enesse exemplo o delay será de 1ms, tempo ainda muito baixo para ver os Leds acenderem e apagarem (só é possível verificar usando o osciloscópio), mas a intenção é compreender como essa rotina éexecutada e dentro dela é encontrado o seguinte código

DELAY
MOVLW .249
MOVWF TEMPO
DELAY1

NOP
DECFSZ TEMPO, F
GOTO DELAY1

RETURNNo label DELAY a variável tempo criada pelo usuário (para isso declare-a dentro do da diretiva CBLOCK 0x20) irá conter o valor 249 e em DELAY1 a instrução NOP gasta um ciclo de máquina sem fazernada e então a instrução DECFSZ irá decrementar a variável TEMPO, gastando mais um ciclo e a instrução GOTO irá gastar dois ciclos de máquina e irá para o label DELAY1, assim até quando o registradorTEMPO for decrementado e o valor nele contido for zero então nesse momento gasta-se mais 2 ciclos de máquina pois haverá um salto que pula uma linha encontrando a instrução RETURN que irá voltar parao programa principal. Nota-se que o programa irá ficar no loop DELAY1 que gasta 4 ciclos x249, que é o valor contido em tempo gerando aproximadamente 1ms.
Lembrando que cada instrução é executadaem 1 ciclo de máquina e instruções que provocam desvio no programa irão gastar 2 ciclos e então com um oscilador de 4 MHz, cada instrução levará 1us para ser executada.

Na internet encontra-se o...
tracking img