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

📄 jf_atmel.h

📁 一款完整的家用电器程序,具有控制商用机的功能,应用广泛,有一定的参考价值
💻 H
📖 第 1 页 / 共 3 页
字号:
signed    char  outroom_TH;	//室外环境温度预留
unsigned    char  i_cof_sensiadj10;	//灵敏度调节参数*10
unsigned    char  i_adj_time;	//容调间隔时间秒
unsigned    char  mode_set_1; //字节7模块组合参数 先用B4、B3额定加湿量0-4kg,01-9kg,10-15kg,快测暂不用
unsigned int v_highlimit; //电压上限值
unsigned int v_lowlimit; //电压下限值	
unsigned    char   v_lowlimit_times;	//电压低于下限值次数
unsigned    char   v_highlimit_times;	//电压高于上限值次数
unsigned    char  sht_measure_time;	//SHT1测量的等待应答时间秒
int VA_value;	//A相电压
int VB_value;	//B相电压
int VC_value;	//C相电压
unsigned    char  act_state1; //输出1
unsigned    char  act_state2; //输出2
int hour_beiyong_set;	//备用机切换时间小时
unsigned    char  humid_ratio;	//加湿量设定%
unsigned    char  humid_rated;	//额定加湿量设定(0-4kg,01-9kg,10-15kg)
signed int  t_value10_temp_1;	//回风温度第1值
signed int  t_value10_temp_2;	//回风温度第2值
signed int  t_value10_temp_3;	//回风温度第3值
signed int  t_value10_temp_4;	//回风温度第4值
unsigned    char  rh_value_temp_1;	//回风湿度第1值
unsigned    char  rh_value_temp_2;	//回风湿度第2值
unsigned    char  rh_value_temp_3;	//回风湿度第3值
unsigned    char  rh_value_temp_4;	//回风湿度第4值

int THset10;	//10倍的设定温度
 	float fth_actual025;	//025Tm 10倍的温度精度*0.25 
 	float Tset025Tm;//Tset+0.25Tm=Tset025Tm+fth_actual025
	float   Tset050Tm;//Tset+0.5Tm
	float   Tset075Tm;	//Tset+0.75Tm=Tset050Tm+fth_actual025
	float   Tset_025Tm;	//Tset- 0.25*Tm
	float   Tset_050Tm;	//Tset- 0.5*Tm
	float   Tset_075Tm;	//Tset- 0.75*Tm
	float  RHset05RHm ;	//RHset+0.5RHm
	float  RHset_05RHm ;	//RHset-0.5RHm	
void fun_auto_set_caculate(void); //计算设定值的温度湿度 
void fun_auto_set(void); //判定自动所处状态,选择具体模式
void fun_2heat_open(void); //当一级电加热已经启动15秒后,开第二组电加热      	
void fun_1heat_open(void); //只开一级电加热
void fun_heat_off1(void); //仅仅一组加热开时关开的电加热
void fun_1heat_open2(void); //当一级电加热已经启动15秒后,开第二组电加热,2组开或2组关时不干预

void fun_key(void);	//读键入开关机按钮、紧急按钮、故障复位按钮
void fun_heat2on_close1(void);  //两级开时关一组 	
void fun_measure_temp_start(void); //启动测量温度程序
void fun_measure_temp(void); //启动测量温度程序
void fun_measure_humid_start(void); //启动测量湿度程序
void fun_measure_humid(void); //启动测量湿度程序
void fun_read_humid(void); //读取SHT1湿度数据
void fun_read_temp(void); //读取SHT1的温度数据
void  fun_act_state(void);  //计算输出状态1、2
void fun_fault_reset(void);	//故障复位程序
void fun_rht_compare(void);  //在范围内则比较温度湿度是否低于前20秒
void fun_humid_clean_low(void);	//加湿小清洗
void fun_humid_clean_big(void);	//加湿大清洗

unsigned   int  t_humid_clean_start;	//加湿清洗计时
unsigned   char  manual_set_temp;	//动作请求的暂存值
unsigned   char  t_highwater_ok;	//高水位无计时
unsigned   char  rh_high20s_RHsetRHm; //rh_value > RHset+RHm时次数加1
unsigned   char  rh_high20s_RHset; //rh_value > RHset时次数加1
unsigned   char  rh_low20s_RHset_05RHm; //rh_value < RHset_05RHm时次数加1
unsigned   char  t_low20s_Tset_050Tm; //t_value10 < Tset_050Tm时次数加1


void fun_guanji_sht(void);	//正常关机,风机保持原状
unsigned  char  flag;	//标志位
  	#define		b_humid_paikong		0x04	//当加湿器HUMIN连续停止24小时,则打开排水阀,加湿器排水时间到后关闭排水阀。	
  	#define		b_humid_pkstart		0x02	//加湿清洗开始
  	#define		b_humid_long		0x01	//加湿开超过30分钟
  	#define		b_sht_nofirst		0x08	//0上电时或故障后第一次读SHT正确
unsigned  char  t_humid_paikong;  //加湿器排空计时
void fun_humid_paikong(void);	//加湿器排空水
unsigned   char  t_lpp_compoff;	//压缩机关时低压保护检测秒
unsigned   char  t_100ms_times;	//100ms的计时
unsigned   char  t_1s_times;	//10ms的计时1秒


unsigned  int fault_exTH0_time_std;	//快测时排气感温包开路或短路的计时
unsigned   int  t_1min_3s_std; //快测时通讯故障连续时间
unsigned  int  t_10min_10s_std;	//快测时SHT读正确次数
unsigned int exTH0_clear_time;	//排气感温包开路或短路恢复时间
unsigned  char  t_exTH0_delaytime;	//排气感温包开路或短路延时
unsigned  char  fault_exTH0_times;	//排气感温包开路或短路故障次数
unsigned    char   ADsumTH_times;	//排气感温包AD采样次数
unsigned  int  sht_ok_times;	//SHT读正确次数
unsigned  char  b_fault_sht_times;	//SHT出故障次数
unsigned  int  t_b_fault_sht;	//在1秒计时中定义SHT故障是否恢复
void fun_fault_beep(void);	//20080201增加故障报警蜂鸣器子程序
void fun_nofault_run(void);	//20080201无故障时动作
unsigned    int   fast_test_time;	//快测时间
unsigned  char  fault_tongxun_times;	//通讯故障次数
unsigned  int  t_b_fault_tongxun;	//通讯故障时间
unsigned    int   tongxun_ok_time;	//无通讯故障的时间
unsigned int sht_noread_time; //未读到SHT的时间
unsigned int t_180s_10s; //180秒到快测10秒
unsigned int	t_10min_15s_std; //10min到快测15秒
unsigned   char  rh_low20s_RHset05RHm; //20080417 rh_value < RHset+05RHm时次数加1
void fun_humid_paishui(void);	//加湿器连续停止时间超过24小时排空水
unsigned   char  t_humid_paishui;	//加湿排空水计时
const  unsigned  char  TAB50K_10temp[]=
{//50K感温包10K电阻分压 AD表
//	05,05,06,06,06,07,07,08,08,09,	//-20C -> -11C	
//        09,10,10,11,11,12,13,13,14,14,	//-10C -> -1C
        15,16,16,17,18,19,20,21,22,23, //0C  -> 9C
        24,25,26,27,28,29,31,32,33,34, //10C -> 19C
        36,37,39,40,42,43,45,46,48,50,   //20C -> 29C
        52,53,55,57,59,61,63,65,67,69,   //30C -> 39C
        71,73,75,77,79,81,84,86,88,90,    //40C -> 49C
        93,95,97,99,102,105,106,108,111,113,     //50C -> 59C
        114,118,120,122,125,127,129,131,133,135,    //60C -> 69C
        138,140,142,144,147,149,151,153,155,157,    //70C -> 79C
        159,161,163,164,166,168,170,172,173,175,    //80C -> 89C
        177,179,180,182,183,185,186,188,189,190,    //90C -> 99C
        193,194,195,196,198,199,200,201,203,204,  //100C ->109C
	205,206,207,208,209,210,211,212,213,214,  //110C ->119C
	215,216,217,218,218,219,220,221,221,222, //120C ->129C
	223,224,224,225,226,226,227,227,228,229, //130C ->139C
	229,230,230,231,231,232,232,232,233,234,	//140C ->149C 以上为阻值表
	235,236,237,238,239,240,241,242,243,244,	//150-159 自己编制
	245,246,247,248,249,250,251,252,253,254	//160-169 自己
};
const  unsigned  char  TAB50K_15temp[]=
{//50K感温包AD表
//	8,8,9,9,10,10,11,11,12,13,	//-20C -> -11C	
//        13,14,15,16,16,17,18,19,20,21,	//-10C -> -1C
        22,23,24,25,26,27,29,30,31,33, //0C  -> 9C
        34,35,37,38,40,42,43,45,47,48, //10C -> 19C
        50,52,54,56,58,60,62,64,66,68,   //20C -> 29C
        70,73,75,77,79,82,84,86,89,91,   //30C -> 39C
        93,96,98,101,103,105,108,110,113,115,    //40C -> 49C
        118,120,122,125,127,132,132,134,137,139,     //50C -> 59C
        140,144,146,148,150,153,155,157,159,160,    //60C -> 69C
        163,165,167,169,171,173,175,176,178,180,    //70C -> 79C
        182,183,185,187,188,190,191,193,194,196,    //80C -> 89C
        197,199,200,201,203,204,205,206,207,209,    //90C -> 99C
        210,211,212,213,214,215,216,217,218,219,  //100C ->109C
	219,220,221,222,223,223,224,225,226,226,  //110C ->119C
	227,228,228,229,230,230,231,231,232,232, //120C ->129C
	233,233,234,234,235,235,236,236,237,237, //130C ->139C
	237,238,238,239,239,239,240,240,240,241	//140C ->149C
};



const  unsigned  char  TAB20K_20temp[]=
{//20K感温包AD表	
	24,25,27,28,30,31,33,34,36,38,	//-20C -> -11C	
        39,41,43,45,47,49,51,53,55,58,	//-10C -> -1C
        60,62,65,67,70,72,75,77,80,83,   	//0C  -> 9C
        86,88,91,94,97,99,102,105,108,111,	//10C -> 19C
        114,117,119,122,125,128,131,134,136,139,	//20C -> 29C
        142,145,147,150,152,155,157,160,162,165,	//30C -> 39C
        167,170,172,174,176,178,180,183,185,187,	//40C -> 49C
        188,190,192,194,196,197,199,201,202,204,	//50C -> 59C
        205,207,208,209,211,212,213,215,216,217,	//60C -> 69C
        218,219,220,221,222,223,224,225,226,227,	//70C -> 79C
        228,228,229,230,231,231,232,233,233,234,	//80C -> 89C
        235,235,236,236,237,237,238,238,239,239,	//90C -> 99C
        240,240,241,241,242,242,242,243,243,243,	//100-109
	244,244,244,245,245,245,245,246,246,246	//110-119 
};

const unsigned char  TAB_wpose[]=
{ 0x00,0x00,0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80
//10 位选PORTC
};
const unsigned char  TAB_wpose2[]=
{ 0x01,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
//10 位选PORTG0\PG1
};
const unsigned char  TAB_dircode[]=
{ 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0xf7,0xff,0xb9,0xbf,0xf9,0xf1
//0  1	 2   3    4    5    6     7    8    9  10A.,11B.,12C.,13D.,14E.,15F.共阴极数码管显示
};


/*
机房空调主板Atmel m64芯片管脚图:晶振为4M
(1)PEN_       		           (33)PG0/(WR_)外风机OFAN
	(2)PE0 [RXD0/PDI]与显示板通讯		(34)PG1/(RD_)调节阀YV-ADJUST
	(3)PE1 [TXD0/PDO]与显示板通讯		(35)PC0/(A8) 除湿阀YV-DRY
	(4)PE2 [XCK0/AIN0] 485控制端 		(36)PC1/(A9) 高水位保护HIGH_WATER
	(5) PE3 [OC3A/AIN1]故障复位按钮KEY3 (37)PC2/(A10) 电加热带故障HEATER_FAULT
(6)PE4 [OC3B/INT4]	应急开关KEY2	(38)PC3/(A11) 过滤器堵塞P-FILTER
	(7)PE5 [OC3C/INT5] 快测TEST		(39)PC4/(A12) 风机低风压故障FY
	(8)PE6 [T3/INT6]	故障灯LED2 ALARM(40)PC5/(A13) 压缩机过载OVC
	(9) PE7 [IC3/INT7]	运行灯LED1      (41)PC6/(A14) 电加热2保护EH2
	(10)	PB0 [SS_] SPI	模块的地址拨码2SW1	 (42)PC7/(A15) 电加热1保护EH1
	(11)PB1[SCK]	SPI	模块的地址拨码1   (43)PG2[ALE] 外风机过载保护P-OFAN
	(12)PB2 [MOSI]SPI容量拨码2 SW2	 (44)PA7[AD7] 离心风机过载P-FAN
	(13)	PB3 [MISO] SPI容量拨码1		  (45)PA6[AD6] 逆相保护PH
	(14)	PB4 [OC0] 电加热HEAT1	    (46)PA5[AD5] 低压开关保护LPP
	(15)PB5	[OC1A] 电加热HEAT2		(47)PA4[AD4]高压开关保护HPP
	(16)	PB6[OC1B] 压缩机COMP  		 (48)PA3[AD3]温湿度SHT15 SCK
	(17)PB7	[OC2/OC1CTC1比较输出]	蜂鸣器	(49)PA2[AD2]温湿度SHT15 DATA
	(18)	PG3[TOSC2]	内风机FAN		    (50)PA1[AD1] 空
	(19)	PG4[TOSC1] 看门狗			(51)PA0[AD0] 空
	(20)	RESET_				            (52)VCC
	(21)VCC					            (53)GND
	(22)	GND							(54)PF7[ADC7/TDI]+仿真9
	(23)	XTAL2							(55)PF6[ADC6/TDO]仿真3
	(24)	XTAL1							(56)PF5[ADC5/TMS]仿真5
	(25)	PD0[SCL/INT0] 加湿HUMID		  (57)PF4[ADC4/TCK]仿真1
	(26)	PD1[SDA/INT1] 进水阀YV-IN    (58)PF3[ADC3] 排气温度EXHAUST,50K感温包
	(27)PD2	[RXD/INT2]	与调速板通讯	(59)PF2[ADC2] 预留环境采样15KOUTROOM
(28)	PD3[TXD/INT3]	与调速板通讯	(60)PF1[ADC1]空
	(29)	PD4[IC1]	捕捉输入 485控制端		(61)PF0[ADC0]除湿电流I-HUMID
(30) PD5[XCK1] 	排水阀YV-OUT		(62)AREF
(31) PD6[T1] 	计数入	压缩机阀YV-COMP	(63)GND
(32) PD7[T2] 	计数入	空		(64)AVCC


*/

⌨️ 快捷键说明

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