HOME PROJETOS PROGRAMAÇÃO |
TM0_SET residual,prescaler
A macro TM0_SET residual,prescaler configura o TMR0 mas não habilita sua interrupção nem liga o timer.
O parâmetro residual deverá ser o valor a ser carregado no timer para início de contagem. O timer iniciará a contagem nesse valor, incrementando o contador em intervalos de tempo determinados pelo produto entre "ciclo de instrução" e valor especificado no parâmetro prescaler que pode ser 1, 2, 4, 8, 16, 32, 64, 128 ou 256.
Para trabalhar no modo de interrupção, usa-se a macro TM0_INTERRUPT logo após a macro TM0_SET para configurar a interrupção e, na rotina ISR, usa-se a macro TM0_RETFIE para reabilitar as configurações originais, reabilitar a interrupção e limpar o flag do TMR antes de retornar.
Para trabalhar no modo "polling", usa-se a macro TM0_SET para configurar o timer e a macro TM0_POLLING para fazer o teste de estouro do timer.
. . TM0_SET .0, .32 ; configura o timer TM0_ON ; liga o timer TM0_POLLING ; espera o timer estourar TM0_OFF ; desliga o timer . . |
porvec CODE 0x000 ; power/on reset vector goto inicio ; inicio do programa intvec CODE 0x004 ; vetor de interrupcoes goto flih ; rotina de interrupcao inicio . . . TM0_SET .40000, .1 ; configura o timer TM0_INTERRUPT ; habilita interrupcao do timer TM0_ON ; liga o timer . . . flih . ; inicio da rotina de interrupcao . . . . TM0_RETFIE ; restaura TMR0 p/ proxima rodada retfie ; retorna da interrupcao |
H P S P I N Desde 04 de Março de 2010 Atualização: 04 de May de 2024 |