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

📄 foc.lst

📁 电机最小电流控制程序
💻 LST
📖 第 1 页 / 共 5 页
字号:
dspa -q -c -l -s -v2xx -iC:/ti/c2400/cgtools/include -g foc.asm C:/ti/myprojects/vec/Debug\foc.obj 

TMS320C24xx COFF Assembler Version 7.02  Mon Dec 18 17:13:42 2006
Copyright (c) 1987-2002  Texas Instruments Incorporated 
foc.asm                                                              PAGE    1

       1            
       2            ;----------------------矢量控制--------------
       3                        
       4               .include "F2407REGS.h"      ; 寄存器地址
       5               .include "vectors.h"
       6               .global  _c_int0          ;全局化标号
       7            ;-----------------------以下定义变量和常数-------------------------------------------------------------
       8      1000  PWMCNT_LED_        .set   01000H 
       9      17ac  PWM_T              .set   6060   ; 3.3k             5k 4000
      10      0001  VMIN_              .set   1
      11      0001  KCN_               .set   1
      12      0064  KIN_               .set   100
      13      0064  KC_                .set   100
      14      0064  KPN_                .set   100
      15      0001  KI_                 .set   1
      16      0001  KP_                 .set   1
      17      0064  VMAX_              .set   100
      18      0064  IMAX_              .set   100
      19            
      20      0d57  KSPEED       .set  3415             ;将脉冲数转换成速度系数,13.34的Q8格式
      21                                                  ;速度基值1500rpm,速度采样周期3ms
      22      001e  SPEEDSTEP30  .set  30               ;速度采样周期30个中断
      23                           
      24 0000                      .bss  T1_PERIODS,1    ;T1周期值的Q5格式
      25 0001                      .bss  KCURRENT,1     ;电流ipuQ12的转换系数,Q8格式
      26 0002                      .bss  KI,1              ;电流积分系数,Q12格式
      27 0003                      .bss  KP,1              ;电流比例系数,Q12格式
      28 0004                      .bss  KC,1              ;电流积分修正系数,Q12格式
      29 0005                      .bss  KIN,1             ;速度积分系数,Q12格式
      30 0006                      .bss  KPN,1            ;速度比例系数,Q12格式
      31 0007                      .bss  KCN,1            ;速度积分修正系数,Q12
      32 0008                      .bss  VMIN,1           ;电压最小极限-1.25 pu,Q12
      33 0009                      .bss  VMAX,1          ;电压最大极限1.25 pu,Q12
      34 000a                      .bss  IMAX,1           ;相电流最大极限,Q12
      35 000b                      .bss  TMP,1            ;临时变量
      36 000c                      .bss  IA,1             ;相电流IA
      37 000d                      .bss  IB,1             ;相电流IB
      38 000e                      .bss  IC,1             ;相电流IC
      39 000f                      .bss  SIN,1            ;SIN值Q12
      40 0010                      .bss  COS,1           ;COS值Q12
      41 0011                      .bss  DEC_MS,24      ;6个逆阵,Q14格式
      42 0029                      .bss  CMP_1,1         ;第1基本矢量,Q0格式
      43 002a                      .bss  CMP_2,1         ;第2基本矢量, Q0格式
      44 002b                      .bss  CMP_0,1         ;0基本矢量/2, Q0格式
      45 002c                      .bss  FIRST_TOG,1     ;存放第一次比较匹配的比较器地址
      46 002d                      .bss  SEC_TOG,1       ;存放第二次比较匹配的比较器地址
      47 002e                      .bss  TETA_E,1         ;转子电角度[0;1000H],对应[0;360]Q12格式
      48 002f                      .bss  IALFA,1          ;ALFA轴电流
      49 0030                      .bss  IBETA,1          ;BETA轴电流
      50 0031                      .bss  VALF_REF,1      ;ALFA轴参考电压
      51 0032                      .bss  VBET_REF,1      ;BETA轴参考电压
      52 0033                      .bss  IMREF,1         ;M轴参考电流
      53 0034                      .bss  ITREF,1          ;T轴参考电流
      54 0035                      .bss  IM,1             ;M轴电流
TMS320C24xx COFF Assembler Version 7.02  Mon Dec 18 17:13:42 2006
Copyright (c) 1987-2002  Texas Instruments Incorporated 
foc.asm                                                              PAGE    2

      55 0036                      .bss  IT,1              ;T轴电流
      56 0037                      .bss  VMREF,1         ;M轴参考电压
      57 0038                      .bss  VTREF,1          ;T轴参考电压
      58 0039                      .bss  EPIT,1            ;T轴电流调节偏差
      59 003a                      .bss  EPIM,1            ;M轴电流调节偏差
      60 003b                      .bss  XIT,1             ;T轴电流调节器积分累计量
      61 003c                      .bss  XIM,1             ;M轴电流调节器积分累计量
      62 003d                      .bss  N,1               ;速度
      63 003e                      .bss  N_REF,1          ;速度参考值
      64 003f                      .bss  EPISPEED,1       ;速度偏差
      65 0040                      .bss  XISPEED,1        ;速度调节器积分累计量
      66 0041                      .bss  P,1               ;SVPWM扇区索引 
      67 0042                      .bss  ITREFMIN,1       ;T轴电流最小极限
      68 0043                      .bss  ITREFMAX,1      ;T轴电流最大极限
      69 0044                      .bss  SECTOR,1         ;SVPWM扇区数
      70 0045                      .bss  INDEX,1           ;查SIN表索引
      71 0046                      .bss  UPI,1             ;PI调节器输出
      72 0047                      .bss  ELPI,1            ;PI调节器极限偏差
      73 0048                      .bss  ENCODEROLD,1   ;前一个采样周期时编码脉冲数
      74 0049                      .bss  ENCINCR,1        ;编码脉冲增量
      75 004a                      .bss  SPEEDTMP,1       ;编码脉冲增量累计值
      76 004b                      .bss  SPEEDSTEP,1      ;速度采样周期减计数器
      77 004c                      .bss  KR,1              ;常数,见式(4-36)
      78 004d                      .bss  KT,1              ;常数, 见式(4-37)
      79 004e                      .bss  K,1               ;转换常数,见式(4-39)
      80 004f                      .bss  IDK,1             ;转子励磁电流,Q12
      81 0050                              .bss  FS,1              ;转子磁链角频率与额定角频率之比
      82 0051                              .bss  TETAINCR,1       ;TETA转角增量
      83 0052                              .bss  TMP1,1            ;临时变量
      84 0053                              .bss PWMCNT_LED,1  
      85 0054                              .bss  CTRL  ,1
      86 0055                      .bss  TEMPER ,1
      87 0056                       .bss  UDC  ,1
      88            ;-----------------------以下是程序-----------------------------------------------------------------------------
      89 0000                .text
      90            ;--------------------------------------系统初始化程序----------------------------------------------------
      91 0000       _c_int0    
      92 0000 be41              SETC INTM        ; Disable interrupt 
      93 0001 be47              SETC SXM         ; Supress sign extension
      94 0002 be43              SETC OVM         ; Results overflow normally in Accumulator
      95 0003 be44              CLRC CNF         ; B0 is configured as data space
      96 0004 be4e              CLRC C           ; clear carry bit
      97 0005 bce0              LDP    #224
      98 0006 ae18              SPLK   #0000001010000100B,SCSR1 ;CLKIN 20M,CLKOUT 40M
         0007 0284  
      99 0008 ae29              SPLK   #68H,WDCR            ;不用看门狗
         0009 0068  
     100            ;--------------------------------------I/O 初始化程序----------------------------------------------------       
     101 000a bce1              LDP    #225
     102 000b 1010              LACC  MCRA
     103 000c bfc0              OR     #0FC0H             ;设置PWM1-6引脚基本功能
         000d 0fc0  
     104 000e 9010              SACL   MCRA
     105 000f 1014              LACC   MCRC
TMS320C24xx COFF Assembler Version 7.02  Mon Dec 18 17:13:42 2006
Copyright (c) 1987-2002  Texas Instruments Incorporated 
foc.asm                                                              PAGE    3

     106 0010 bfb0              AND   #0FDFFH
         0011 fdff  
     107 0012 9014              SACL   MCRC
     108 0013 1016              LACC PFDATDIR
     109 0014 bfb0              AND   #0FDFDH
         0015 fdfd  
     110 0016 9016              SACL   PFDATDIR
     111                        
     112            
     113            ;--------------------------------------中断初始化程序----------------------------------------------------
     114 0017 bc00              LDP    #0  
     115 0018 ae06              SPLK   #0FFH,IFR            ; 清所有系统中断标志
         0019 00ff  
     116 001a ae04              SPLK   #00000010B,IMR      ; 开INT2中断
         001b 0002  
     117 001c bce8              LDP    #232         
     118 001d ae2f              SPLK   #0FFFH,EVAIFRA     ; 清事件管理器A所有中断标志
         001e 0fff  
     119 001f ae30              SPLK   #0FH,EVAIFRB 
         0020 000f  
     120 0021 ae31              SPLK   #0FH,EVAIFRC 
         0022 000f  
     121 0023 ae2c              SPLK   #0200H,EVAIMRA     ; 开T1下溢中断
         0024 0200  
     122 0025 ae2d              SPLK   #0,EVAIMRB          ; 屏蔽所有中断
         0026 0000  
     123 0027 ae2e              SPLK   #0,EVAIMRC          ; 屏蔽所有中断
         0028 0000  
     124            ;--------------------------------------初始化事件管理器A程序-----------------------------------------
     125 0029 bce8             LDP #0E8H
     126 002a ae03               SPLK   #PWM_T ,T1PR           ; T1周期值=200 us/25ns/2=4000
         002b 17ac  
     127 002c ae17              SPLK   #PWM_T ,CMPR1         ; 占空比初值 0%
         002d 17ac  
     128 002e ae18              SPLK   #PWM_T ,CMPR2
         002f 17ac  
     129 0030 ae19              SPLK   #PWM_T ,CMPR3
         0031 17ac  
     130 0032 ae13              SPLK   #0000100110011001B,ACTRA  ; 引脚PWM1,3,5低有效,2,4,6高有效 
         0033 0999  
     131                        ;SPLK   #0000011001100110B,ACTRA  ; 引脚PWM1,3,5高有效,2,4,6低有效
     132 0034 ae15              SPLK   #06F4H,DBTCONA     ; 死区时间6*32*25ns=4.8us
         0035 06f4  
     133 0036 ae11              SPLK   #1000001000000000B,COMCONA  ;允许比较,不用硬件空间矢量
         0037 8200  
     134 0038 ae01              SPLK      #0,T1CNT
         0039 0000  
     135 003a ae04              SPLK   #1000100000000010B,T1CON ;连续增减计数方式,预分频=1
         003b 8802  
     136                     
     137 003c ae05            SPLK      #0,T2CNT            ;编码脉冲计数器
         003d 0000  
     138 003e ae07           SPLK      #0FFFFH,T2PR 
         003f ffff  
TMS320C24xx COFF Assembler Version 7.02  Mon Dec 18 17:13:42 2006
Copyright (c) 1987-2002  Texas Instruments Incorporated 
foc.asm                                                              PAGE    4

     139 0040 ae08           SPLK      #9870H,T2CON        ;定向增减,允许编码接口
         0041 9870  
     140            ;--------------------------------------初始化AD采样程序-----------------------------------------
     141 0042 bce1              LDP   #225
     142 0043 ae20              SPLK   #4000H,ADCTRL1
         0044 4000  
     143 0045 8b00              NOP
     144 0046 ae20              SPLK   #3000H,ADCTRL1
         0047 3000  
     145 0048 ae21              SPLK   #4000H,ADCTRL2
         0049 4000  
     146 004a ae22              SPLK   #4,MAXCONV               ;/*For SEQ mode (i.e, cascaded mode), MAX CONV1_3-0 are used.*/
         004b 0004  
     147 004c ae23              SPLK   #05431H,CHSELSEQ1 
         004d 5431  
     148 004e ae24              SPLK   #0007H,CHSELSEQ2       ;Result0 - ADC模块的ADCIN1 - Udc
         004f 0007  
     149                                                      ;Result1 - ADC模块的ADCIN3 - CT-U(Iw)
     150                                                      ;Result2 - ADC模块的ADCIN4 - CT-V(Iu)
     151                                                      ;Result3 - ADC模块的ADCIN5 - Regulator
     152              
     153            ;-----------------------变量初始化-----------------------------------------------------
     154 0050 bc06           LDP        #6
     155 0051 ae00-          SPLK       #32000,T1_PERIODS   ;T1周期值的Q5格式,1000*32
         0052 7d00  
     156 0053 ae02-          SPLK       #KI_,KI                ;给电流积分系数赋值,Q12
         0054 0001  
     157 0055 ae03-          SPLK       #KP_,KP               ;给电流比例系数赋值,Q12
         0056 0001  
     158 0057 ae04-          SPLK       #KC_,KC              ;给电流积分修正系数赋值,Q12
         0058 0064  
     159 0059 ae05-          SPLK       #KIN_,KIN             ;给速度积分系数赋值,Q12
         005a 0064  
     160 005b ae06-          SPLK       #KPN_,KPN            ;给速度比例系数赋值,Q12
         005c 0064  
     161 005d ae07-          SPLK       #KCN_,KCN           ;给速度积分修正系数赋值,Q12
         005e 0001  
     162 005f ae08-          SPLK       #VMIN_,VMIN         ;给电压最小极限赋值-1.25 pu,Q12
         0060 0001  
     163 0061 ae09-          SPLK       #VMAX_, VMAX       ;给电压最大极限赋值1.25 pu,Q12
         0062 0064  
     164 0063 ae0a-          SPLK       #IMAX_,IMAX          ;给相电流最大极限赋值,Q12
         0064 0064  
     165 0065 ae01-          SPLK       #1383H,KCURRENT    ;电流ipuQ12的转换系数19.5的Q8格式
         0066 1383  
     166 0067 ae4c-          SPLK       #39,KR                ;(Lr=0.169,Rr=2.011,T=0.0001)Q15格式
         0068 0027  
     167 0069 ae4d-          SPLK       #156,KT               ; (Lr=0.169,Rr=2.011)Q12格式
         006a 009c  
     168 006b ae4e-          SPLK       #328,K                ;转换系数,采样周期100微秒,Q0
         006c 0148  
     169 006d ae4f-          SPLK       #0,IDK   
         006e 0000  
     170 006f ae50-                  SPLK       #0,FS
TMS320C24xx COFF Assembler Version 7.02  Mon Dec 18 17:13:42 2006
Copyright (c) 1987-2002  Texas Instruments Incorporated 
foc.asm                                                              PAGE    5

         0070 0000  
     171 0071 ae51-                  SPLK       #0,TETAINCR
         0072 0000  
     172 0073 ae0b-                  SPLK       #0,TMP
         0074 0000  
     173 0075 ae52-                  SPLK       #0,TMP1
         0076 0000  
     174 0077 100a-          LACC      IMAX
     175 0078 9043-          SACL      ITREFMAX
     176 0079 be02           NEG

⌨️ 快捷键说明

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