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

📄 err._h

📁 平缝机的单片机伺服控制系统源代码。本程序为用单片机控制永磁同步电机的低成本方案
💻 _H
字号:
/*****************************************************************
 *  文件名:      		Err.c
 *  版本号:      
 *  创作日期:    	2005.7.13
 *  作者:        		Zhoujie
 *  功能说明:    	故障检测与故障处理
 *  其它说明:    
 
 *****************************************************************/
 

/*****************************************************************

 *   修改日期:     
 *   修改人:
 *   修改原因:

*******************************************************************/





#ifndef	Err_h
#define Err_h

#include <iom88v.h>
#include <macros.h>

//宏定义:定义常用数据类型
#define byte			unsigned char	   		//常用数据类型byte
#define word			unsigned int			//常用数据类型word
#define dword		unsigned long int		//常用数据类型dword

#define LEDFLICKTIME1		 	  50						   //  LED 灯闪烁时亮的时间T1 * 10 ms
#define LEDFLICKTIME2			     50		            //  LED 灯闪烁时灭的时间T2 * 10 ms
#define LEDFLICKTIME3			     250		            //  LED 灯闪烁时两次闪烁间隔时间T3 * 10 ms

//宏定义:定义常用口线操作等,具体应用前应根据实际情况修改!

#define FO_MCU()  		(PINC & 0x02)	// 获得 FO_MCU 口线的值  PC 1
#define REV_MCU()  		(PIND & 0x10)	// 获得 REV_MCU 口线的值 PD4
#define T_Fault()  		(PIND & 0x02)	// 获得 T_Fault 口线的值 PD1


#define GREEN_ON()  		PORTC &= ~0x08	// LED GREEN 口线为0  打开 PC3
#define GREEN_OFF()  	PORTC |= 0x08	// LED GREEN 口线为1  关闭 PC3
#define RED_ON()  		PORTC &= ~0x04	// LED RED 口线为 0   打开 PC2
#define RED_OFF()  		PORTC |= 0x04	// LED RED 口线为 1   关闭 PC2
#define E_MAG1_ON()  	PORTB &= ~0x08	// 电磁铁1控制口线置1 打开 PB3
#define E_MAG1_OFF()  	PORTB |= 0x08	// 电磁铁1控制口线置0 关闭 PB3
#define E_MAG2_ON()  	PORTD &= ~0x20	// 电磁铁2控制口线置0 打开 PD5
#define E_MAG2_OFF()  	PORTD |= 0x20	// 电磁铁2控制口线置1 关闭 PD5
#define E_MAG3_ON()  	PORTB &= ~0x04	// 电磁铁3控制口线置0 打开 PB2
#define E_MAG3_OFF()  	PORTB |= 0x04	// 电磁铁3控制口线置1 关闭 PB2


//函数定义
void det_err(void);

byte det_err_over_flow(void );
byte det_err_inver_protect(void );
byte det_err_low_vol(void );
byte det_err_no_stop_needle(void );
byte det_err_over_vol(void );
byte det_err_solenoid_short(void );
byte det_err_syn_encoder(void );
byte det_err_motor_block(void );
byte det_err_motor_hall(void );



void led_flicker(byte type,byte times);
void electromagne_ctrl(byte target ,byte ctrl);


extern byte g_ErrCode01,g_ErrCode02,g_MotorRun,g_singleLowVol,g_NostopNeedle,g_LowVol,
		g_OverVol,g_SingleOverVol,g_SynEncoderErr,g_MotorBlock,g_LowSpeed,g_HallErr,g_LedType,
			g_LedTimesCnt,g_LedTimes,g_LedTimesT1,g_LedTimesT2,g_StartLedFlick,g_E_Mag_No,g_Err_Det_Disable;
extern word g_Over220VCnt,g_Lower220VCnt,g_Over400VCnt,g_Lower400VCnt,g_LowSpeedCnt,g_LedTimesT3;

#endif

⌨️ 快捷键说明

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