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

📄 spdreg.c

📁 用freescale公司的DSP56F8013芯片实现的PMSM的SVPWM 驱动
💻 C
字号:
#include "Cpu.h"
#include "Events.h"
#include "Spdreg.h"

extern int omeg;								/* Q0 about 240,angle increment */
extern int spdref;								/* Q0 240 means 1000rpm */	
extern int iqout;								/* Q1 */
extern int iqtemp0;								/* Q1 */
extern int iqref;								/* Q15 */
extern int gujun;												


void Spdreg(void)							
{
	long int temp32;
	long int temp33;
	
	int errspd;									/* Q0 error */
	int kpspd=512;								/* Q8 */				
	int kispd=128;								/* Q8 */
	int kcspd=8192;
	int iqrmin=10830;							/* Q1 q axis min value */
	int iqrmax=11000;							/* Q1 q axis max value */
	int iqtemp;									/* Q15 used to calculate ud */

	errspd=spdref-omeg;										
	
	temp32=(L_mult(kpspd,errspd))>>8;			 			
	iqtemp=iqtemp0+(int)(temp32);	
	
	if(iqtemp>iqrmax)							
	iqout=iqrmax;
	
	else if(iqtemp<iqrmin)						
	iqout=iqrmin;
	
	else
	iqout=iqtemp;								
	
	temp32=(L_mult(kispd,errspd))>>8;							
	temp33=(L_mult(kcspd,(iqout-iqtemp)))>>16;			
	iqtemp0=iqtemp0+(int)(temp32+temp33);				
	
	iqref=iqout;	
}

⌨️ 快捷键说明

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