采样SPWM程序Word文档格式.docx
- 文档编号:16959296
- 上传时间:2022-11-27
- 格式:DOCX
- 页数:19
- 大小:25.99KB
采样SPWM程序Word文档格式.docx
《采样SPWM程序Word文档格式.docx》由会员分享,可在线阅读,更多相关《采样SPWM程序Word文档格式.docx(19页珍藏版)》请在冰豆网上搜索。
.bssTEMP4,1;
.bssTEMP5,1;
.bssTEMP6,1;
.bssK_,1;
第K个采样点
.bssPITC,1;
π乘载波周期=42166,Q28格式
.bssF2M,1;
调制系数对调制波频率的比例系数,Q21格式
.bssT_QUA,1;
T_carr/4的定时器计数脉冲个数,Q0格式
.bssF_CARR,1;
载波频率,Q1格式
.bssPMIN,1;
最小正脉宽(脉冲个数),Q0格式
.bssPMAX,1;
最小负脉宽(脉冲个数),Q0格式
.bssF_MODU,1;
调制波频率,Q4格式
.bssN_,1;
每个调制波周期的载波脉冲数,Q0格式
.bssM_,1;
M值
.bssKMAX,1;
2N,Q0格式
.bssATOD,1;
弧度换算成度系数917,Q4格式
.bssACCH,1;
ACC高字保存单元
.bssACCL,1;
ACC低字保存单元
.bssAR0_SAVE,1;
AR0保存单元
.bssP_HI,1;
P寄存器高字保存单元
.bssP_LO,1;
P寄存器低字保存单元
--------------------------------------CONTEXT段,定义保护现场数据区----------------------------
ST0_SAVE.usect"
.context"
1;
状态寄存器ST0保存单元
ST1_SAVE.usect"
状态寄存器ST1保存单元
--------------------------------------定义主向量段---------------------------------------------
.sect"
.vectors"
定义主向量段
RESETB_c_int0;
地址0000H,复位,优先级1
INT1BPHANTOM;
地址0002H,INT1,优先级4
INT2B_C_INT2;
地址0004H,INT2,优先级5
INT3BPHANTOM;
地址0006H,INT3,优先级6
INT4BPHANTOM;
地址0008H,INT4,优先级7
INT5BPHANTOM;
地址000AH,INT5,优先级8
INT6BPHANTOM;
地址000CH,INT6,优先级9
RESERVEDBPHANTOM;
地址000EH,测试,优先级10
SW_INT8BPHANTOM;
地址0010H,自定义软中断
SW_INT9BPHANTOM;
地址0012H,自定义软中断
SW_INT10BPHANTOM;
地址0014H,自定义软中断
SW_INT11BPHANTOM;
地址0016H,自定义软中断
SW_INT12BPHANTOM;
地址0018H,自定义软中断
SW_INT13BPHANTOM;
地址001AH,自定义软中断
SW_INT14BPHANTOM;
地址001CH,自定义软中断
SW_INT15BPHANTOM;
地址001EH,自定义软中断
SW_INT16BPHANTOM;
地址0020H,自定义软中断
TRAPBPHANTOM;
地址0022H,TRAP矢量
NMIBPHANTOM;
地址0024H,NMI,优先级3
EMU_TRAPBPHANTOM;
地址0026H,仿真Trap,优先级2
SW_INT20BPHANTOM;
地址0028H,自定义软中断
SW_INT21BPHANTOM;
地址002AH,自定义软中断
SW_INT22BPHANTOM;
地址002CH,自定义软中断
SW_INT23BPHANTOM;
地址002EH,自定义软中断
SW_INT24BPHANTOM;
地址0030H,自定义软中断
SW_INT25BPHANTOM;
地址0032H,自定义软中断
SW_INT26BPHANTOM;
地址0034H,自定义软中断
SW_INT27BPHANTOM;
地址0036H,自定义软中断
SW_INT28BPHANTOM;
地址0038H,自定义软中断
SW_INT29BPHANTOM;
地址003AH,自定义软中断
SW_INT30BPHANTOM;
地址003CH,自定义软中断
SW_INT31BPHANTOM;
地址003EH,自定义软中断
--------------------------------------定义子向量段----------------------------------------------------
.pvecs"
定义子向量段
PVECTORSBPHANTOM;
偏移地址0000H
BPHANTOM;
偏移地址0001H
BPHANTOM;
偏移地址0002H
偏移地址0003H
偏移地址0004H
偏移地址0005H
偏移地址0006H
偏移地址0007H
偏移地址0008H
偏移地址0009H
偏移地址000AH
偏移地址000BH
偏移地址000CH
偏移地址000DH
偏移地址000EH
偏移地址000FH
偏移地址0010H
偏移地址0011H
偏移地址0012H
偏移地址0013H
偏移地址0014H
偏移地址0015H
偏移地址0016H
偏移地址0017H
偏移地址0018H
偏移地址0019H
偏移地址001AH
偏移地址001BH
偏移地址001CH
偏移地址001DH
偏移地址001EH
偏移地址001FH
偏移地址0020H
偏移地址0021H
偏移地址0022H
偏移地址0023H
偏移地址0024H
偏移地址0025H
偏移地址0026H
偏移地址0027H
偏移地址0028H
BWXM;
偏移地址0029H
偏移地址002AH
偏移地址002BH
偏移地址002CH
偏移地址002DH
偏移地址002EH
偏移地址002FH
偏移地址0030H
偏移地址0031H
偏移地址0032H
偏移地址0033H
偏移地址0034H
偏移地址0035H
偏移地址0036H
偏移地址0037H
偏移地址0038H
偏移地址0039H
偏移地址003AH
偏移地址003BH
偏移地址003CH
偏移地址003DH
偏移地址003EH
偏移地址003FH
偏移地址0040H
BPHANTOM;
偏移地址0041H
--------------------------------------以下是主程序-----------------------------------------------------
.text
--------------------------------------系统初始化程序--------------------------------------------------
_c_int0SETCINTM;
禁止中断
CLRCCNF;
B0为数据存储区
LDP#224
SPLK#0000000000000100B,SCSR1;
4倍频,CLKOUT40MHz
SPLK#68H,WDCR;
不用看门狗
LDP#225
LACCMCRA
OR#0FC0H;
设置PWM1-6引脚
SACLMCRA
--------------------------------------中断初始化程序------------------------------------------------
LDP#0
SPLK#0FFH,IFR;
清所有系统中断标志
SPLK#00000010B,IMR;
开INT2中断
LDP#232
SPLK#0FFFH,EVAIFRA;
清事件管理器A所有中断标志
SPLK#0FH,EVAIFRB
SPLK#0FH,EVAIFRC
SPLK#0200H,EVAIMRA;
开T1下溢中断
SPLK#0,EVAIMRB;
屏蔽所有中断
SPLK#0,EVAIMRC;
--------------------------------------初始化事件管理器A程序-----------------------------------------
SPLK#1000,T1PR;
T1周期值=1000
SPLK#1000,CMPR1;
占空比初值0%
SPLK#1000,CMPR2
SPLK#1000,CMPR3
SPLK#0000011001100110B,ACTRA;
引脚PWM1,3,5高有效,2,4,6低有效
SPLK#01F4H,DBTCONA;
死区时间1*32*50ns=1.6uμs
SPLK#1000001000000000B,COMCONA;
允许比较,下溢重载
SPLK#0000100001000010B,T1CON;
连续增减计数方式,预分频=1
CLRCINTM;
开总中断
--------------------------------------变量初始化---------------------------------------------------------
LDP#6
SPLK#0,K_;
K=0
SPLK#42166,PITC;
π*T_carr=42166,Q28格式
SPLK#37749,F2M;
F-M转换系数,Q21格式
SPLK#250,T_QUA;
T_carr/4的定时器计数脉冲个数,Q0格式
SPLK#40000,F_CARR;
载波频率,Q1格式
SPLK#120,PMIN;
SPLK#1880,PMAX;
最小负脉宽时的最大正脉宽,Q0格式
SPLK#917,ATOD;
Q4格式
SPLK#480,F_MODU;
调试数据,Q4格式
--------------------------------------主循环-------------------------------------------------------------
CYCLELDP#6
CLRCSXM
LACCF_MODU,13;
SACHTEMP;
右移3位,Q1格式
LACCF_CARR;
RPT#15
SUBCTEMP;
计算N=F_carr/F_modu
SACLN_;
保存N,Q0格式
LACCN_,1;
2N
SACLKMAX;
保存,Q0格式
LTF2M;
F-M转换系数37749,Q21格式
MPYUF_MODU;
PAC
SACHM_;
保存M,Q9格式
BCYCLE;
循环
--------------------------------------假中断子程序---------------------------------------------------------
PHANTOMRET;
假中断
--------------------------------------T1下溢中断处理子程序-----------------------------------------
_C_INT2SST#ST0,ST0_SAVE;
保存现场ST0
SST#ST1,ST1_SAVE;
保存ST1
SACHACCH
SACLACCL;
保存ACC
SPHP_HI
SPLP_LO;
保存P
MPY#1;
P<
=T
SPLT_SAVE;
保存T
LDP#224
LACCPIVR,1;
读偏移地址
ADD#PVECTORS;
子向量表首地址
BACC
WXMLDP#232
清中断标志
LTPITC;
MPYUK_;
Q0格式
PAC;
计算K*π*T_carr
SACHTEMP1;
保存乘积,Q12格式
LTTEMP1
乘调制波频率,Q4格式
计算K*π*T_carr*T_modu
RPT#3
ROR;
右移4位,Q12格式
SACLTEMP1;
保存第1个角度值
LACCTEMP1
ADD#8579;
加2π/3,Q12格式
SACLTEMP2;
保存第2个角度值
SUB#25736;
检测是否小于2π,Q12格式
BCNDWXM1,LEQ;
小于2π跳转
否则保存
WXM1LACCTEMP1
ADD#17157;
加4π/3,Q12格式
SACLTEMP3;
保存第3个角度值
BCNDWXM2,LEQ;
否则保存
WXM2LTTEMP1;
开始将第1个角度转换成度
MPYUATOD;
乘转换系数,Q4格式
保存第1个角度值,Q0格式
LACC#SIN_ENTRY;
SIN表入口地址
ADDTEMP1;
偏移量
TBLRTEMP1;
保存第1个SIN值,Q14格式有符号数
MPYM_;
乘M,Q9格式
Q23格式
SACHTEMP1,7;
相当于右移9位,Q14格式有符号数
LACCTEMP1
ADD#1,14;
加+1
保存,Q14格式
LTT_QUA;
T_carr/4=250,Q0格式
MPYUTEMP1
SACHTEMP1,2;
相当于右移14位,保存
为Q0格式
LTTEMP2;
开始将第2个角度转换成度
MPYUATOD
SACHTEMP2;
保存第2个角度值,Q0格式
ADDTEMP2;
TBLRTEMP2;
保存第2个SIN值,Q14格式有符号数
LTTEMP2
SACHTEMP2,7;
LACCTEMP2
MPYUTEMP2
SACHTEMP2,2;
LTTEMP3;
开始将第3个角度转换成度
SACHTEMP3;
保存第3个角度值,Q0格式
ADDTEMP3;
TBLRTEMP3;
保存第3个SIN值,Q14格式有符号数
LTTEMP3
SACHTEMP3,7;
LACCTEMP3
MPYUTEMP3
SACHTEMP3,2;
LACCK_
ADD#1;
K+1
SACLK_
SACHTEMP4;
LTTEMP4
SACLTEMP4;
保存第4个角度值
LACCTEMP4
SACLTEMP5;
保存第5个角度值
BCNDWXM3,LEQ;
WXM3LACCTEMP4
SACLTEMP6;
保存第6个角度值
BCNDWXM4,LEQ;
WXM4LTTEMP4;
开始将第4个角度转换成度
保存第4个角度值,Q0格式
ADDTEMP4;
TBLRTEMP4;
保存第4个SIN值,Q14格式有符号数
SACHTEMP4,7;
LACCTEMP4
MPYUTEMP4
SACHTEMP4,2;
LTTEMP5;
开始将第5个角度转换成度
SACHTEMP5;
保存第5个角度值,Q0格式
ADDTEMP5;
TBLRTEMP5;
保存第5个SIN值,Q14格式有符号数
LTTEMP5
SACHTEMP5,7;
LACCTEMP5
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 采样 SPWM 程序
![提示](https://static.bdocx.com/images/bang_tan.gif)