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

📄 mtcparam.h

📁 该程序是ST7MC驱动三洋压缩机(交流)
💻 H
字号:
/**************** (c) 2004  STMicroelectronics ********************************
     
PROJECT  : 3-phase AC induction motor drive Software Library
COMPILER : COSMIC / METROWERKS

MODULE  :  MTCParam.h
VERSION :  1.0.0

CREATION DATE :		March 2004

AUTHOR :	V. Onde / Microcontroller Division Applications
			Consumer & Micro Group

-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-

DESCRIPTION :   Contains the Induction Motor control library parameters
              
-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-

MODIFICATIONS :

*******************************************************************************
 THE SOFTWARE INCLUDED IN THIS FILE IS FOR GUIDANCE ONLY. ST MICROELECTRONICS
 SHALL NOT BE HELD LIABLE FOR ANY DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES
 WITH RESPECT TO ANY CLAIMS ARISING FROM USE OF THIS SOFTWARE.
******************************************************************************/
#ifndef MTC_PRM
#define MTC_PRM

#include "config.h"


/////////////////////// MTC Peripheral Input clock ////////////////////////////
	#define MTC_CLOCK	((u32)16000000) 	/* Resolution: 1Hz */

///////////////////////////// Motor Pole pairs ////////////////////////////////
	#define	POLE_PAIR_NUM 	((u8)1) /* Number of motor's poles pair */

//////////////////////////////// Speed Sensor /////////////////////////////////
	#define	TACHO_PULSE_PER_REV	((u8)8) /* Number of pulses per revolution given by tachogenerator */
	#define	ROTOR_SPEED_FACTOR	((u32) ( POLE_PAIR_NUM * ( MTC_CLOCK * 10 ) / TACHO_PULSE_PER_REV ) )
	#define	SPEED_OVERFLOW		((u16) ( ROTOR_SPEED_FACTOR / 0xFFFF ))
	#define SPEED_FIFO_SIZE 	((u8)4)

///////////////////////////// PWM Frequency ///////////////////////////////////
	#define CENTER_ALIGNED  	((u8)2)   // Definitions of PWM patterns type
	#define EDGE_ALIGNED    	((u8)1)

	#define PATTERN_TYPE	CENTER_ALIGNED

	#ifdef PWM_10BIT
		#define PWM_MCP0 ((u16)639)
		u8 OFFSET @0x0a;	// Trick to access OFFSET constant in assembly with immediate adressing mode
	#else
	#ifdef PWM_9BIT
		#define PWM_MCP0 ((u16)511)
		u8 OFFSET @0x08;	// Trick to access OFFSET constant in assembly with immediate adressing mode
	#endif
	#endif


	// Prescaler ratio defines PWM frequency in a rough way:
	// 0 -> 15.66kHz, 12.5 kHz (depending on CMP0 value)
	// 1 -> 7.8kHz
	// 3 -> 3.9kHz
	// 7 -> 1.95kHz
	#define PWM_PRSC ((u8)0)
	#define PWM_FREQ	((u16) ( MTC_CLOCK / (u32)(PATTERN_TYPE * PWM_MCP0 * (PWM_PRSC+1)) ) )	/* Resolution: 1Hz */
	#define STATOR_FREQ_RESOL ((u16) (((u32) PWM_FREQ * 10 ) / 256) )	/* To convert freq Cmd into appropriate unit */

///////////////////////// Sinewave frequency Range //////////////////////////////
	#define HIGHEST_FREQ	((u16)3400)	/* Sinewave Max Frequency (max theorical: 65535) */
	#define LOWEST_FREQ	((u16)30)		/* Sinewave Min Frequency */

////////////////////////////// Deadtime Value /////////////////////////////////
	#define DEADTIME	((u8)4)

////////////////////// Other Settings not modified by GUI /////////////////////
	#define PHASE_SHIFT	((s8)85)		// (85/256) * 360 = 120 degrees
	#define L6386_POLARITY	((u8)0x3F)	// PWM outputs: positive logic level for L6386D drivers
	#define MAX_RATIO		((u8)7)    // Max MTIM prescaler ratio defining the lowest expected speed feedback


#ifdef PWM_9BIT
	const u8 SINE3RDHARM[256] = {
		0,	5,	11,	16,	21,	27,	32,	37,	42,	47,	52,	57,
		61,	66,	70,	75,	79,	83,	86,	90,	93,	97,	100,103,
		105,108,110,113,115,116,118,120,121,122,123,124,
		125,126,126,126,127,127,127,127,127,127,127,126,
		126,126,126,125,125,125,124,124,124,123,123,123,
		123,122,122,122,122,122,122,122,123,123,123,123,
		124,124,124,125,125,125,126,126,126,126,127,127,
		127,127,127,127,127,126,126,126,125,124,123,122,
		121,120,118,116,115,113,110,108,105,103,100,97,
		93,	90,	86,	83,	79,	75,	70,	66,	61,	57,	52,	47,
		42,	37,	32,	27,	21,	16,	11,	5,

		0,	5,	11,	16,	21,	27,	32,	37,	42,	47,	52,	57,
		61,	66,	70,	75,	79,	83,	86,	90,	93,	97,	100,103,
		105,108,110,113,115,116,118,120,121,122,123,124,
		125,126,126,126,127,127,127,127,127,127,127,126,
		126,126,126,125,125,125,124,124,124,123,123,123,
		123,122,122,122,122,122,122,122,123,123,123,123,
		124,124,124,125,125,125,126,126,126,126,127,127,
		127,127,127,127,127,126,126,126,125,124,123,122,
		121,120,118,116,115,113,110,108,105,103,100,97,
		93,	90,	86,	83,	79,	75,	70,	66,	61,	57,	52,	47,
		42,	37,	32,	27,	21,	16,	11,	5	
	};

#else
#ifdef PWM_10BIT

	const u8 SINE3RDHARM[256] = {
		0,	3,	7,	10,	13,	17,	20,	23,	26,	29,	32,	35,
		38,	41,	44,	46,	49,	51,	54,	56,	58,	60,	62,	64,
		66,	67,	69,	70,	71,	72,	73,	74,	75,	76,	77,	77,
		78,	78,	78,	79,	79,	79,	79,	79,	79,	79,	79,	79,
		78,	78,	78,	78,	78,	77,	77,	77,	77,	77,	77,	76,
		76,	76,	76,	76,	76,	76,	76,	76,	76,	76,	77,	77,
		77,	77,	77,	77,	78,	78,	78,	78,	78,	79,	79,	79,
		79,	79,	79,	79,	79,	79,	78,	78,	78,	77,	77,	76,
		75,	74,	73,	72,	71,	70,	69,	67,	66,	64,	62,	60,
		58,	56,	54,	51,	49,	46,	44,	41,	38,	35,	32,	29,
		26,	23,	20,	17,	13,	10,	7,	3,

		0,	3,	7,	10,	13,	17,	20,	23,	26,	29,	32,	35,
		38,	41,	44,	46,	49,	51,	54,	56,	58,	60,	62,	64,
		66,	67,	69,	70,	71,	72,	73,	74,	75,	76,	77,	77,
		78,	78,	78,	79,	79,	79,	79,	79,	79,	79,	79,	79,
		78,	78,	78,	78,	78,	77,	77,	77,	77,	77,	77,	76,
		76,	76,	76,	76,	76,	76,	76,	76,	76,	76,	77,	77,
		77,	77,	77,	77,	78,	78,	78,	78,	78,	79,	79,	79,
		79,	79,	79,	79,	79,	79,	78,	78,	78,	77,	77,	76,
		75,	74,	73,	72,	71,	70,	69,	67,	66,	64,	62,	60,
		58,	56,	54,	51,	49,	46,	44,	41,	38,	35,	32,	29,
		26,	23,	20,	17,	13,	10,	7,	3	
	};

#endif	/* PWM_10BIT */
#endif	/* PWM_9BIT */


#endif	/* MTC_PRM */

/*** (c) 2004 STMicroelectronics ****************** END OF FILE **************/

⌨️ 快捷键说明

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