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

📄 c6711_cpu.asm

📁 该代码实现了 两次下载法在dspC6713平台上 烧写flash的操作过程
💻 ASM
字号:
*****************************************************************************
* file name   :     C6711_CPU.ASM
* description : 
******************************************************************************

FP	.set	A15
DP	.set	B14
SP	.set	B15


DelaySlot_for_Branch  .set 5

	.global	$bss
          .global  __vector  ; /* Memory location for default   */
          
          .global _c6711_Restor
          .global _c6711_Save
          
         
******************************************************************************
* module name : _save_register 
* description : Save registers in SAVE_REGISTER  format.
*               B3 contains return address in interrupt handler         
*               IRP contains the address of the interrupted environment
******************************************************************************
	.align	32
_save_register  

            SUB   .D2        SP,0x9,SP       ; Push one Frame
            
            STW   .D2T2      B0,*+SP[0x0]    ; save B0 
      ||    MVC   .S2        AMR,B0          ; B0 = AMR
            STW   .D2T2      B1,*+SP[0x1]    ; save B1
      ||    MVC   .S2        CSR,B1          ; B1 = CSR
            STW   .D2T2      B2,*+SP[0x2]    ; save B2
      ||    MVC   .S2        IER,B2          ; B2=IER
            NOP
            
            STW   .D2T2      B0,*+SP[0x3]    ; save AMR
            STW   .D2T2      B1,*+SP[0x4]    ; save CSR
            STW   .D2T2      B2,*+SP[0x5]    ; save IER
            
            MVC   .S2        FADCR,B0        ; B0 = FADCR  
            STW   .D2T2      B0,*+SP[0x6]    ; Save FADCR
            MVC   .S2        FAUCR,B1        ; B1 = FAUCR
            STW   .D2T2      B1,*+SP[0x7]    ; Save FAUCR
            MVC   .S2        FMCR,B2         ; B2 = FMCR
            STW   .D2T2      B2,*+SP[0x8]    ; Save FMCR
            
            NOP              2
            B     .S2          B3
            ADD   .D2        SP,0x8,SP
            NOP              4

******************************************************************************
* module name : _restore_register
* description : Save registers in SAVE_REGISTER  format.
*               B3 contains return address in interrupt handler         
*               IRP contains the address of the interrupted environment
******************************************************************************
   .align	32
_restore_register

            SUB.D2        SP,0x8,SP
            STW.D2T1      A4,*+SP[0x1]
            NOP           2
            MV.D1         A4,A0
            LDW.D1T1      *+A0[0x0],A0
            NOP           4
            MVC.S2X       A0,AMR
            NOP           
            MV.D1         A4,A0
            LDW.D1T1      *+A0[0x1],A0
            NOP           4
            MVC.S2X       A0,CSR
            NOP           
            MV.D1         A4,A0
            LDW.D1T1      *+A0[0x2],A0
            NOP           4
            MVC.S2X       A0,IER
            NOP           
            MV.D1         A4,A0
            LDW.D1T1      *+A0[0x3],A0
            NOP           4
            MVC.S2X       A0,IRP
            NOP           
            MV.D1         A4,A0
            LDW.D1T1      *+A0[0x4],A0
            NOP           4
            MVC.S2X       A0,FADCR
            NOP           
            MV.D1         A4,A0
            LDW.D1T1      *+A0[0x5],A0
            NOP           4
            MVC.S2X       A0,FAUCR
            NOP           
            MV.S2X        A4,B4
            LDW.D2T2      *+B4[0x6],B4
            NOP           4
            MVC.S2        B4,FMCR
            NOP           
            B.S2          B3
            ADD.D2        SP,0x8,SP
            NOP           4    
            

	.end


⌨️ 快捷键说明

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