📄 ram.c
字号:
#include "define.h"
/*--------------------------------------------*/
/*====== jumper define ==========*/
/*--------------------------------------------*/
/*1->接上跳线,0->断开跳线
b0->JX2
b1->JF1
b2->JF2
b3->JPH
b4->JPM
b6->JX1
*/
#define JX2 sys_ram.0
#define JF1 sys_ram.1
#define JF2 sys_ram.2
#define JPH sys_ram.3
#define cool_only sys_ram.4
#define JP35 sys_ram.5 /*已无跳线设定*/
#define JX1 sys_ram.6
#define autostart !JPH
#define TeShu_fan sys_ram.7
/*
TeShu_fan = 0 : 普通转速
TeShu_fan = 1 : 非默认转速
*/
#define Vane_ID JF2
/*
Vane_ID = 0 : 旧风口 35V 用
Vane_ID = 1 : 新风口 25V 用
*/
/*--------------------------------------------*/
/*====== Ram define ==========*/
/*--------------------------------------------*/
#define cdly1s Flag1sRam1.0
#define outfan1s Flag1sRam1.1
#define fantime1s Flag1sRam1.2
#define guoyali_1s Flag1sRam1.3
#define defrost_1s Flag1sRam1.4
#define out_coil_1s Flag1sRam1.5
#define coil4c_1s Flag1sRam1.6
#define yure_1s Flag1sRam1.7
#define emergency1s Flag1sRam2.0
#define dew_prv1s Flag1sRam2.1
#define timer1s Flag1sRam2.2
#define sleep1s Flag1sRam2.3
#define yufang_c1s Flag1sRam2.4
#define autoMset1s Flag1sRam2.5
#define c_c_t1s Flag1sRam2.6
#define fan_very_hi_1s Flag1sRam2.7
/*
#define fanVHi_1s Flag1sRam3.0
*/
#define inside_1s Flag1sRam3.1
#define tempfall_1s Group1sRam.0
#define fancheck1s Group1sRam.1
#define port1s Group1sRam.2
#define fanerr1s Group1sRam.3
#define ad1s Group1sRam.4
#define fanctl1s Group1sRam.5
/*
#define Group1sRam.6
*/
#define E2PRom1s Group1sRam.7
#define d15sflg Coffflag.0
#define d175sflg Coffflag.1
#define d235sflg Coffflag.2
#define d295sflg Coffflag.3
#define d10mflg Coffflag.4
#define c1min Conflag.0
#define c2min Conflag.1
#define c3min Conflag.2
#define c5min Conflag.3
#define c7min Conflag.4
#define c8min Conflag.5
#define c9min Conflag.6
#define c10min Conflag.7
#define roomtemp_err Err_ram.0
#define incoiltemp_err Err_ram.1
#define outcoiltemp_err Err_ram.2
#define fan_err Err_ram.3
/*********************************************/
/*********************************************/
/*********************************************/
/*********************************************/
/*********************************************/
/*********************************************/
/*********************************************/
#ifdef MAINRAM
#define __SUAdr sreg unsigned char
#define __SUWord sreg unsigned int
#define __SWord sreg int
#define __SAdr_union sreg union
#define __SAdr_struct sreg struct
#define __UAdr unsigned char
#define __UWord unsigned int
#define __Adr_union union
#define __Flag bit
#else
#define __SUAdr extern sreg unsigned char
#define __SUWord extern sreg unsigned int
#define __SWord extern sreg int
#define __SAdr_union extern sreg union
#define __SAdr_struct extern sreg struct
#define __UAdr extern unsigned char
#define __UWord extern unsigned int
#define __Adr_union extern union
#define __Flag extern bit
#endif
/***********************
++++++++++++++++++++++++
RAM define here
++++++++++++++++++++++++
**********************/
__Flag F0;
__SUWord coil4c_time,coil_time_cnt;
__SUWord timer10min;
__SUWord yufang_c_time;
__SUWord sleeptime,automodeT;
__SUWord dew_prv_time,emergency_test_time,c_cumulate_time;
__SUWord defrost_time,defrostTime,fallingtime,guoyali_Total_T;
__SWord PID_buff,this_e,last_e,this_delta_e,last_delta_e,double_delta_e;
__SUWord this_CR00_v,set_v,spd_result,pulse_width_cnt;
__SUWord Old_CR90,Old_CR90_5ms;
__SUWord InSideDry_T;
/*
__SUWord Gao16bit,Di16bit,ChuShu16bit;
*/
__SAdr_union
{
unsigned int word;
struct
{
unsigned char L;
unsigned char H;
} byte;
} adHLram,Gao16bit,Di16bit,ChuShu16bit;
__SUAdr Gao8bit,Di8bit,ChuShu8bit,yushu,shan;
__SUAdr PluseOneCyc,fan_run_detect;
/*
Word_Buff,
#define tempc Word_Buff.byte.H
#define tempd Word_Buff.byte.L
*/
__SUAdr Ram5mscnt;
__SUAdr Flag1sRam1,Flag1sRam2,Flag1sRam3; /* can be shorted */
__SUAdr Group1sRam; /* can't be shorted */
__SUAdr Conflag,Coffflag;
__SUAdr Err_ram;
__UAdr rmot_fancode,rmot_fancode_bak;
__SUAdr mode,runmode,oldrunmode,automode_mode,automode_settemp;
__SUAdr vane_Tcnt;
__SUAdr vane_mode;
/*
__SUAdr v_position_cnt;
__SUAdr v_object_cnt;
__SUAdr v_angle_cnt;
*/
__SUWord v_position_cnt;
__SUWord v_object_cnt;
__SUWord v_angle_cnt;
__SUAdr v_swing_cnt;
__SUAdr v_swing_dly;
__SUAdr motor_step;
/********** only for adsub ***************/
__SUAdr adnum;
__SUAdr tempa,tempb;
/*
__SUAdr Timer1mscnt;
*/
__SUAdr ad_room,ad_coil,ad_out_coil,ad_ID,roomtemp,settemp;
__SUAdr fan_1s_pls,fanspd_cnt,fan_p_cnt;
__SUAdr buzcounter;
__SUAdr remo_buff,remo_step,remo_byte,remo_bit;
__SUAdr sys_ram,sys_ram_bak; /* system jumper flag */
__SUAdr E2PROM_sys_ram;
/*E2PROM中,10h-17h数据*/
/* 10h-15h = GADEGG,并且
16h = 17h,则数据有效
E2PROM_sys_ram bit 7 6 5 4 3 2 1 0
| | | | | | |_|____> b1b0 : 00 - 正常机型
| | | | | | 01 - 25v/GC机型
| | | | | | 10 - SAMPO机型
| | | | | | 11 - 暂无
| | | | | |________> b4 : 0 - 新风口(25V) 1 - 旧风口(35V)
| | | | |__________>
| | | |____________>
| | |______________>
| |________________>
|__________________>
*/
__UAdr T_on_m,T_off_m;
__UAdr compoffT,componT,compTcnt;
__SUAdr E2RomAdr;
__SUAdr E2RomRWptr;
__SUAdr E2RomRWnum; /*Max read cnt : 8 / Max write cnt : 8 */
__SUAdr E2RomWork[8];
__SUAdr flashcnt;
__SUAdr reg_remo_fan;
__UAdr key_cnt,k_ID,k_ck_T;
__UAdr yuretime,guoyali_time;
__UAdr outfan_d5s;
__UAdr defrost_step;
__UAdr fantime;
__SUAdr old_fan_run_word,fan_run_word;
__SUAdr fancheckram,fanerrram;
__SUAdr tempfalltime,old_incoiltemp;
__SUAdr incoilcnt,coiltempbuff,incoiltemp;
/*
__SUAdr position_plus;
*/
__SUAdr K_short_cnt;
__SUAdr FlagRamOne;
__SUAdr FlagRamTwo;
__SUAdr FlagRamThree;
__SUAdr FlagRamFour;
__SUAdr FlagRamFive;
__SUAdr FlagRamSix;
__SUAdr FlagRamSeven;
__SUAdr FlagRamEight;
__SUAdr FlagRamNine;
__SUAdr FlagRamTen;
__UAdr heater_dly_cnt;
__SUAdr jixing;
__SUAdr angle_off_v;
__SUAdr angle_1_v;
__SUAdr angle_3_v;
__SUAdr angle_4_v;
__SUAdr angle_5_v;
__SWord angle_2_v;
__SWord position_plus;
__SUAdr remo_code[14],test1,test2;
__SUAdr Task_ptr;
__SUAdr remoTimerCnt;
__SUAdr send_loop,send_byte,TmsCnt,show_cnt;
__SUAdr show_dataL,show_dataH,led_show,show_buff[4];
__SUAdr time_300ms_cnt;
__UAdr tm82_5ms_cnt,tm82_1s_cnt,tm82_20ms_cnt;
__UAdr show_type;
__UAdr fan_very_hi_1min,fan_very_hi_30min,fan_1min_cnt;
__UAdr fan_run_10min,fan_run_1h,fan_run_240h;
__UAdr show_data_bak,show_data;
__UAdr temptime,flash_T_cnt;
/*********************************************/
#define save_power FlagRamOne.0
#define saveTflg FlagRamOne.1
#define ACKOk FlagRamOne.2
#define E2PROM_Ok FlagRamOne.3
#define E2PROM_ison FlagRamOne.4
#define Data_right FlagRamOne.5
#define remo_ok FlagRamOne.6
#define remo_ready FlagRamOne.7
#define comp FlagRamTwo.0
#define valve FlagRamTwo.1
#define outdoor_fan FlagRamTwo.2
#define aux_heater FlagRamTwo.3
#define TCB FlagRamTwo.4
#define power FlagRamTwo.5
#define abnormal FlagRamTwo.6
#define fan_off FlagRamTwo.7
#define emergency FlagRamThree.0
#define emergency_test FlagRamThree.1
#define To100msFLG FlagRamThree.2
#define yufang FlagRamThree.3
#define defrost FlagRamThree.4
#define timer FlagRamThree.5
#define time_on FlagRamThree.6
#define time_off FlagRamThree.7
#define automode_settemp_ok FlagRamFour.0
#define mode_is_selt FlagRamFour.1
#define dry_init_temp_ok FlagRamFour.2
#define coolfan_prv FlagRamFour.3
#define defrost_interval_pass FlagRamFour.4
#define first_mode_change FlagRamFour.5
#define incoil_falling FlagRamFour.6
#define TERM_C FlagRamFour.7
#define sleeptime_pass FlagRamFive.0
#define H_comp_150min_ok FlagRamFive.1
#define close_ok FlagRamFive.2
#define position_ok FlagRamFive.3
#define vane_work_or_close FlagRamFive.4
#define dew_prv FlagRamFive.5
#define vane_cool_prv FlagRamFive.6
#define v_up_down FlagRamFive.7
#define triger_flg FlagRamSix.0
#define triger_lock FlagRamSix.1
#define oldkey FlagRamSix.2
#define oldkeystd FlagRamSix.3
#define fan_is_ok FlagRamSix.4
#define f_chck_first FlagRamSix.5
#define too_top_press_flg FlagRamSix.6
#define comp_ever FlagRamSix.7
#define inside_dry FlagRamSeven.0
#define adstart FlagRamSeven.1
#define beeon FlagRamSeven.2
#define beeLong FlagRamSeven.3
#define beeLongFLG FlagRamSeven.4
#define fan_spdVAL_ok FlagRamSeven.5
#define FLG5ms FlagRamSeven.6
#define FLG500ms FlagRamSeven.7
#define flash05sflg FlagRamEight.0
#define whoshow FlagRamEight.1
#define flash_ms FlagRamEight.2
#define flash_flg FlagRamEight.3
#define outcoil_flg FlagRamEight.4
#define short_EN FlagRamEight.6
#define keyisOK FlagRamEight.7
#define press_exit_255s FlagRamNine.0
#define ziwaiLED FlagRamNine.1
#define step_swing_FLG FlagRamNine.2
#define swing_init FlagRamNine.3
#define up_swingFLG FlagRamNine.4
#define clean FlagRamNine.5
#define dryness_flg FlagRamNine.6
#define comp_ever_cool FlagRamNine.7
#define tm51ok FlagRamTen.0
#define tm82_20ms FlagRamTen.1
#define fan_1min FlagRamTen.2
#define rinse_flg FlagRamTen.3
#define delay_30s_flg FlagRamTen.4
#define clean_disreco_flg FlagRamTen.5
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -