📄 ramset.c
字号:
#define DEF_IO
#ifdef DEF_IO
#define EXTERNAL
#else
#define EXTERNAL extern
#endif
unbyte ResetCode[4];
__direct union Flag CurrencyFlag;
#define Flag0 CurrencyFlag.bit.bit0
#define Flag1 CurrencyFlag.bit.bit1
#define RemoterOnKeyFlag CurrencyFlag.bit.bit2 //=1 遥控器有开关键操作
__direct union Flag RemoteWorkFlag;
#define RemoteOnFlag RemoteWorkFlag.bit.bit0 //=1线控器有操作,=0线控器无操作
#define DelayDisposeFlag RemoteWorkFlag.bit.bit1 //模式键延时处理时间标志
#define ModeHaveActionFlag RemoteWorkFlag.bit.bit2 //模式键有操作
#define RemoteModeFlag RemoteWorkFlag.bit.bit3 //=1 集控器 ;=0 线控器
#define TempErrorFlag RemoteWorkFlag.bit.bit4 //集控器传感器故障
#define MacNumModeOkFlag RemoteWorkFlag.bit.bit5 //室内机编号完成
#define OldSetMovedOkFlag RemoteWorkFlag.bit.bit6 //设置转移标志 =1 设置已转移;=0 设置没转移
#define MacNumEntOkFlag RemoteWorkFlag.bit.bit7 //=1 检测到室内机 =0,没有检测到室内机
__direct union Flag Key_WorkFlag;
#define KeyCloseFlag Key_WorkFlag.bit.bit0 /*/key closed flag*/
#define KeyOpenFlag Key_WorkFlag.bit.bit1 /*/等待松开标志:=1 需等待; =0 不等待*/
#define KeyReadyFlag Key_WorkFlag.bit.bit2 /*/key_Scan over flag*/
#define KeyEnModiMachineFlag Key_WorkFlag.bit.bit3 //允许切换机器号标志
#define KeyEnModeWatchModeFlag Key_WorkFlag.bit.bit4 //允许观察室外数据标志
#define KeyMulCloseFlag Key_WorkFlag.bit.bit5 //复合键已经按下
#define KeyEnModiInNumberFlag Key_WorkFlag.bit.bit6 //允许对室内机进行编号
#define KeyTempChangeFlag Key_WorkFlag.bit.bit7 //温度传感器切换完成
__direct union Flag BuzzerLedWorkRegister;
#define LedOn_OffFlag BuzzerLedWorkRegister.bit.bit0
#define LedWorkingFlag BuzzerLedWorkRegister.bit.bit1
#define BuzzerOnTimerFlag BuzzerLedWorkRegister.bit.bit2
#define BuzzerOffTimerFlag BuzzerLedWorkRegister.bit.bit3
#define BuzzerOn_OffFlag BuzzerLedWorkRegister.bit.bit4
__direct union Flag A_D_WorkFlag;
#define Eenble_A_D_WorkFlag A_D_WorkFlag.bit.bit0
// #define TempSymbolFlag A_D_WorkFlag.bit.bit1 // ;=0 是正温度;=1 是负温
#define Channels1TransingFlag A_D_WorkFlag.bit.bit2
__direct union Flag UartFlag;
#define UartSendingFlag UartFlag.bit.bit0 //数据发送中
#define UartReceivingFlag UartFlag.bit.bit1
#define UartReceivedFlag UartFlag.bit.bit2 //数据接收完毕标志
#define UartSendTargetFlag UartFlag.bit.bit3 //发送目标 =0 发送给室外机 =1 发送给室内机
#define IndoorTestOverFlag UartFlag.bit.bit4 //=0 室内机检测进行中;=1 室内机检测完毕
#define EnLineContrResetOkFlag UartFlag.bit.bit5 //=1 集控状态复位完毕
//Lcd Area=========================
__direct union Flag Lcd_WorkFlag;
#define LcdResetFlag Lcd_WorkFlag.bit.bit0 //;=0 no reset =1 reseted
#define LcdAllLightFlag Lcd_WorkFlag.bit.bit1 //上电复位点亮0.5秒
#define LcdClear3sFlag Lcd_WorkFlag.bit.bit2 //3秒
#define LCDChangeSpeedFlag Lcd_WorkFlag.bit.bit3 //风速叶片切换标志
#define LcdFanDoorFlag Lcd_WorkFlag.bit.bit4 //风门叶片切换标志
#define LcdFanDoorAspectFlag Lcd_WorkFlag.bit.bit5 //风门叶片切换方向标志
#define LcdOffDisposeFlag Lcd_WorkFlag.bit.bit6 //没有开机时,按开关键以外的键首次显示
#define LcdDisModeSavedFlag Lcd_WorkFlag.bit.bit7 //显示模式寄存
__direct union Flag Lcd_WorkFlag1;
#define HaveDisposeTimerOnKeyFlag Lcd_WorkFlag1.bit.bit0 //有定时开按键操作标志
#define HaveDisposeTimerOffKeyFlag Lcd_WorkFlag1.bit.bit1 //有定时关按键操作标志
#define f500mSFlashFlag Lcd_WorkFlag1.bit.bit2 //0.5秒标志
#define DisCoolFlag Lcd_WorkFlag1.bit.bit3 //禁止制冷 =1 禁止制冷
#define DisModeSavedFlag Lcd_WorkFlag1.bit.bit4 //显示模式已经寄存
#define MacRecogniseOverFlag Lcd_WorkFlag1.bit.bit5 //机器识别完成标志
#define InTempErrorFlashFlag Lcd_WorkFlag1.bit.bit6 //室内传感器故障时闪烁标志
#define HaveTimerOnFlag Lcd_WorkFlag1.bit.bit7 //有定时开机标志
__direct union Flag_W AllMacOn_Off; //所有机器开关状态
#define LcdMac1 AllMacOn_Off.bit_w.bit0
#define LcdMac2 AllMacOn_Off.bit_w.bit1
#define LcdMac3 AllMacOn_Off.bit_w.bit2
#define LcdMac4 AllMacOn_Off.bit_w.bit3
#define LcdMac5 AllMacOn_Off.bit_w.bit4
#define LcdMac6 AllMacOn_Off.bit_w.bit5
#define LcdMac7 AllMacOn_Off.bit_w.bit6
#define LcdMac8 AllMacOn_Off.bit_w.bit7
#define LcdMac9 AllMacOn_Off.bit_w.bit8
#define LcdMac10 AllMacOn_Off.bit_w.bit9
#define LcdMac11 AllMacOn_Off.bit_w.bit10
#define LcdMac12 AllMacOn_Off.bit_w.bit11
#define LcdMac13 AllMacOn_Off.bit_w.bit12
#define LcdMac14 AllMacOn_Off.bit_w.bit13
#define LcdMac15 AllMacOn_Off.bit_w.bit14
#define LcdMac16 AllMacOn_Off.bit_w.bit15
__direct union Flag_W HaveMacFlag; //当前挂在室外机上的室内机
#define HaveMac1Flag HaveMacFlag.bit_w.bit8
#define HaveMac2Flag HaveMacFlag.bit_w.bit9
#define HaveMac3Flag HaveMacFlag.bit_w.bit10
#define HaveMac4Flag HaveMacFlag.bit_w.bit11
#define HaveMac5Flag HaveMacFlag.bit_w.bit12
#define HaveMac6Flag HaveMacFlag.bit_w.bit13
#define HaveMac7Flag HaveMacFlag.bit_w.bit14
#define HaveMac8Flag HaveMacFlag.bit_w.bit15
#define HaveMac9Flag HaveMacFlag.bit_w.bit0
#define HaveMac10Flag HaveMacFlag.bit_w.bit1
#define HaveMac11Flag HaveMacFlag.bit_w.bit2
#define HaveMac12Flag HaveMacFlag.bit_w.bit3
#define HaveMac13Flag HaveMacFlag.bit_w.bit4
#define HaveMac14Flag HaveMacFlag.bit_w.bit5
#define HaveMac15Flag HaveMacFlag.bit_w.bit6
#define HaveMac16Flag HaveMacFlag.bit_w.bit7
#include "LcdSegDefine.c"
#include "Uart2SendDef.c" //?¨?¨o?¨o¨°?¨2¨oy?Y??é?¤?é?¨a|ì?¨oy?Y
#include "Uart2ReceivedDef.c" //?óê?êòíaμ?êy?Y
//Key Area===================
__direct unbyte KeyDelayTime; /*/;Delay Read Key_Scan Port Times*/
__direct unbyte cKeyDetections; //有按键按下后连续检测键值相同的次数
__direct unbyte KeyValueRegister; /*存放最终按键值*/
__direct unbyte KeyValue; /*存放临时按键值*/
__direct unword KeyContinuum3STime;
__direct unword KeyMulKeyDelayTime; /*多键按下的连续时间*/
__direct unword DelayDisposeKeyTime; /*模式键延时处理计时器*/
__direct unword KeyContinuumTime; /*间连续按住的时间*/
__direct unbyte KeyManMadeFlagClearTime;//有人工操作标志延时清除时间
__direct unword NoUart2Timer; //连续检测室外通讯正常计时器
//Buzzer ARea==============================
__direct unbyte BuzzerOffTimerCounter;
__direct unbyte BuzzerWorkNumber;
__direct unbyte BuzzerOnTimerCounter;
//AD Area==========================
unbyte A_DSampleValue[14]; /* 室内温度值*/
unbyte A_DAverageValue;
unbyte A_DCounter; //低字节表示当前通道的采样次序,高字节表示采样的通道
unbyte ADSampleTime;
__direct byte InRoomTemp;
//time counter area====================
__direct unword Time3SecondCounter; //use for clear up and down icon
__direct unbyte Time500msCounter; //use for FanDoor Icon Scan time
__direct unbyte Flash500msCounter; //
__direct unbyte UartDelaySendTime; //Uart2接受到信号后延时发送计时器
__direct unbyte LedFlashNumber; //
__direct unbyte tTimer1Minute; //1分钟计时器
__direct unbyte tTimerOnOffFlash; //定时开关机机图标闪烁计时器
//Lcd area
__direct unbyte FanSpeedComp; //液晶风叶片旋转速度计时比较寄存器
__direct unbyte LCDChangeCounter; //液晶风叶片旋转速度计时器,每timebasic中断加一
__direct unbyte LCDErrorIconFlashTimer; //液晶故障图标闪烁计时器
__direct union Flag_W Lcd_M_State; //图标 M 的状态
__direct unbyte DisplayMode;
//高字节4~7分别显示:室内数据、外部温度、外部综合参数、频率、阀开度、定时开时间、定时关时间
//低字节0~3表示外部温度数值的顺序。
__direct unbyte DisplayModeTemporary; //显示模式暂存器
__direct unbyte DisplayDataOrder; //显示室外综合数据的次序
__direct unbyte DisplayMachineOrder; //显示机器次序
unbyte InMacModeRegister[IndoorMacs]; //室内机模式寄存器
unbyte OldIndoorNumber; //旧的室内机编号
unbyte IndoorMacNumBuff; //室内机编号暂存器(修改机器编号时使用)
//通用区数据区
__direct unbyte i;
__direct unbyte j;
__direct unbyte k;
__direct unbyte l;
byte SignedData;
unword Dobule;
//通用区指针区
unbyte *point;
unbyte *pointreceiv;
unbyte *pointsend;
// Remoto Opration area
//************************************************************************
//***********************数据接收区***************************************
//************************************************************************
unbyte cUart2; //发送、接收的引导码的计数器
unbyte cUart2Send; //线控器发送给室内机信号的机号顺序编码
unbyte SourceAddress; //
unbyte TargetAddress; //目标地址:数据接受方
unbyte InformationType; //数据类型
unbyte CommandState; //控制命令、状态字或数据帧数
unbyte Uart2Buf[16];
unbyte CheckSum;
unbyte NoInUart2Timer[16]; //连续检测室内机通讯正常计时器
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -