DSP实验程序Word格式.docx
- 文档编号:1539960
- 上传时间:2023-04-30
- 格式:DOCX
- 页数:18
- 大小:17.25KB
DSP实验程序Word格式.docx
《DSP实验程序Word格式.docx》由会员分享,可在线阅读,更多相关《DSP实验程序Word格式.docx(18页珍藏版)》请在冰点文库上搜索。
置堆栈指针
SSBXINTM;
禁止中断
bk0:
ST#0012h,DAT0
LD#0023h,A
ADDDAT0,A;
加法操作:
A=A+DAT0
NOP
bk1:
ST#0054h,DAT0
LD#0002h,A
SUBDAT0,A;
减法操作:
A=A-DAT0
bk2:
ST#0345h,DAT0
STM#0002h,T
MPYDAT0,A;
乘法操作:
A=DAT0*T
bk3:
ST#1000h,DAT0
ST#0041h,DAT1
RSBXSXM;
无符号除法操作:
DAT0÷
DAT1;
结果:
DAT2:
商;
DAT3:
余数
LDDAT0,A
RPT#15
SUBCDAT1,A
STLA,DAT2
STHA,DAT3
bk4:
ST#0333h,DAT0
SQURDAT0,A;
平方操作:
A=DAT0*DAT0
bk5:
ST#0034h,DAT0
ST#0243h,DAT1
ST#1230h,DAT2
ADD3DAT0,DAT1,DAT2,DAT3;
三数相加操作:
DAT3=DAT0+DAT1+DAT2
bk6:
Bbk0;
循环执行
.end
实验二、寻址实验
ex2.asm*
数据存储器和程序存储器实验*
*Copyright(C)SanZhiElectronic,AuthorZpin*
ex2"
.globalreset,_c_int00
DAT0.set00H
DAT1.set01H
DAT2.set02H
DAT3.set03H
DDAT0.set2004H
DDAT1.set2005H
DDAT2.set2006H
DDAT3.set2007H
PDAT0.set1f00H
PDAT1.set1f01H
PDAT2.set1f02H
PDAT3.set1f03H
.sect"
.vectors"
;
中断向量表
reset:
B_c_int00;
复位向量
.space4*126
DELAY.macroCOUNT
STMCOUNT,BRC
RPTBdelay?
delay?
:
NOP
.endm
LD#40h,DP;
置数据页为2000h~207Fh
STM#3000h,SP;
STM#07FFFh,SWWSR;
置外部等待时间
SSBXXF;
置XF以实现二极管闪烁
DELAY#0FFFFh
RSBXXF
SSBXXF
;
bbk0
ST#1234h,DAT0;
立即数寻址
ST#5678h,*(DDAT1)
MVDKDAT0,DDAT0;
绝对地址(dmad)寻址
MVKDDDAT1,DAT1
MVDPDAT0,PDAT0;
绝对地址(pmad)寻址
MVDPDAT1,PDAT1
LD#PDAT1,A;
累加器寻址
READADAT2
ST#3210h,DAT3;
直接寻址(DP指针)
SSBXCPL
ST#9876h,DAT3;
直接寻址(SP指针)
RSBXCPL
bk7:
STM#DDAT3,AR0;
间接寻址
ST#9876h,*AR0
bk8:
STM#8888h,T;
存储器映射寄存器寻址
bk9:
PSHMT;
堆栈寻址
POPMT
bk10:
STM#4000h,AR0;
程序存储器到数据存储器的复制
RPT#100h
MVPD1000H,*AR0+
bk11:
B_c_int00
实验三、硬件中断实验
ex6.asm*
硬件中断实验*
ex6"
.global_c_int00
KEY_ADDR.set0a008h
D_LED_ADDR.set0b000h
KEY_CODE1.set60h
KEY_CODE2.set61h
CONVERT.macrorawdata
STM#4000h,AR3
ANDM#001Fh,rawdata
LDrawdata,A
ADDAR3,A
STLA,AR3
nop
LD*AR3,A
STLA,rawdata
.endm
.data
.word00h,3F06h,0605h,5B04h,4f03h,6602h,6d01h,7d06h,0705h,7f04h,6f03h,07702h,07c01h,3906h,5e05h,07904h,07103h,8002h
;
BCDCODE0123456789abcdef.
hight8bitenable,low8bitisaddress
.sect"
rst:
.space17*4*16
int2:
B_onkey
.space13*4*16
LD#0h,DP
STM#3000h,SP
SSBXINTM
ssbxXF
STM#07FFFh,SWWSR
ST#0000h,KEY_CODE2
STM#0ffffh,IFR
ORM#0004h,IMR
RSBXINTM
susp:
PORTWKEY_CODE2,D_LED_ADDR;
显示到数码管
rpt#0ffffh
Bsusp
_onkey:
nop
nop
PORTRKEY_ADDR,KEY_CODE2;
读取按键
CONVERTKEY_CODE2;
将按键码转换成显示码
exitrpt#0ffffh
RETE
实验四、定时器实验
ex7.asm*
定时器实验*
.title"
ex7"
PERSEC.set60h
SEC.set61h
MIN.set62h
STATUS.set63h
TMP0.set64h
TMP1.set65h
TMP.set66h
D_LED.set0b000h
;
D_LED0.set01h
D_LED1.set02h
D_LED2.set03h
D_LED3.set04h
D_LED4.set05h
D_LED5.set06h
D_LED0.set06h
D_LED1.set05h
D_LED2.set04h
D_LED3.set03h
D_LED4.set02h
D_LED5.set01h
LED_DISP.macrohexdata,portaddr
LDhexdata,B
ST#0Ah,TMP0
SUBCTMP0,B
STHB,TMP0;
存放BCD码个位
STLB,TMP1;
存放BCD码十位
ST#2000h,AR0
LDTMP0,B
ADDAR0,B
STLB,AR0
LD*AR0,A
OR#portaddr+1,A;
计算位码
PORTWAL,D_LED
rpt#30000
LDTMP1,B
OR#portaddr,A;
.endm
段码
.word3F00h,0600h,5B00h,4f00h,6600h,6d00h,7d00h,0700h,7f00h,6f00h
.space15*4*16
int0:
Bkeydown
.space2*4*16
tint:
Btimeout
.space12*4*16
_c_int00
RSBXSXM
stm#0001h,2Bh
ST#0h,CLKMD
tst:
BITFCLKMD,#1h
BCtst,TC
ST#1087h,CLKMD
BITFCLKMD,#1h
RPT#0FFh
ORM#0010h,TCR
ST#19999,PRD
ORM#0009h,TCR
ORM#0020h,TCR
ST#0FFFFh,IFR
ORM#0008h,IMR
ST#0,PERSEC
ST#0,SEC
ST#0,MIN
ST#1,STATUS
LED_DISPPERSEC,D_LED1
LED_DISPMIN,D_LED5
LED_DISPSEC,D_LED3
ANDM#0FFEFh,TCR
suspnop
timeoutADDM#1,PERSEC
LD#100,A
SUBPERSEC,A
BCsecout,ALEQ
Bexit
secoutST#0,PERSEC
ADDM#1,SEC
LD#60,A
SUBSEC,A
BCminout,ALEQ
Bexit
minoutST#0,SEC
ADDM#1,MIN
LD#100,A
SUBMIN,A
BCoverflow,ALEQ
overflow
ORM#0030h,TCR;
StopandReloadTimer
ST#0,STATUS;
Setstopfalg
exitLED_DISPMIN,D_LED5
RETE
keydown
ST0ffffh,IFR
ORM#0030h,TCR
BITFSTATUS,#1h
BCrestart,NTC
restartST#0,PERSEC
LED_DISPPERSEC,D_LED1;
刷新1/100秒表
LED_DISPSEC,D_LED3;
刷新秒表
LED_DISPMIN,D_LED5;
刷新分钟
.end
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- DSP 实验 程序