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

📄 lsvpwm.lst

📁 本程序为TI-DSP-240中正弦PWM波形生成程序。
💻 LST
📖 第 1 页 / 共 5 页
字号:
     279 00b5 7a80                  call    MultiSingle_online
         00b6 0000! 
     280                            .endif
     281                            
     282 00b7 7980                  B       MENU
         00b8 00b2' 
     283                            
     284            ;======================================================================
     285            ;INT2中断服务程序,包括TIMER1中断
     286            ;======================================================================
     287 00b9       GISR2:          Store1
1        00b9 8b89                  MAR     *,AR1
1        00ba 8ba0                  MAR     *+
1        00bb 8fa0                  SST     #1,*+
1        00bc 8ea0                  SST     #0,*+
1        00bd 98a0                  SACH    *+
TMS320C1x/C2x/C2xx/C5x COFF Assembler Version 7.00  Wed Mar 29 19:42:41 2006
Copyright (c) 1987-1999  Texas Instruments Incorporated 
lsvpwm.asm                                                           PAGE    8

1        00be 90a0                  SACL    *+
1        00bf be03                  PAC
1        00c0 c001                  MPYK    #1
1        00c1 8ca0                  SPL     *+
1        00c2 98a0                  SACH    *+
1        00c3 90a0                  SACL    *+
1        00c4 84a0                  SAR     AR4,*+          ;for scope
1        00c5 8280                  SAR     AR2,*           ;for scope
     288 00c6 bce8                  LDP             #EVIVRA/128     ;
     289 00c7 1032                  LACC    EVIVRA          ;读中断向量寄存器
     290 00c8 ba29                  SUB             #29H            ;29H代表T1UFINT
     291 00c9 e388                  BCND    SINE,EQ         ;是TIMER1下溢中断,跳转到SINE
         00ca 00cd' 
     292 00cb 7980                  B       GISR2_OUT       ;否则跳出中断   
         00cc 00f6' 
     293            
     294 00cd bc05  SINE    LDP             #TETA/128
     295 00ce 1003                  LACC    TETA        ;LOAD TETA角度 to ACC
     296 00cf 2000                  ADD             STEP            ;加上角度增量STEP       
     297 00d0 bfb0                  AND             #0FFH       ;保证低八位为正
         00d1 00ff  
     298 00d2 9003                  SACL    TETA        ;付新值给TETA
     299                            
     300 00d3 1003                  LACC    TETA        ;TETA->ACC
     301 00d4 bf90                  ADD     #SINTAB         ;加上SIN表入口地址
         00d5 0138' 
     302 00d6 a604              TBLR        SINTETA     ;将对应的SIN值存入SINTETA中  
     303            
     304 00d7 7304                  LT      SINTETA         ;LOAD SINTETA到 TREG
     305 00d8 5402                  MPY     MAG_A           ;乘上幅值
     306 00d9 be03                  PAC                 ;加载到ACC
     307 00da 9905                  SACH    RESULT,1    ;RESULT=M*SIN(TETA) 
     308                    
     309 00db 1001                  LACC    PERIOD      ;RESULT=RERIOD/2+M*SIN(TETA)
     310 00dc be0a                  SFR
     311 00dd 2005                  ADD             RESULT
     312 00de 9005                  SACL    RESULT          
     313                            
     314 00df 1005                  LACC    RESULT
     315 00e0 bce8                  LDP             #0E8H
     316 00e1 9017                  SACL    CMPR1        ;RESULT->CMPR1
     317 00e2 9002              SACL        T1CMPR           ;输出模拟量
     318 00e3 9006                  SACL    T2CMPR  
     319                            ;SPLK    #750,CMPR1
     320                            ;SPLK    #250,T1CMPR
     321            ;===========================================================================
     322                            .if (scope_Enable==1)
     323 00e4 7a80                  call    SaveToBuffer    ;数据存入缓存
         00e5 0000! 
     324                            .endif
     325                            
     326 00e6                       Clock_S01       S01,S01_K,Clock
1        00e6 bc04                  ldp     #S01/128                ;200H-027FH
1        00e7 6905                  LACL    S01
TMS320C1x/C2x/C2xx/C5x COFF Assembler Version 7.00  Wed Mar 29 19:42:41 2006
Copyright (c) 1987-1999  Texas Instruments Incorporated 
lsvpwm.asm                                                           PAGE    9

1        00e8 b801                  ADD     #1
1        00e9 9005                  SACL    S01
1        00ea bfa0                  SUB     #S01_K
         00eb 0190  
1        00ec e3cc                  BCND    S01OUT,LEQ
         00ed 00f5' 
1                                   
1        00ee ae05                  splk    #0,S01                  ;S01复位
         00ef 0000  
1        00f0 bd00                  ldp     #SAH_k/128              ;示波器变量区
1        00f1 6a00!                 lacc    Clock,16                ;软件时钟用于定时触发等
1        00f2 bf9f                  add     #1<<1,15
         00f3 0002  
1        00f4 9800!                 sach    Clock
1                                           
1        00f5 8b00  S01OUT          NOP
     327            ;========================================================================
     328 00f6       GISR2_OUT       
     329 00f6 bce8                  LDP     #EVIFRA/128     
     330 00f7 102f              LACC        EVIFRA          ;
     331 00f8 902f                  SACL    EVIFRA          ;清中断标志位
     332 00f9                       Restore1                
1                                   
1        00f9 8b89                  MAR     *,AR1
1        00fa 0290                  lar     AR2,*-          ;for scope
1        00fb 0490                  lar     AR4,*-          ;for scope
1        00fc 7390                  LT      *-
1        00fd c001                  MPYK    #1
1        00fe 7590                  LPH     *-
1        00ff 7390                  LT      *-
1        0100 6990                  LACl    *-
1        0101 6190                  ADD     *-,16
1        0102 0e90                  LST     #0,*-
1        0103 0f90                  LST     #1,*-
1                                   
     333 0104 be40                  CLRC    INTM
     334 0105 ef00                  RET
     335                            
     336            ;=====================================================================
     337 0106       PHANTOM         KICK_DOG                        ;RESETS WD COUNTER
1        0106 bce0                  LDP     #00E0h                  ;DP-->7000h-707Fh
1        0107 ae25                  SPLK    #05555h, WDKEY          ;WDCNTR is enabled to be reset by next AAh
         0108 5555  
1        0109 ae25                  SPLK    #0AAAAh, WDKEY          ;WDCNTR is reset
         010a aaaa  
1        010b bc00                  LDP     #0h                     ;DP-->0000h-007Fh
     338 010c 7980                  B       PHANTOM
         010d 0106' 
     339                            
     340            
     341            ;===============================================================================
     342 010e       SERIAL:         Store3
1        010e 8b89                  MAR     *,AR1
1        010f 8ba0                  MAR     *+
TMS320C1x/C2x/C2xx/C5x COFF Assembler Version 7.00  Wed Mar 29 19:42:41 2006
Copyright (c) 1987-1999  Texas Instruments Incorporated 
lsvpwm.asm                                                           PAGE   10

1        0110 8fa0                  SST     #1,*+
1        0111 8ea0                  SST     #0, *+
1        0112 98a0                  SACH    *+
1        0113 90a0                  SACL    *+
1        0114 82a0                  SAR     AR2,*+          ;for scope
1        0115 8480                  SAR     AR4,*           ;for scope
     343            
     344 0116 bc00                  ldp     #IMR/128
     345 0117                       SBIT0   IMR,B4_MSK              ;在ScopeTX使SCI中断禁止
1        0117 1004                  LACC    IMR                             
1        0118 bfb0                  AND     #(0FFFFh-B4_MSK)                
         0119 ffef  
1        011a 9004                  SACL    IMR                             
     346 011b be40                  CLRC    INTM                    ;开中断 
     347                                            
     348 011c bce0                  LDP     #SYSIVR/128             
     349 011d 691e                  LACl    SYSIVR
     350 011e ba06                  SUB     #6
     351 011f e388                  BCND    RXINT,EQ
         0120 0123' 
     352 0121 7980                  B       TXINT
         0122 0127' 
     353            ;---------------------------------------------------------------------
     354 0123 7a80  RXINT           call    ScopeRX
         0124 0000! 
     355 0125 7980                  b       SERIAL_end              
         0126 0129' 
     356            ;---------------------------------------------------------------------
     357 0127 7a80  TXINT           call    ScopeTX
         0128 0000! 
     358            ;---------------------------------------------------------------------
     359                            
     360 0129 be41  SERIAL_end      SETC    INTM
     361 012a bc00                  ldp     #IMR/128
     362 012b                       SBIT1   IMR,B4_MSK              ;SCI中断使能
1        012b 1004                  LACC    IMR
1        012c bfc0                  OR      #(B4_MSK)
         012d 0010  
1        012e 9004                  SACL    IMR
     363 012f                       Restore3
1                                   
1        012f 8b89                  MAR     *,AR1
1        0130 0490                  lar     AR4,*-          ;for scope
1        0131 0290                  lar     AR2,*-          ;for scope
1        0132 6990                  LACL    *-
1        0133 6190                  ADDH    *-
1        0134 0e90                  LST     #0, *-
1        0135 0f90                  LST     #1, *-
     364 0136 be40                  CLRC    INTM                    ;开中断 
     365 0137 ef00                  RET     
     366            ;---------------------------------------------------------------------
     367                            
     368            ;-------------------------------------------------------
     369            ; Sine look-up table
TMS320C1x/C2x/C2xx/C5x COFF Assembler Version 7.00  Wed Mar 29 19:42:41 2006
Copyright (c) 1987-1999  Texas Instruments Incorporated 
lsvpwm.asm                                                           PAGE   11

     370            ; No. Entries   : 256
     371            ; Angle Range   : 360 deg

⌨️ 快捷键说明

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