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

📄 rmp3cntl.lst

📁 TI的digital motor control lib的源代码。了解TI的编程规范
💻 LST
📖 第 1 页 / 共 2 页
字号:
     104                                            ; If (Accumulator = 0)
     105                                            ; goto  __RMP3_Set_Flag 
     106                                            ; If Set point = target
TMS320C1x/C2x/C2xx/C5x COFF Assembler Version 7.00  Tue May  6 12:41:20 2003
Copyright (c) 1987-1999  Texas Instruments Incorporated 
rmp3cntl.asm                                                         PAGE    3

     107                                            ; ARP = AR3. AR2 -> out. AR3-> desired
     108            ;--------------------------------------------------------------------------
     109 000f       __RMP3_Incr_Dly_Cntr:
     110 000f 7802                  ADRK    #2      ; ARP = AR3. AR3 -> dly_cntr. AR2 -> out
     111            ;--------------------------------------------------------------------------
     112 0010 1080                  LACC    *       ; Load accumulator with delay_cntr 
     113                                            ; ARP = AR3. AR3 -> dly_cntr. AR2 -> out
     114            ;--------------------------------------------------------------------------
     115 0011 b801                  ADD     #1      ; Update counter
     116                                            ; ARP = AR3  AR3-> dly_cntr.
     117                                            ; AR2-> out
     118            ;--------------------------------------------------------------------------
     119 0012 908a                  SACL    *,AR2   ; Increment dly_cntr
     120                                            ; ARP = AR2  AR2-> out. 
     121                                            ; AR3-> dly_cntr  
     122            ;--------------------------------------------------------------------------
     123 0013 7c03                  SBRK    #3      ; ARP = AR2. AR2-> dly . AR3-> dly_cntr
     124            ;--------------------------------------------------------------------------
     125 0014 3080                  SUB     *       ; Accumulator = dly_cntr - dly
     126                                            ; ARP = AR2. AR2-> dly. AR3-> dly_cntr
     127            ;--------------------------------------------------------------------------
     128 0015 e344                  BCND    __rmp3_calc_exit , LT 
         0016 0028' 
     129                                            ; If  (dly_cntr < dly) 
     130                                            ; goto __rmp3_calc_exit
     131                                            ; If No decrement out
     132                                            ; ARP = AR2. AR2-> dly . AR3->dly_cntr
     133            ;--------------------------------------------------------------------------
     134 0017       __RMP3_Dec:
     135 0017 7803                  ADRK    #3      ; ARP = AR2. AR2-> out . AR3-> dly_cntr
     136            ;--------------------------------------------------------------------------
     137 0018 1080                  LACC    *       ; Accumulator = out
     138                                            ; ARP = AR2. AR2-> out. AR3-> dly_cntr 
     139            ;--------------------------------------------------------------------------
     140 0019 ba01                  SUB     #1      ; Accumulator = out - 1
     141                                            ; ARP = AR2. AR2-> out. AR3-> dly_cntr
     142            ;--------------------------------------------------------------------------
     143 001a 9090                  SACL    *-      ; update out
     144                                            ; ARP = AR2. AR2-> min. AR3-> dly_cntr
     145            ;--------------------------------------------------------------------------
     146 001b 3080                  SUB     *       ; Accumulator = out - min 
     147                                            ; ARP = AR2. AR2-> min. 
     148                                            ; AR3-> dly_cntr 
     149            ;--------------------------------------------------------------------------
     150 001c e38c                  BCND    __RMP3_Clear_Dly_Cntr, GEQ
         001d 0020' 
     151                                            ; If (out >= min) goto 
     152                                            ; __RMP3CNTL_Clear_Dly_Cntr
     153                                            ; ARP = AR2. AR2-> min. AR3-> dly_cntr
     154            ;--------------------------------------------------------------------------
     155 001e 10a0                  LACC    *+      ; Accumulator = min
     156                                            ; ARP = AR2. AR2-> out.
     157                                            ; AR3-> dly_cntr 
     158            ;--------------------------------------------------------------------------
TMS320C1x/C2x/C2xx/C5x COFF Assembler Version 7.00  Tue May  6 12:41:20 2003
Copyright (c) 1987-1999  Texas Instruments Incorporated 
rmp3cntl.asm                                                         PAGE    4

     159 001f 9090                  SACL    *-      ; out = min
     160                                            ; ARP = AR2. AR2->min.
     161                                            ; AR3-> dly_cntr
     162            ;--------------------------------------------------------------------------
     163                                            ; ARP = AR2. AR2-> min.
     164                                            ; AR3-> dly_cntr
     165 0020       __RMP3_Clear_Dly_Cntr:
     166            ;--------------------------------------------------------------------------
     167 0020 7c01                  SBRK     #1     ; ARP = AR2. AR2-> dly_cntr
     168                                            ; AR3-> dly_cntr 
     169            ;--------------------------------------------------------------------------
     170 0021 ae80                  SPLK  #CLEAR,*  ; store dly_cntr
         0022 0000  
     171                                            ; ARP = AR2. AR2-> dly_cntr
     172                                            ; AR3-> dly_cntr 
     173            ;--------------------------------------------------------------------------
     174 0023 7980                  B      __rmp3_calc_exit
         0024 0028' 
     175                                            ; Goto __rmp3cnt_calc_exit
     176                                            ; ARP = AR2
     177            ;--------------------------------------------------------------------------
     178 0025       __RMP3_Set_Flag:
     179 0025 7805                  ADRK    #5      ; ARP = AR3. AR3-> done_flag
     180            ;--------------------------------------------------------------------------
     181 0026 ae80                  SPLK    #RMP3_DONE_FLAG,* 
         0027 7fff  
     182                                            ; done_flag = 07fff;
     183                                            ; ARP = AR3. AR3-> done_flag
     184            ;--------------------------------------------------------------------------
     185 0028       __rmp3_calc_exit:
     186            
     187 0028 8b89      MAR     * ,AR1              ; set ARP = SP before you exit.
     188 0029 7c02      SBRK    #(__RMP3_framesize+1)
     189                                            ; deallocate frame, point to saved FP
     190                                            
     191                .if (RETURN_ADDRESS_SAVE = ON)
     192 002a 0090      LAR     AR0, *-             ; restore frame pointer
     193 002b 7680      PSHD    *                   ; push return address on hardware stack
     194                .endif
     195                    
     196                .if (RETURN_ADDRESS_SAVE = OFF)
     197                LAR     AR0, *              ; restore frame pointer
     198                .endif
     199               
     200 002c ef00     RET
     201               
     202               .end

 No Errors,  No Warnings

⌨️ 快捷键说明

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