📄 spwm_isr.h
字号:
#ifndef __SPWM_ISR_h__
#define __SPWM_ISR_h__
// write your header here
#define STOP 1 //电机当前在停止状态
#define MOTO_Start 2 //电机在启动过程中
#define RUN_UP 3 //电机正在加速
#define RUN 4 //电机在恒频运行
#define RUN_Down 5 //电机正在减速运行
#define STOP_Start 6 //电机处在减速停车轮过程中
//=================================================================================================
// ----Function: int SPMC75_Set_Moto_RUN_F(unsigned int F);
// -Description: 电机工作频率设置
// --Parameters: "F"电机的目标运行频率
// -----Returns: "0" 参数设置正确,"1" 频率小于频率下限,"2" 频率大于频率上限,"3" 电机没有启动
// -------Notes:
//=================================================================================================
extern int SPMC75_Set_Moto_RUN_F(unsigned int F); //设置电机的目标运行频率
//=================================================================================================
// ----Function: int Moto_RUN_Ctrl(void);
// -Description: 频率的平滑控制,在这里是控制核心,其功能比较复杂
// --Parameters: None
// -----Returns: "0" 当前频率和目标频率相等,"1" 当前频率还没有达到目标频率
// -------Notes:
//=================================================================================================
extern int SPMC75_Moto_RUN_Ctrl(void); //电机运行控制
//=============================================================
// ----Function: void SPMC75_MCP_ISR(void);
// -Description: 最大执行时间20.96us -- 418 + 34 + 51 Cycle (24MHz)
// 最小执行时间14.29us -- 258 + 34 + 51 Cycle (24MHz)
// --Parameters: None
// -----Returns: None
// -------Notes: 为保证系统的可靠,这段代码在系统没有异常时最好是最高优先级
// 同时这段代码使用了寄存器切换,因此用户用汇编调用时不用保存环境
//=============================================================
extern void SPMC75_MCP_ISR(void); //MCP定时器的中断服务
//=================================================================================================
// ----Function: int Set_DC_BUS_Voltage(unsigned int Voltage);
// -Description: 直流干线电压设置
// --Parameters: "Voltage" 1000~4000 实际电压的10倍
// -----Returns: "0"设置参数正确,"1"设置参数错误
// -------Notes:
//=================================================================================================
extern int SPMC75_Set_DC_BUS_Voltage(unsigned int Voltage); //设置当前直流干线电压
//=============================================================
// ----Function: int SPMC75_Set_SPWM_F(int Switch_F);
// -Description: 载波设定 5KHz or 10KHz
// --Parameters: Switch_F: "0" 使用5859Hz/24MHz的PWM频率,"1" 使用11718Hz/24MHz的PWM频率
// -----Returns: "0"参数设置正确,"1"参数设置有错
// -------Notes:
//=============================================================
extern int SPMC75_Set_SPWM_F(int Switch_F); //设置载波频率
//=============================================================
// ----Function: int SPMC75_Set_UP_END_F(unsigned int F);
// -Description: 设置频率上限
// --Parameters: "F" 10~30000,实际频率的100倍
// -----Returns: "0"参数设置正确,"1"参数设置有错
// -------Notes:
//=============================================================
extern int SPMC75_Set_UP_END_F(unsigned int F); //设置频率上限
//=============================================================
// ----Function: int SPMC75_Set_Down_F(unsigned int F);
// -Description: 设置频率下限
// --Parameters: F: 0.1~300Hz
// -----Returns: "0"参数设置正确,"1"参数设置有错
// -------Notes:
//=============================================================
extern int SPMC75_Set_Down_F(unsigned int F); //设置频率下限
//=============================================================
// ----Function: int SPMC75_Set_Base_F(unsigned int F);
// -Description: 设置基频频率
// --Parameters: F: 30~100Hz
// -----Returns: "0"参数设置正确,"1"参数设置有错
// -------Notes:
//=============================================================
extern int SPMC75_Set_Base_F(unsigned int F); //设置基频频率
//=============================================================
// ----Function: int SPMC75_Set_Start_F(unsigned int F);
// -Description: 设置起动频率
// --Parameters: F: 0.1~20Hz
// -----Returns: "0"参数设置正确,"1"参数设置有错
// -------Notes:
//=============================================================
extern int SPMC75_Set_Start_F(unsigned int F); //设置起动频率
//=============================================================
// ----Function: int SPMC75_Set_Max_Voltage(unsigned int Voltage);
// -Description: 设置最高工作电压,也就是基频时对应的电压值
// --Parameters: Voltage: 80~380V
// -----Returns: "0"参数设置正确,"1"参数设置有错
// -------Notes:
//=============================================================
extern int SPMC75_Set_Max_Voltage(unsigned int Voltage); //设置最高电压
//=============================================================
// ----Function: int SPMC75_Set_Min_Voltage(unsigned int Voltage);
// -Description: 设置起动电压,也就是启动频率对应的电压
// --Parameters: Voltage: 5~70V
// -----Returns: "0"参数设置正确,"1"参数设置有错
// -------Notes:
//=============================================================
extern int SPMC75_Set_Min_Voltage(unsigned int Voltage); //设置起动电压
//=============================================================
// ----Function: int SPMC75_Set_Up_F_Add(long unsigned int F_Add);
// -Description: 设置加速增量
// --Parameters: F_Add: 每次调整不能超过0.5Hz 频率增量值*6553600
// -----Returns: "0"参数设置正确,"1"参数设置有错
// -------Notes:
//=============================================================
extern int SPMC75_Set_Up_F_Add(long unsigned int F_Add); //设置加速增量
//=============================================================
// ----Function: int SPMC75_Set_Down_F_Add(long unsigned int F_Add);
// -Description: 设置减速增量
// --Parameters: F_Add: 每次调整不能超过0.5Hz 频率增量值*6553600
// -----Returns: "0"参数设置正确,"1"参数设置有错
// -------Notes:
//=============================================================
extern int SPMC75_Set_Down_F_Add(long unsigned int F_Add); //设置减速增量
//=================================================================================================
// ----Function: int SPMC75_Return_Moto_state(void);
// -Description: 返回电机的当前运行状态
// --Parameters:
// -----Returns: 请参照上面的宏定义
// -------Notes:
//=================================================================================================
extern int SPMC75_Return_Moto_state(void); //返回电机的当前状态
//=================================================================================================
// ----Function: unsigned int Return_Currently_F(void);
// -Description: 电机当前工作频率返回
// --Parameters: None
// -----Returns: Currently_F
// -------Notes:
//=================================================================================================
extern unsigned int SPMC75_Return_Currently_F(void); //返回当前运行频率
//=================================================================================================
// ----Function: void SPWM_TMR3_Init(int Gate,int Daly_time);
// -Description: TMR3_module initialize function
// --Parameters: None
// -----Returns: None
// -------Notes:
//=================================================================================================
extern void SPMC75_SPWM_TMR_Init(int Gate,int Daly_time); //电机驱动的硬件初始化
//=================================================================================================
// ----Function: int SPMC75_Start_Moto(int Dir);
// -Description: 启动电机服务
// --Parameters: Dir: 电机的运行方向;"0"正向起动,"1"反向起动
// -----Returns: "0"参数正常,"1"所设参数错误
// -------Notes:
//=================================================================================================
extern int SPMC75_Start_Moto(int Dir); //以方向Dir起动电机
//=================================================================================================
// ----Function: int STOP_Moto(int Mode);
// -Description: 停止电机服务
// --Parameters: Mode 停机方式;"1"自由停车(立即断电),"0"减速停车
// -----Returns: "0"设置参数正确,"1"设置参数错误
// -------Notes: 没有问题
//=================================================================================================
extern int SPMC75_Stop_Moto(int Mode); //以Mode设定的方式停止电机
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -