zxb1.asm
来自「正弦函数发生程序,可以在C中嵌套,是工程文件 测试通过」· 汇编 代码 · 共 69 行
ASM
69 行
;****************************************************
;* 文件名: zxb1.asm *
;* 功 能: 用查询(循环)方式产生正弦波 *
;****************************************************
.include "F2407REGS.H" ;引用头部文件
.def _c_int0
.bss A,1
.bss B,1
.bss C,1
.bss Y1,1
.bss Y0,1
OutBuf .equ 300h
.text
_c_int0
SETC INTM
CLRC SXM
CLRC OVM
CLRC CNF
LDP #0E0H
SPLK #82FEH,SCSR1 ;CLKIN=10 M,CLKOUT= 20M
SPLK #0E8h,WDCR ;关看门狗
LDP #0
SPLK #0002h,IMR ;允许INT2中断
SPLK #0FFFFh,IFR ;清所有中断标志
LDP #00H
;正弦波频率f=100Hz,采样频率Fs=10KHz,定标Q14
SPLK #07fbfH,A ;系数A
SPLK #0c000H,B ;系数B
SPLK #0405H,C ;系数C
SPLK #00H,Y0
SPLK #405H,Y1
;正弦波频率f=1KHz,采样频率Fs=10KHz,定标Q14
; SPLK #0678DH,A ;系数A
; SPLK #0c000H,B ;系数B
; SPLK #025A2H,C ;系数C
; SPLK #00H,Y0
; SPLK #25A2H,Y1
LAR AR6,#OutBuf ;输出波形存放起始地址
LAR AR3,#127
loop ;通用定时器1中断入口
LACC #00H
LDP #00H
LT Y0
MPY B
LTD Y1
MPY A
APAC
SACH Y1,2 ;将y(k)保存,以便下次计算y(k+1)时用
MAR *,AR6
SACH *+,2,AR3 ;输出波形存放300起始地址
BANZ loop
WAIT NOP
B WAIT
END
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?