350
CHAPTER 11 APPLICATION OF REAL-TIME OUTPUT PORT
(2) Example of use
OSMS=#00000001B
TCL1=#00001010B
CR10=#196-1
P12=#00000.
PM12=#11110000B
RTPM=#00001111B
RTPC=#00000000B
RTBL=#00000001B
TMC1=#00000001B
CLR1
CLR1
EI
TMIF1
TMMK1
(3) SPD chart
(4) Program list
VETIM1
CSEG
DW
AT 24H
INTTM1
;**************************************************
; Stepping motor data output processing
;**************************************************
MOTER
CSEG
INTTM1:
SEL
RB3
A=RTBL
if(A < #8)
A <<= 1
else
A=#01H
endif
RTBL=A
RETI
END
; Does not use divider circuit
; MORTER_DAT: 8-bit timer 1. Count clock: 131 kHz
; Sets compare register to 1.5 ms
;
; Sets P120-P123 in output port mode
; Sets low-order 4 bits in output port mode
; Uses INTTM1 as output trigger
;
; Enables 8-bit timer 1 operation
; Clears 8-bit timer 1 interrupt request flag
; Enables 8-bit timer 1 interrupt
;
.
; Bank 3
;
; Prepares next output data
;
;
;
;
; RTPL
←
output data
;
.
INTTM1
Suitches register bank 3
A
←
RTBL (loads data currently output)
(if: A < #00001000B)
THEN
Shifts A register 1 bit to left
ELSE
A
←
#00000001B (returns to initial value)
RTBL
←
A