, , . - . , . . , , . .
TIM08, .. 20 . -, , 20 . - . 3.8.
T1MODH, (T1MODH)←$00 |
T1MODL, (T1MODL)←$A0 |
T1SC |
- (T1SC)←$40 |
I CCR |
TIM08 1? |
. 3.8. -
20
20 .
romstart | equ | $9000 | ; ; |
ramstart | equ | $0040 | ; |
vectorstart | equ | $FFFE | ; |
vectorTIM1 | equ | $FFF6 | ; |
T1SC | equ | $0020 | |
T1MODH | equ | $0023 | |
T1MODL | equ | $0024 | |
mov | $00,T1MODH | ; | |
mov | $A0,T1MODL | ; | |
bclr | 7,T1SC | ; | |
mov | #$40,T1SC | ; | |
li | ; | ||
prer: | ; ; ;; | ||
org | vectorTIM1 | ||
dw | prer | ||
end |
. .
. T1MODH, T1MODL. 16- - $0000-$FFFF, $0000-$00A0. - T1SC, .. TOF T1SC.
|
|
. T1SC $40 (%1000000):
TOF | TOIE | TSTOP | TRST | - | PS2 | PS1 | PS0 | |
TOF , ; TOF = 1, T1CNT , T1MOD.
TOIE 1, ( TOF = 1).
TSTOP , TSTOP = 1. TSTOP = 0, .
PS2PS0 T1CNT. PS2PS0 = 000, Kd = 1.
-, $0000 $00A0 , :
t = N× t
N , $00A0 = 160, t , f = 8 .
:
.
-, 20 , . , 20 .
0,5 . -, , 0,5 . - . 3.9.
T1MODH, (T1MODH)←$00 |
T1MODL, (T1MODL)←$A0 |
- (T1SC)←$46 |
I CCR |
TIM08 1? |
. 3.9. - 0,5
0,5 .
romstart | equ | $9000 | ; ; |
ramstart | equ | $0040 | ; |
vectorstart | equ | $FFFE | ; |
vectorTIM1 | equ | $FFF6 | ; |
T1SC | equ | $0020 | |
T1MODH | equ | $0023 | |
T1MODL | equ | $0024 | |
mov | $4,T1MODH | ; | |
mov | $24,T1MODL | ; | |
mov | #$46,T1SC | ; , ; | |
li | ; | ||
prer: | ; ; ; | ||
org | vectorTIM1 | ||
dw | prer | ||
end |
|
|
. .
$E4 T1MODH, $24 T1MODL. , 16- - $0000 $FFFF, $0000 $E424.
T1SC $46 (%1000110).
TOF | TOIE | TSTOP | TRST | - | PS2 | PS1 | PS0 | |
TOIE 1, ( TOF = 1).
TSTOP , TSTOP = 1. TSTOP = 0, .
PS2PS0 T1CNT. PS2 PS0 = 110, Kd = 64. , :
f = 8 .
- $0000 $424 , :
N , $424 = 58404, t , f = 125 .
:
-, 0,5 , . , 0,5 .
20 . . . , . - 20 . 3.10.
($40)←($40)-1 |
($40) = 0 -? |
$40 |
. 3.10. - 20
20 .
org | $8000 | ; | |
mov | #31,$40 | ; $40 | |
m1: | dbnz | $40,m1 | ; 1 $40 ;m1, 0 |
end |
. , $40 20 - 31. dbnz, $40 0. 0, m1, .. , , $40 0. , dbnz. , dbnz 31 .
, . ( ) :
|
|
N , tmov, tdbnz mov, dbnz , , .
f .
N:
.
TIM08 .
- . 3.11.
TIM08 .
romstart | equ | $9000 | ; |
ramstart | equ | $0040 | ; |
vectorstart | equ | $FFFE | ; |
vectorTIM1 | equ | $FFF6 | ; |
T1SC0 | equ | $0025 | |
T1SC | equ | $0020 | |
T1CH0h | equ | $0026 | |
mov | #$45,T1SC0 | ; | |
mov | #$40,T1SC | ; | |
prer: | ; ; | ||
org | vectorTIM1 | ||
dw | prer | ||
end |
(T1SC0)←$45 |
- (T1SC)←$40 |
TIM08 1? |
. 3.11. -
TIM08
, EQU , . . , , , .
mov :
mov #$45, T1SCO
, T1SC0 $45 (%1000101). T1SC0:
H0F | CH0IE | MS0B | MS0A | ELS0B | ELS0A | TOV0 | CH0MAX | |
T1SC0 CH0MAX . m -. CH0MAX = 1, Km = 1.
TOV0 T1CH0 , -. TOV0 = 0, / .
ELS0B, ELS0A . 0 1, T1CH0.
MS0B, MS0A . , T1CH0.
|
|
CH0IE = 1, 0- ( CH0F = 1).
CH0F , . 0- CH0F = 1, .
:
mov #$40, T1SC
8- - T1SC : $40 (%1000000)
TOF | TOIE | TSTOP | TRST | - | PS2 | PS1 | PS0 | |
TOF , ; TOF = 1, T1CNT , T1MOD.
TOIE 1, ( TOF = 1).
TSTOP , TSTOP = 1. TSTOP = 0, .
PS2PS0 T1CNT. PS2PS0 = 000, Kd = 1.
, .
ORG VectorTIM1 . , . .
TIM08 .
- . 3.12.
TIM08 . . T1SC0 $48 (%1001000). :
H0F | CH0IE | MS0B | MS0A | ELS0B | ELS0A | TOV0 | CH0MAX | |
0MAX = 0, , Km 0- T1CH0.
ELS0B, ELS0A 1 0, T1CH0. .
(T1SC0)←$48 |
- (T1SC)←$40 |
TIM08 1? |
. 3.12. -
TIM08
TIM08 .
romstart | equ | $9000 | ; ; |
ramstart | equ | $0040 | ; |
vectorstart | equ | $FFFE | ; |
vectorTIM1 | equ | $FFF6 | ; |
T1SC0 | equ | $0025 | |
T1SC | equ | $0020 | |
T1CH0h | equ | $0026 | |
mov | #$48,T1SC0 | ; | |
mov | #$40,T1SC | ; | |
prer: | ; ; | ||
org | vectorTIM1 | ||
dw | prer | ||
end |
0MAX = 0, , Km 0- T1CH0.
ELS0B, ELS0A 1 0, T1CH0. .
|
|