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

📄 uart2senddef.c

📁 Fujitsu MB89P475的应用实例
💻 C
字号:
//发送给室内机的数据
__direct  union 	_Mode_
{
	unbyte byte;
	struct
	{
		unbyte		On_Off	     :1;			//开关机标志
		#define		On_Off		ModeRegister[DisplayMachineOrder].bit.On_Off
		unbyte				     :1;
		unbyte		SaveElc	     :1;			//节电有无标志
		#define		SaveElc		ModeRegister[DisplayMachineOrder].bit.SaveElc
		unbyte				     :1;
		unbyte		TimerOnFlag	 :1;			//定时开有无标志
		#define		TimerOnFlag	 ModeRegister[DisplayMachineOrder].bit.TimerOnFlag	
		unbyte		TimerOffFlag :1;			//定时关有无标志
		#define		TimerOffFlag	 ModeRegister[DisplayMachineOrder].bit.TimerOffFlag	
		unbyte		InForceRun   :1;			//强制运行标志
		#define		InForceRun	 ModeRegister[DisplayMachineOrder].bit.InForceRun	
		unbyte		TempChoose   :1;			//室温传感器选择 =1 选择集控器传感器 ;=0 选择室内机传感器
		#define		TempChoose	 ModeRegister[DisplayMachineOrder].bit.TempChoose	
	}bit;
	struct  bit_b
	{
		unbyte	On_Off_:1;
		unbyte	bit1:1;
		unbyte	bit2:1;
		unbyte	bit3:1;
		unbyte	TimerOnFlag_:1;
		unbyte	TimerOffFlag_:1;
		unbyte	bit6:1;
		unbyte	bit7:1; 
	}bit_;         
}ModeRegister[IndoorMacs];

//====================================================================================
union	_userMode_1
{
	unbyte	byte;
	struct
	{
		unbyte		Mode	:4;				//模式
		#define		Mode	FuctionRegister[DisplayMachineOrder].bit.Mode
		unbyte		FanSpeed :4;			//风速切换
		#define		FanSpeed	FuctionRegister[DisplayMachineOrder].bit.FanSpeed
	}bit;	
	struct bit_b1
	{
		unbyte	 Mode_  	:4;
		unbyte   FanSpeed_ 	:4;
	}bit_;
}FuctionRegister[IndoorMacs];

//====================================================================================
union	_Mode_2
{
	unbyte	byte;
	struct
	{
		unbyte		FanDoor :4;				//风门
		unbyte		SetTemp :4;				//设定温度
	}bit;	
}FanDoorAndSetTemp[IndoorMacs];
		#define		FanDoor	FanDoorAndSetTemp[DisplayMachineOrder].bit.FanDoor
		#define		SetTemp	FanDoorAndSetTemp[DisplayMachineOrder].bit.SetTemp
//******************************************
union   _Mode_3
{
	unbyte	byte;
	struct
	{
		unbyte		SetCoolTemp :4;
		unbyte		SetHeartTemp:4;
	}bit;
}SetCoolHeartTemp[IndoorMacs];					//制热设定温度  对应FanDoorAndSetTemp

#define		SetCoolTemp			SetCoolHeartTemp[DisplayMachineOrder].bit.SetCoolTemp
#define		SetHeartTemp		SetCoolHeartTemp[DisplayMachineOrder].bit.SetHeartTemp



union   _Mode_4
{
	unbyte	byte;
	struct
	{
		unbyte		 			:6;			
		unbyte		 KeyManMadeRuned:1;  //=1 人工按键操作			
		unbyte		 EnLineContr:1;		//=1  线控器允许
	}bit;
	struct	bit_b4
	{
		unbyte		bit0:1;
		unbyte		bit1:1;
		unbyte		bit2:1;
		unbyte		bit3:1;
		unbyte		bit4:1;
		unbyte		bit5:1;
		unbyte		KeyManMadeRuned_:1;  //=1 人工按键操作			
		unbyte		EnLineContr_:1;
	}bit_;
}Command1[IndoorMacs];					//制热设定温度  对应FanDoorAndSetTemp
#define		KeyManMadeRuned  Command1[DisplayMachineOrder].bit.KeyManMadeRuned
#define		EnLineContr		Command1[DisplayMachineOrder].bit.EnLineContr
		
//******************************************
unbyte	InDoorTemp;
unword	ValveOpen[IndoorMacs];			//室内阀开度
unword	OutValve;						//室外阀开度
unword	TimerOn[IndoorMacs];
unword  TimerOff[IndoorMacs];
unbyte	NewIndoorNumber;



unbyte  ValveOpenH;						
unbyte  ValveOpenL;						//室外机阀开度,作线控器时,当作室内机编号临时寄存器
unbyte  TimerOnH;
unbyte  TimerOnL;
unbyte	TimerOffH;
unbyte	TimerOffL;
//************************************************************************
//发送给室外机的数据
union	Flag		CortrolMode;
		#define		ForceRunFlag	CortrolMode.bit.bit3				//=0 	  =1 强制运行有
unbyte	ForceFrequency;
//************************************************************************
//接收室内的数据
unbyte	InError[IndoorMacs];   //接收室内机的故障
unbyte  InInAirTemp;		  	   //室内进风温度
unbyte  InOutAirTemp;			     //室内出风温度
unbyte  InInExchangeTemp;		   //室内进管温度
unbyte  InOutExchangeTemp;		 //室内出管温度
unbyte  OutCurrent;				     //室外电流

⌨️ 快捷键说明

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