⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sysctrl.asm

📁 2812 开发库
💻 ASM
📖 第 1 页 / 共 5 页
字号:
        MOVL      XAR4,#_PieVectTable   ; |393| 
        MOV       ACC,#1 << 8
        LCR       #___memcpy_ff         ; |393| 
        ; call occurs [#___memcpy_ff] ; |393| 
	.line	10
;----------------------------------------------------------------------
; 394 | asm(" EDIS");                                           // Disable EALL
;     | OW protected register access                                           
;----------------------------------------------------------------------
 EDIS
	.line	13
;----------------------------------------------------------------------
; 397 | PieCtrlRegs.PIEIER1.all =  0x0000;                                     
;----------------------------------------------------------------------
        MOVW      DP,#_PieCtrlRegs+2
        MOV       @_PieCtrlRegs+2,#0    ; |397| 
	.line	14
;----------------------------------------------------------------------
; 398 | PieCtrlRegs.PIEIER2.all =  0x0000;                                     
;----------------------------------------------------------------------
        MOV       @_PieCtrlRegs+4,#0    ; |398| 
	.line	15
;----------------------------------------------------------------------
; 399 | PieCtrlRegs.PIEIER3.all =  0x0000;                                     
;----------------------------------------------------------------------
        MOV       @_PieCtrlRegs+6,#0    ; |399| 
	.line	16
;----------------------------------------------------------------------
; 400 | PieCtrlRegs.PIEIER4.all =  0x0000;                                     
;----------------------------------------------------------------------
        MOV       @_PieCtrlRegs+8,#0    ; |400| 
	.line	17
;----------------------------------------------------------------------
; 401 | PieCtrlRegs.PIEIER5.all =  0x0000;                                     
;----------------------------------------------------------------------
        MOV       @_PieCtrlRegs+10,#0   ; |401| 
	.line	18
;----------------------------------------------------------------------
; 402 | PieCtrlRegs.PIEIER6.all =  0x0000;                                     
;----------------------------------------------------------------------
        MOV       @_PieCtrlRegs+12,#0   ; |402| 
	.line	19
;----------------------------------------------------------------------
; 403 | PieCtrlRegs.PIEIER7.all =  0x0000;                                     
;----------------------------------------------------------------------
        MOV       @_PieCtrlRegs+14,#0   ; |403| 
	.line	20
;----------------------------------------------------------------------
; 404 | PieCtrlRegs.PIEIER8.all =  0x0000;                                     
;----------------------------------------------------------------------
        MOV       @_PieCtrlRegs+16,#0   ; |404| 
	.line	21
;----------------------------------------------------------------------
; 405 | PieCtrlRegs.PIEIER9.all =  0x0000;                                     
;----------------------------------------------------------------------
        MOV       @_PieCtrlRegs+18,#0   ; |405| 
	.line	22
;----------------------------------------------------------------------
; 406 | PieCtrlRegs.PIEIER10.all = 0x0000;                                     
;----------------------------------------------------------------------
        MOV       @_PieCtrlRegs+20,#0   ; |406| 
	.line	23
;----------------------------------------------------------------------
; 407 | PieCtrlRegs.PIEIER11.all = 0x0000;                                     
;----------------------------------------------------------------------
        MOV       @_PieCtrlRegs+22,#0   ; |407| 
	.line	24
;----------------------------------------------------------------------
; 408 | PieCtrlRegs.PIEIER12.all = 0x0000;                                     
;----------------------------------------------------------------------
        MOV       @_PieCtrlRegs+24,#0   ; |408| 
	.line	27
;----------------------------------------------------------------------
; 411 | PieCtrlRegs.PIEIFR1.all  = 0x0000;                                     
;----------------------------------------------------------------------
        MOV       @_PieCtrlRegs+3,#0    ; |411| 
	.line	28
;----------------------------------------------------------------------
; 412 | PieCtrlRegs.PIEIFR2.all  = 0x0000;                                     
;----------------------------------------------------------------------
        MOV       @_PieCtrlRegs+5,#0    ; |412| 
	.line	29
;----------------------------------------------------------------------
; 413 | PieCtrlRegs.PIEIFR3.all  = 0x0000;                                     
;----------------------------------------------------------------------
        MOV       @_PieCtrlRegs+7,#0    ; |413| 
	.line	30
;----------------------------------------------------------------------
; 414 | PieCtrlRegs.PIEIFR4.all  = 0x0000;                                     
;----------------------------------------------------------------------
        MOV       @_PieCtrlRegs+9,#0    ; |414| 
	.line	31
;----------------------------------------------------------------------
; 415 | PieCtrlRegs.PIEIFR5.all  = 0x0000;                                     
;----------------------------------------------------------------------
        MOV       @_PieCtrlRegs+11,#0   ; |415| 
	.line	32
;----------------------------------------------------------------------
; 416 | PieCtrlRegs.PIEIFR6.all  = 0x0000;                                     
;----------------------------------------------------------------------
        MOV       @_PieCtrlRegs+13,#0   ; |416| 
	.line	33
;----------------------------------------------------------------------
; 417 | PieCtrlRegs.PIEIFR7.all  = 0x0000;                                     
;----------------------------------------------------------------------
        MOV       @_PieCtrlRegs+15,#0   ; |417| 
	.line	34
;----------------------------------------------------------------------
; 418 | PieCtrlRegs.PIEIFR8.all  = 0x0000;                                     
;----------------------------------------------------------------------
        MOV       @_PieCtrlRegs+17,#0   ; |418| 
	.line	35
;----------------------------------------------------------------------
; 419 | PieCtrlRegs.PIEIFR9.all  = 0x0000;                                     
;----------------------------------------------------------------------
        MOV       @_PieCtrlRegs+19,#0   ; |419| 
	.line	36
;----------------------------------------------------------------------
; 420 | PieCtrlRegs.PIEIFR10.all = 0x0000;                                     
;----------------------------------------------------------------------
        MOV       @_PieCtrlRegs+21,#0   ; |420| 
	.line	37
;----------------------------------------------------------------------
; 421 | PieCtrlRegs.PIEIFR11.all = 0x0000;                                     
;----------------------------------------------------------------------
        MOV       @_PieCtrlRegs+23,#0   ; |421| 
	.line	38
;----------------------------------------------------------------------
; 422 | PieCtrlRegs.PIEIFR12.all = 0x0000;                                     
;----------------------------------------------------------------------
        MOV       @_PieCtrlRegs+25,#0   ; |422| 
	.line	41
;----------------------------------------------------------------------
; 425 | PieCtrlRegs.PIEACK.all = 0xFFFF;                                       
;----------------------------------------------------------------------
        MOV       @_PieCtrlRegs+1,#65535 ; |425| 
	.line	44
;----------------------------------------------------------------------
; 428 | PieCtrlRegs.PIECRTL.bit.ENPIE = 1;              // Enable the PIE      
;----------------------------------------------------------------------
        OR        @_PieCtrlRegs,#0x0001 ; |428| 
	.line	46
;----------------------------------------------------------------------
; 430 | } //end of InitPieCtrl()                                               
;----------------------------------------------------------------------
        LRETR
        ; return occurs
	.endfunc	430,000000000h,0



	.sect	".text"
	.global	_InitAdc
	.sym	_InitAdc,_InitAdc, 32, 2, 0
	.func	437
;----------------------------------------------------------------------
; 437 | void InitAdc(void)                                                     
;----------------------------------------------------------------------

;***************************************************************
;* FNAME: _InitAdc                      FR SIZE:   0           *
;*                                                             *
;* FUNCTION ENVIRONMENT                                        *
;*                                                             *
;* FUNCTION PROPERTIES                                         *
;*                            0 Parameter,  0 Auto,  0 SOE     *
;***************************************************************

_InitAdc:
	.line	2
	.line	5
;----------------------------------------------------------------------
; 441 | AdcRegs.ADCTRL1.bit.RESET = 1;          // Reset the ADC module        
;----------------------------------------------------------------------
        MOVW      DP,#_AdcRegs
        OR        @_AdcRegs,#0x4000     ; |441| 
	.line	6
;----------------------------------------------------------------------
; 442 | asm(" RPT #10 || NOP");                         // Must wait 12-cycles
;     | (worst-case) for ADC reset to take effect                              
;----------------------------------------------------------------------
 RPT #10 || NOP
	.line	9
;----------------------------------------------------------------------
; 445 | AdcRegs.ADCTRL3.all = 0x00C8;           // first power-up ref and bandg
;     | ap circuits                                                            
;----------------------------------------------------------------------
        MOV       @_AdcRegs+24,#200     ; |445| 
	.line	19
;----------------------------------------------------------------------
; 455 | DelayUs(7000);                                          // Wait 7ms bef
;     | ore setting ADCPWDN                                                    
;----------------------------------------------------------------------
        MOV       AL,#7000              ; |455| 
        LCR       #_DelayUs             ; |455| 
        ; call occurs [#_DelayUs] ; |455| 
	.line	20
;----------------------------------------------------------------------
; 456 | AdcRegs.ADCTRL3.bit.ADCPWDN = 1;        // Set ADCPWDN=1 to power main
;     | ADC                                                                    
;----------------------------------------------------------------------
        MOVW      DP,#_AdcRegs+24
        OR        @_AdcRegs+24,#0x0020  ; |456| 
	.line	21
;----------------------------------------------------------------------
; 457 | DelayUs(20);                                            // Wait 20us be
;     | fore using the ADC                                                     
;----------------------------------------------------------------------
        MOVB      AL,#20                ; |457| 
        LCR       #_DelayUs             ; |457| 
        ; call occurs [#_DelayUs] ; |457| 
	.line	24
;----------------------------------------------------------------------
; 460 | AdcRegs.ADCMAXCONV.all = 0x0005;                                       
;----------------------------------------------------------------------
        MOVW      DP,#_AdcRegs+2
        MOV       @_AdcRegs+2,#5        ; |460| 
	.line	31
;----------------------------------------------------------------------
; 467 | AdcRegs.ADCCHSELSEQ1.bit.CONV00 = 0;    // Convert Channel 0           
;----------------------------------------------------------------------
        AND       @_AdcRegs+3,#0xfff0   ; |467| 
	.line	32
;----------------------------------------------------------------------
; 468 | AdcRegs.ADCCHSELSEQ1.bit.CONV01 = 1;    // Convert Channel 1           
;----------------------------------------------------------------------
        AND       AL,@_AdcRegs+3,#0xff0f ; |468| 
        ORB       AL,#0x10              ; |468| 
        MOV       @_AdcRegs+3,AL        ; |468| 
	.line	33
;----------------------------------------------------------------------
; 469 | AdcRegs.ADCCHSELSEQ1.bit.CONV02 = 2;    // Convert Channel 2           
;----------------------------------------------------------------------
        AND       AL,@_AdcRegs+3,#0xf0ff ; |469| 
        OR        AL,#0x0200            ; |469| 
        MOV       @_AdcRegs+3,AL        ; |469| 
	.line	34

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -