📄 sysctrl.asm
字号:
;----------------------------------------------------------------------
OR @_GpioMuxRegs+20,#0x0080 ; |241|
.line 40
;----------------------------------------------------------------------
; 242 | GpioMuxRegs.GPFMUX.bit.CANTXA_GPIOF6 = 1; // CANTX
;----------------------------------------------------------------------
OR @_GpioMuxRegs+20,#0x0040 ; |242|
.line 41
;----------------------------------------------------------------------
; 243 | GpioMuxRegs.GPFMUX.bit.SCIRXDA_GPIOF5 = 1; // SCIRXDA
;----------------------------------------------------------------------
OR @_GpioMuxRegs+20,#0x0020 ; |243|
.line 42
;----------------------------------------------------------------------
; 244 | GpioMuxRegs.GPFMUX.bit.SCITXDA_GPIOF4 = 1; // SCITXDA
;----------------------------------------------------------------------
OR @_GpioMuxRegs+20,#0x0010 ; |244|
.line 43
;----------------------------------------------------------------------
; 245 | GpioMuxRegs.GPFMUX.bit.SPISTEA_GPIOF3 = 0; // 0: select GP
; | IO function
;----------------------------------------------------------------------
AND @_GpioMuxRegs+20,#0xfff7 ; |245|
.line 44
;----------------------------------------------------------------------
; 246 | GpioMuxRegs.GPFMUX.bit.SPICLKA_GPIOF2 = 1; // SPICLK
;----------------------------------------------------------------------
OR @_GpioMuxRegs+20,#0x0004 ; |246|
.line 45
;----------------------------------------------------------------------
; 247 | GpioMuxRegs.GPFMUX.bit.SPISOMIA_GPIOF1 = 1; // SPISOMI
;----------------------------------------------------------------------
OR @_GpioMuxRegs+20,#0x0002 ; |247|
.line 46
;----------------------------------------------------------------------
; 248 | GpioMuxRegs.GPFMUX.bit.SPISIMOA_GPIOF0 = 1; // SPISIMO
;----------------------------------------------------------------------
OR @_GpioMuxRegs+20,#0x0001 ; |248|
.line 49
;----------------------------------------------------------------------
; 251 | GpioMuxRegs.GPGDIR.all = 0x0000; // All
; | group G GPIO are inputs
;----------------------------------------------------------------------
MOV @_GpioMuxRegs+25,#0 ; |251|
.line 51
;----------------------------------------------------------------------
; 253 | GpioMuxRegs.GPGMUX.bit.SCIRXDB_GPIOG5 = 1; // SCIRXDB
;----------------------------------------------------------------------
OR @_GpioMuxRegs+24,#0x0020 ; |253|
.line 52
;----------------------------------------------------------------------
; 254 | GpioMuxRegs.GPGMUX.bit.SCITXDB_GPIOG4 = 1; // SCITXDB
;----------------------------------------------------------------------
OR @_GpioMuxRegs+24,#0x0010 ; |254|
.line 55
;----------------------------------------------------------------------
; 257 | asm(" EDIS"); // Disable EALL
; | OW protected register access
;----------------------------------------------------------------------
EDIS
.line 57
;----------------------------------------------------------------------
; 259 | } //end InitGpio()
;----------------------------------------------------------------------
LRETR
; return occurs
.endfunc 259,000000000h,0
.sect ".text"
.global _InitEv
.sym _InitEv,_InitEv, 32, 2, 0
.func 267
;----------------------------------------------------------------------
; 267 | void InitEv(void)
;----------------------------------------------------------------------
;***************************************************************
;* FNAME: _InitEv FR SIZE: 0 *
;* *
;* FUNCTION ENVIRONMENT *
;* *
;* FUNCTION PROPERTIES *
;* 0 Parameter, 0 Auto, 0 SOE *
;***************************************************************
_InitEv:
.line 2
.line 7
;----------------------------------------------------------------------
; 273 | EvaRegs.EXTCONA.all = 0x0001;
;----------------------------------------------------------------------
MOVW DP,#_EvaRegs+9
MOV @_EvaRegs+9,#1 ; |273|
.line 19
;----------------------------------------------------------------------
; 285 | EvaRegs.EVAIMRA.all = 0x0000; // Disable all EVA group A inte
; | rrupts
;----------------------------------------------------------------------
MOV @_EvaRegs+44,#0 ; |285|
.line 20
;----------------------------------------------------------------------
; 286 | EvaRegs.EVAIMRB.all = 0x0000; // Disable all EVA group B inte
; | rrupts
;----------------------------------------------------------------------
MOV @_EvaRegs+45,#0 ; |286|
.line 21
;----------------------------------------------------------------------
; 287 | EvaRegs.EVAIMRC.all = 0x0000; // Disable all EVA group C
; | interrupts
;----------------------------------------------------------------------
MOV @_EvaRegs+46,#0 ; |287|
.line 22
;----------------------------------------------------------------------
; 288 | EvaRegs.EVAIFRA.all = 0xFFFF; // Clear all EVA group A interrupts
;----------------------------------------------------------------------
MOV @_EvaRegs+47,#65535 ; |288|
.line 23
;----------------------------------------------------------------------
; 289 | EvaRegs.EVAIFRB.all = 0xFFFF; // Clear all EVA group B in
; | terrupts
;----------------------------------------------------------------------
MOV @_EvaRegs+48,#65535 ; |289|
.line 24
;----------------------------------------------------------------------
; 290 | EvaRegs.EVAIFRC.all = 0xFFFF; // Clear all EVA group C in
; | terrupts
;----------------------------------------------------------------------
MOV @_EvaRegs+49,#65535 ; |290|
.line 29
;----------------------------------------------------------------------
; 295 | EvaRegs.GPTCONA.all = 0x0400;
;----------------------------------------------------------------------
MOV @_EvaRegs,#1024 ; |295|
.line 49
;----------------------------------------------------------------------
; 315 | EvaRegs.T2CON.all = 0x0000; // Disable timer
;----------------------------------------------------------------------
MOV @_EvaRegs+8,#0 ; |315|
.line 50
;----------------------------------------------------------------------
; 316 | EvaRegs.T2CNT = 0x0000; // Clear timer counter
;----------------------------------------------------------------------
MOV @_EvaRegs+5,#0 ; |316|
.line 51
;----------------------------------------------------------------------
; 317 | EvaRegs.T2PR = 46874; // Set timer period 20ms/64
;----------------------------------------------------------------------
MOV @_EvaRegs+7,#46874 ; |317|
.line 53
;----------------------------------------------------------------------
; 319 | EvaRegs.T2CON.all = 0xD040; //enable timer
;----------------------------------------------------------------------
MOV @_EvaRegs+8,#53312 ; |319|
.line 70
;----------------------------------------------------------------------
; 336 | EvaRegs.T1CON.all = 0x0000; // Disable timer
;----------------------------------------------------------------------
MOV @_EvaRegs+4,#0 ; |336|
.line 71
;----------------------------------------------------------------------
; 337 | EvaRegs.T1CNT = 0x0000; // Clear timer counter
;----------------------------------------------------------------------
MOV @_EvaRegs+1,#0 ; |337|
.line 72
;----------------------------------------------------------------------
; 338 | EvaRegs.T1PR = 0xFFFF; // Set timer period
;----------------------------------------------------------------------
MOV @_EvaRegs+3,#65535 ; |338|
.line 74
;----------------------------------------------------------------------
; 340 | EvaRegs.T1CON.all = 0xD640; // Init T1CON, enable t
; | imer
;----------------------------------------------------------------------
MOV @_EvaRegs+4,#54848 ; |340|
.line 91
;----------------------------------------------------------------------
; 357 | EvaRegs.CAPCONA.all = 0x0000; // reset the capture units
;----------------------------------------------------------------------
MOV @_EvaRegs+32,#0 ; |357|
.line 96
;----------------------------------------------------------------------
; 362 | EvaRegs.CAPCONA.all = 0xA280; // Init CAPCONA register
;----------------------------------------------------------------------
MOV @_EvaRegs+32,#41600 ; |362|
.line 111
;----------------------------------------------------------------------
; 377 | } // end InitEv()
;----------------------------------------------------------------------
LRETR
; return occurs
.endfunc 377,000000000h,0
.sect ".text"
.global _InitPieCtrl
.sym _InitPieCtrl,_InitPieCtrl, 32, 2, 0
.func 385
;----------------------------------------------------------------------
; 385 | void InitPieCtrl(void)
;----------------------------------------------------------------------
;***************************************************************
;* FNAME: _InitPieCtrl FR SIZE: 0 *
;* *
;* FUNCTION ENVIRONMENT *
;* *
;* FUNCTION PROPERTIES *
;* 0 Parameter, 0 Auto, 0 SOE *
;***************************************************************
_InitPieCtrl:
.line 2
.line 4
;----------------------------------------------------------------------
; 388 | asm(" SETC INTM, DBGM"); // Disable global inter
; | rupts
;----------------------------------------------------------------------
SETC INTM, DBGM
.line 7
;----------------------------------------------------------------------
; 391 | PieCtrlRegs.PIECRTL.bit.ENPIE = 0; // Disable the PIE
;----------------------------------------------------------------------
MOVW DP,#_PieCtrlRegs
AND @_PieCtrlRegs,#0xfffe ; |391|
.line 8
;----------------------------------------------------------------------
; 392 | asm(" EALLOW"); // Enable EALLO
; | W protected register access
;----------------------------------------------------------------------
EALLOW
.line 9
;----------------------------------------------------------------------
; 393 | memcpy(&PieVectTable, &PieVectTableInit, 256);
;----------------------------------------------------------------------
MOVL XAR5,#_PieVectTableInit ; |393|
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -