📄 da.asm
字号:
.title "ex9"
.global _c_int00
.mmregs
.def cos_generate,end_of_cose
.def d_cos_delay1,d_cos_delay2,d_theta,d_cosx
d_cos_delay1 .usect "cos_vars",1
d_cos_delay2 .usect "cos_vars",1
d_theta .usect "cos_vars",1
d_cosx .usect "cos_vars",1
k_cos_delay1 .set 06602h ;cos(0.5)*0.8
k_cos_delay2 .set 064d8h ;cos(10)*0.8
k_cos_theta .set 07f83h ;cos(5)
k_2 .set 2h
k_256 .set 256
COSDATA .usect "cos_data",256
DR_ADDR .set 8FFFh ;double ram address
AD_ADDR .set 9003h
DA_ADDR .set 9100h ;CS,LDAC .WR+IOSTRB->L1. LDAC WRITE;CS CHIP SELECT; L1
JT_ADDR .set 1001h
RAMADDR .set 8000h
SM_ADDR .set 1003h
FG_ADDR .set 1002H
DR_DATA .set 60h ;double ram data
AD_DATA .set 61h
DA_DATA .set 62h
;.data
;.word 0000h,01100h,2200h,03300h,4400h,05500h,6600h,07700h,8000h,9100h,0A200h,0B300h,0C400h,0D500h,0E600h,0F700h
.sect ".vectors"
reset: B _c_int00
NOP
NOP
.space 15*4*16
int0: B _dpj
NOP
NOP
int1: B _dpj
NOP
NOP
int2: B _dpj
NOP
NOP
.space 13*4*16
.text
_c_int00:
LD #0h,DP
STM #3000h,SP
RSBX INTM
STM #07FFFh,SWWSR
SSBX XF ;XF=1
ST #1007h,CLKMD ;工作在20MHz
RPT #0FFh
NOP
STM #0ffffh,IFR
ORM #000h,IMR
RSBX SXM
STM #2000H,AR0
ST #0,DA_DATA
RPT #1000
ST #00H,*AR0+
bbb ; call coshapp
nop
nop
; b bbb
;**********三 角 波 *********************
LOOP ST #0H,DA_DATA
LOOP1 NOP
PORTW DA_DATA, DA_ADDR
ADDM #1,DA_DATA
CMPM DA_DATA,#02FFH
BC LOOP2,TC
B LOOP1
LOOP2 PORTW DA_DATA,DA_ADDR
LD DA_DATA,A
SUB #1,A
STL A,DA_DATA
CMPM DA_DATA,#0000H
BC LOOP,TC
B LOOP2
NOP
BANZ LOOP1,*AR5-
ST #1000h,AR5
B LOOP
_dpj: nop
nop
nop
aaa nop
b aaa
delay STM #0f0h,AR7 ;延时子程序
BANZ $,*AR7-
BANZ delay,*AR6-
RET
coshapp SSBX FRCT
ST COSDATA,AR5
NOP
;STM #600H,SP
LD #d_cos_delay1,DP
NOP
STM #d_cos_delay1,ar3
STM #d_theta,AR4
RPTZ A,#3
STL A,*AR3+
STM #1,AR0
STM #d_cosx,AR2
STM #k_2,BK
;STM #k_256-1,BRC
NOP
STM #d_cos_delay1,AR3
ST #k_cos_delay1,*AR3+
ST #k_cos_delay2,*AR3
STM #d_cos_delay1,AR3
ST #k_cos_theta,d_cosx
cos_generate
; RPTB end_of_cose
MPY *AR2,*AR3+0%,A
SUB *AR3,15,A
SFTA A,1,A
STH A,*AR3
sth a,COSDATA
rpt #400
nop
PORTW COSDATA,DA_ADDR
; MVDD *AR3,*AR5+
NOP
end_of_cose
B cos_generate
cosend ret
.end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -