📄 fun.asm
字号:
*******************************************************
* TMS320C2x/C2xx/C5x ANSI C Codegen Version 7.00
*******************************************************
; C:\TIC2XX\C2000\CGTOOLS\BIN\DSPAC.EXE -v2xx fun.c C:\WINDOWS\TEMP\fun.if
; dspopt NOT RUN
; C:\TIC2XX\C2000\CGTOOLS\BIN\DSPCG.EXE -o -v2xx -o C:\WINDOWS\TEMP\fun.if C:\WINDOWS\TEMP\fun.asm C:\WINDOWS\TEMP\fun.tmp
.port
.file "fun.c"
.file "global.c"
.globl _SCSR1
.globl _SCSR2
.globl _XINT2CR
.globl _WDCR
.globl _WDKEY
.globl _IMR
.globl _IFR
.globl _PIVR
.globl _MCRA
.globl _MCRB
.globl _MCRC
.globl _PADATDIR
.globl _PBDATDIR
.globl _PCDATDIR
.globl _PEDATDIR
.globl _PFDATDIR
.globl _ADCTRL1
.globl _ADCTRL2
.globl _MAXCONV
.globl _CHSELSEQ1
.globl _CHSELSEQ2
.globl _CHSELSEQ3
.globl _CHSELSEQ4
.globl _AUTO_SEQ_SR
.globl _RESULT0
.globl _RESULT1
.globl _RESULT2
.globl _RESULT8
.globl _RESULT9
.globl _CANMDER
.globl _CANTCR
.globl _CANRCR
.globl _CANMCR
.globl _CANBCR2
.globl _CANBCR1
.globl _CANESR
.globl _CANGSR
.globl _CANCEC
.globl _CANIFR
.globl _CANIMR
.globl _CANLAM0H
.globl _CANLAM0L
.globl _CANID0H
.globl _CANID0L
.globl _CANCTRL0
.globl _CANBX0A
.globl _CANBX0B
.globl _CANBX0C
.globl _CANBX0D
.globl _CANID1H
.globl _CANID1L
.globl _CANCTRL1
.globl _CANBX1A
.globl _CANBX1B
.globl _CANBX1C
.globl _CANBX1D
.globl _CANID4H
.globl _CANID4L
.globl _CANCTRL4
.globl _CANBX4A
.globl _CANBX4B
.globl _CANBX4C
.globl _CANBX4D
.globl _SCICCR
.globl _SCICTL1
.globl _SCIHBAUD
.globl _SCILBAUD
.globl _SCICTL2
.globl _SCIRXST
.globl _SCIRXEMU
.globl _SCIRXBUF
.globl _SCITXBUF
.globl _SCIPRI
.globl _GPTCONA
.globl _T1CNT
.globl _T1PR
.globl _T1CON
.globl _T2CNT
.globl _T2PR
.globl _T2CON
.globl _EVAIMRA
.globl _EVAIMRB
.globl _EVAIFRA
.globl _EVAIFRB
.globl _GPTCONB
.globl _T3CNT
.globl _T3CMPR
.globl _T3PR
.globl _T3CON
.globl _COMCONA
.globl _ACTRA
.globl _DBTCONA
.globl _CMPR1
.globl _EVBIMRA
.globl _EVBIFRA
.globl _nn
.file "fun.c"
.globl _KickDog
.globl _OSTickInit
.globl _SystemInit
.text
.sym _SystemInit,_SystemInit,32,2,0
.globl _SystemInit
.func 12
;>>>> void SystemInit()
******************************************************
* FUNCTION DEF : _SystemInit
******************************************************
_SystemInit:
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,1
LAR AR0,*0+
.line 3
;>>>> asm(" SETC INTM "); /* 关闭总中断 */
SETC INTM
.line 4
;>>>> asm(" CLRC SXM "); /* 禁止符号位扩展 */
CLRC SXM
.line 5
;>>>> asm(" CLRC CNF "); /* B0块映射为 on-chip DARAM*/
CLRC CNF
.line 6
;>>>> asm(" CLRC OVM "); /* 累加器结果正常溢出*/
CLRC OVM
.line 7
;>>>> SCSR1=0x06DC; /* 打开ADC,EVA,EVB,CAN和SCI的时钟,系统时钟CLKOUT=16M */
LDPK _SCSR1
SPLK #1756,_SCSR1
.line 8
;>>>> WDCR=0x006F; /* 禁止看门狗,看门狗时钟64分频 */
LACK 111
LDPK _WDCR
SACL _WDCR
.line 9
;>>>> KickDog(); /* 初始化看门狗 */
CALL _KickDog
.line 10
;>>>> IFR=0xFFFF; /* 清除中断标志 */
;>>>> // XINT2CR=0001; /*高优先级,下降沿有效*/
LDPK _IFR
SPLK #65535,_IFR
.line 12
;>>>> IMR=0x0002; /* 打开中断1,2*/
LACK 2
LDPK _IMR
SACL _IMR
EPI0_1:
.line 13
SBRK 2
LAR AR0,*-
PSHD *
RET
.endfunc 24,000000000H,1
.sym _OSTickInit,_OSTickInit,32,2,0
.globl _OSTickInit
.func 25
;>>>> void OSTickInit() /*定时器1作为系统的时钟节拍*/
******************************************************
* FUNCTION DEF : _OSTickInit
******************************************************
_OSTickInit:
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,1
LAR AR0,*0+
.line 3
;>>>> EVAIMRA=0x0080; /* 定时器1周期中断使能 */
LACK 128
LDPK _EVAIMRA
SACL _EVAIMRA
.line 4
;>>>> EVAIFRA=0xFFFF; /* 清除中断标志 */
LDPK _EVAIFRA
SPLK #65535,_EVAIFRA
.line 5
;>>>> GPTCONA=0x0000;
LACK 0
LDPK _GPTCONA
SACL _GPTCONA
.line 6
;>>>> T1PR=0x2710; /* 定时器1初值,定时10ms */
LDPK _T1PR
SPLK #10000,_T1PR
.line 7
;>>>> T1CNT=0x0000;
LDPK _T1CNT
SACL _T1CNT
.line 8
;>>>> T1CON=0x144C; /* 连续增计数模式 16M/16=1M*/
LDPK _T1CON
SPLK #5196,_T1CON
EPI0_2:
.line 11
SBRK 2
LAR AR0,*-
PSHD *
RET
.endfunc 35,000000000H,1
.sym _KickDog,_KickDog,32,2,0
.globl _KickDog
.func 36
;>>>> void KickDog() /*踢除看门狗 */
******************************************************
* FUNCTION DEF : _KickDog
******************************************************
_KickDog:
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,1
LAR AR0,*0+
.line 3
;>>>> WDKEY=0x5555;
LDPK _WDKEY
SPLK #21845,_WDKEY
.line 4
;>>>> WDKEY=0xAAAA;
SPLK #43690,_WDKEY
EPI0_3:
.line 5
SBRK 2
LAR AR0,*-
PSHD *
RET
.endfunc 40,000000000H,1
.end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -