Bom dia estou com dificuldade de acertar bases de tempo na simulação.
Segue exemplo ( teste ).
Oscilador interno à 32Khz.
FLL desacoplado.
BUS=0,016Mhz
Configuração do MTIM
;MTIMMOD=249
MOV #$F9,MTIMMOD
; MTIMCLK: CLKS=0,PS=8
MOV #$08,MTIMCLK
; MTIMSC: TOF=0,TOIE=1,TRST=0,TSTP=1
MOV #$50,MTIMSC
Após configurar coloco o MTIM para contar.
BCLR MTIMSC_TSTP,MTIMSC
Teria que gerar uma interrupção a cada 4 segundos.
Segue abaixo a ISR após a interrupção.
isrVmtim:
bset MTIMSC_TSTP,MTIMSC
bclr MTIMSC_TOF,MTIMSC
lda Count1
inca
sta Count1
cmp #255
bne loop1
brset PTAD_PTAD0,PTAD,loop2
bset PTAD_PTAD0,PTAD
bra loop1
loop2: bclr PTAD_PTAD0,PTAD
loop1:
bclr MTIMSC_TSTP,MTIMSC
RTI
Acontece que esta interrupção ocorre em m tempo muito menor que os 4 segundos da configuração que escolhi.
Percebo que o MTIMCNT está muito rápido ocasionando a comparação em um tempo muito curto.
Desde já agradeço a atenção.
SDS. André.