COP8SA-DM National Semiconductor, COP8SA-DM Datasheet - Page 210

no-image

COP8SA-DM

Manufacturer Part Number
COP8SA-DM
Description
MODULE DEBUGGING FOR COP8SA
Manufacturer
National Semiconductor
Datasheet

Specifications of COP8SA-DM

Module/board Type
Debugger Module
For Use With/related Products
Cop 8
Lead Free Status / RoHS Status
Lead free / RoHS Compliant
Other names
*COP8SA-DM
;This is a general purpose light dimmer program
;it uses a 10 MHz clock (1 us instruction cycle time)
BEG:
HI:
DOIT:
LO:
D1:
INIT:
BEGG:
THER:
LP2:
LP3:
4-18
COP8SAx7 APPLICATION IDEAS
.INCLD COP888.INC
.TITLE TIMER, ‘TIMER APPLICATION EXAMPLE’
.SECT
TEMP:
LEVEL:
FIN:
REG1:
.SECT
LD
LD
LD
LD
LD
LD
LD
LD
LD
LD
IFBIT
JP
JP
IFBIT
JP
JSR
IFBIT
JP
JMP
IFBIT
JP
JP
JSR
IFBIT
JP
JP
JSR
LD
IFEQ
JP
INC
X
JP
LD
LD
DEC
X
LD
IFEQ
JP
JP
LD
JP
IFBIT
JSR
TRIAC, REG
.DSB 1
.DSB 1
.DSB 1
.DSB 1
MAIN,ROM
FIN,#000
LEVEL,#040
PORTGC,#000
PORTGD,#004
CNTRL,#080
PSW,#000
TMR1LO,#07D
TMR1HI,#000
T1RALO,#0EB
T1RAHI,#003
2,PORTGP
HI
BEG
2,PORTGP
HI
DELAY
2,PORTGP
BEG
INIT
2,PORTGP
D1
LO
DELAY
2,PORTGP
DOIT
LO
TIMER
A,FIN
A,#015
THER
A
A,FIN
FIRE
FIN,#000
A,LEVEL
A
A,LEVEL
A,LEVEL
A,#000
LP2
LP3
LEVEL, #040
FIRE
5,LEVEL
ADD
;INITIALIZATIONS
;Temporary storage location
;Level storage location
;Fire number storage location
;Register1 definition
;Set fire number to zero
;Set sublevel to 40 Hex
;Configure Port G as all inputs
;Weak-up on pin G2
;Configure Timer T1 in autoreload mode
;Disable all interrupts
;Initialize T1 and T1RA with 0.5mS delay
;
;
;
;POWER UP SYNCHRONIZATION OR RESET SYNCH.
;If Bit G2 = 1
;then re-check bit
;else keep looping to synch up 60Hz
;If Bit G2 is still 1
;then wait until it is zero
;else test for true zero cross
;TEST FOR TRUE ZERO CROSS (Valid Transition)
;Debounce for zero cross detection
;When Bit G2 = 0, perform debounce delay
;If Bit G2 is high after the delay
;then false alarm, go back to beginning
;else go start program
;Debounce 0 to 1
;If Bit G2 is high
;then go perform debounce delay
;else loop back and wait for a 1
;Debounce delay (clean transition)
;If Bit G2 is still 1
;then go start program
;else false alarm, keep debouncing
;MAIN ROUTINE FOR INTENSIFY/DE-INTENSIFY
;A true zero cross has been detected
;Delay for 1ms to get to MAX
;Load accumulator with fire number
;If the fire number equals 15
;then finished firing, continue on
;else increment fire number
;Save new fire number
;Keep firing
;Reset fire number to zero
;Load accumulator with sublevel number
;Decrement sublevel
;Save new sublevel
;Load sublevel back into accumulator
;If sublevel = MAX level
;then go reset level
;else go check level
;Reset level to 40 Hex
;Go fire (exit)
;If current level is greater than 1F Hex
;then MAX not yet reached, add delay

Related parts for COP8SA-DM