📄 uitype.h
字号:
#include "MOTOType.h"
#include "hardware_intc.h"
#define FirstTime 1
#define updateTime 1
#define Measure 0
#define NeedPassword 1
#define Setting 2
#define System 3
#define noDot 0
#define hasDot 1
#define setYear 0
#define setDate 1
#define setHM 2
#define setSecond 3
#define SelectFunc 0
#define ValueSetting 1
#define TimeSetting 2
#define FixingValue 0
#define FixingConfirm 1
#define PasswordInput 2
#define PasswordConfirm 3
#define PasswordSettingValue 0
#define SystemParaSet 4
#define SystemParaSetConfirm 5
#define Measure_StateNum 17 //测量菜单数
#define Protect_StateNum 14 //设定保护功能数
#define Menu_0 StartTime_Menu
#define Menu_1 OverHeat_Menu
#define Menu_2 OverLoad_Menu
#define Menu_3 Block_Menu
#define Menu_4 OverCurrent_Menu
#define Menu_5 Current_Low_Menu
#define Menu_6 Unbalance_Menu
#define Menu_7 PhaseBreak_Menu
#define Menu_8 Grounding_Menu
#define Menu_9 Phase_Reversed_Menu
#define Menu_10 Voltage_Low_Menu
#define Menu_11 Voltage_shake_Menu
#define Menu_12 Voltage_Over_Menu
#define Menu_13 PT_Broken_Menu
#define SystemMenu_0 StartSignal_Menu
#define SystemMenu_1 ControlWay_Menu
#define SystemMenu_2 CommunicateAdd_Menu
#define SystemMenu_3 CheckoutWay_Menu
#define SystemMenu_4 CurrentRating_Menu
#define SystemMenu_5 VoltageRating_Menu
#define SystemMenu_6 CT_Menu
#define SystemMenu_7 D1_Menu
#define SystemMenu_8 D2_Menu
#define SystemMenu_9 D3_Menu
#define SystemMenu_10 D4_Menu
#define SystemMenu_11 D5_Menu
#define SystemMenu_12 D6_Menu
#define SystemMenu_13 D7_Menu
#define SystemMenu_14 D8_Menu
#define SystemMenu_15 Time_Menu
#define SystemMenu_16 SaveValue_Menu
#define SystemMenu_17 LoadValue_Menu
#define TimeValue 1
#define CurrentMultipleValue 2
#define VoltageMultipleValue 3
#define Func 4
/********************设定中用到的电流电压倍数*******/
typedef struct
{
//第一位存倍数 第二位存堵转电流定值地址
float
Block_Current[2], //堵转
Over_Current_I[2], //过流一段
Over_Current_II[2], //过流二段
Low_Current[2], //欠流
I0[2], //零序
Low_Voltage[2], //欠压
Over_Voltage[2]; //过压
}_Value_Parameter;
/******************************系统参数菜单结构体*******/
typedef struct
{
unsigned long *NodeNext;
unsigned long *NodePre;
U16 symbolData[2];
int MenuNum;
int MenuType; //功能选择 或者是数值设定或者是时间
int BitNeedSet;
int ValueRange; //功能选择的最大数 或者数值设定时的范围
int DotEnable; //1有小数点,0无小数点设置的时候是整数
int *dataAdd; //数据地址 若是时间,则是年的地址
}System_Menu_Struct;
/******************************设定功能顶层菜单结构体*******/
typedef struct
{
unsigned long *NodeNext;
U16 symbolData[2];
int BitNeedSet;
int MenuNum;
float *data[3];
}Menu_Top_Struct;
/******************************设定功能子菜单结构体*******/
typedef struct
{
unsigned long *NodeNext;
U16 symbolData[2];
int BitNeedSet;
float *dataAdd;
int parameter;
}SubMenu_Struct;
/**************************菜单状态结构体**************/
typedef struct
{
int
Func_Select, //测量或者设置选择
Protect_Select, //显示和设定 的内容 主菜单选择
Menu_Num, // 子菜单总数
Menu_Level, // 当前子菜单号
Cursor, //光标位置 0_1_2_3
Bit_NeedSet, // 需要修改的位数
TimeSetting_Level; //设定时间时的状态(日期或者时间 等等)
U16
LED_1,
LED_2,
LED_3,
LED_4; //数码管数据
int
Up_Flag, //上下键按键标志
Down_Flag,
Enter_Flag; //上下键按键标志
unsigned long *ActiveMenuAdd; //当前菜单的结构体地址
unsigned long *PreMenuAdd; //上一个菜单的结构体地址
}MenuStatus_Struct;
enum
{
offset_Func_Select, //测量或者设置选择
offset_Protect_Select, //第几种保护功能 菜单第一层;
offset_Menu_Num,
offset_Menu_Level,
offset_Cursor,
offset_Bit_NeedSet,
offset_LED_1,
offset_LED_2,
offset_LED_3,
offset_LED_4, //数码管数据
offset_UP_flag,
offset_DOWN_flag,
offset_ActiveMenuAdd
};
/*************************菜单状态结构体地址*******************/
//#define MenuStatusAdd (int *)(0x1fff0000 + 0x600)
//MenuStatus_Struct *MenuStatus = (MenuStatus_Struct *) (0x1fff0000 + 0x800);
/********************************************************************************/
#define Func_Select (MenuStatus -> Func_Select)
#define Protect_Select (MenuStatus -> Protect_Select)
#define Menu_Num (MenuStatus -> Menu_Num)
#define Menu_Level (MenuStatus -> Menu_Level )
#define Cursor (MenuStatus -> Cursor )
#define Bit_NeedSet (MenuStatus -> Bit_NeedSet)
#define TimeSetting_Level (MenuStatus -> TimeSetting_Level)
#define LED_1 (MenuStatus -> LED_1)
#define LED_2 (MenuStatus -> LED_2 )
#define LED_3 (MenuStatus -> LED_3 )
#define LED_4 (MenuStatus -> LED_4 ) //数码管数据
#define Up_Flag (MenuStatus -> Up_Flag)
#define Down_Flag (MenuStatus -> Down_Flag)
#define Enter_Flag (MenuStatus -> Enter_Flag)
#define ActiveMenuAdd (MenuStatus -> ActiveMenuAdd)
#define PreMenuAdd (MenuStatus -> PreMenuAdd)
/***********************************菜单状态*********************/
/*****************************************************************************
#define Func_Select (*(MenuStatusAdd+offset_Func_Select))
#define Protect_Select (*(MenuStatusAdd+offset_Protect_Select))
#define Menu_Num (*(MenuStatusAdd+offset_Menu_Num))
#define Menu_Level (*(MenuStatusAdd+offset_Menu_Level ))
#define Cursor (*(MenuStatusAdd+offset_Cursor ))
#define Bit_NeedSet (*(MenuStatusAdd+offset_Bit_NeedSet) )
#define LED_1 (*(MenuStatusAdd+offset_LED_1))
#define LED_2 (*(MenuStatusAdd+offset_LED_2 ))
#define LED_3 (*(MenuStatusAdd+offset_LED_3 ))
#define LED_4 (*(MenuStatusAdd+offset_LED_4 )) //数码管数据
#define UP_flag (*(MenuStatusAdd+offset_UP_flag))
#define DOWN_flag (*(MenuStatusAdd+offset_DOWN_flag) )
#define ActiveMenuAdd (*(MenuStatusAdd+offset_ActiveMenuAdd) )
************************************************************************/
/****************************测量值显示菜单内容的结构体*****************/
typedef struct
{
float *DataAdd[20]; //第0 个显示的数据的地址
U16 Symbol_Segment[40]; //标号的数码管段值
}Measure_Display_Data_Struct;
#define MeasureDisplayData_Add ( float *)0x1fff1000
#define Symbol_Segment Measure_Display_Data->Symbol_Segment
/*******************************************************************************/
extern unsigned long * MenuNode_Scan(int node1,int node2 );
extern void Float2Led(float value,U16 Float2LedValue[3]);
extern unsigned short ledBuff[4];
extern int runTimes;
extern int Led2Int(U16);
extern int keyNum;
extern float LedResultTemp[3];
extern float LedResult;
extern int passwordInputTimes;
extern U16 FixValueTemp[4];
extern MenuStatus_Struct *MenuStatus;
extern int pdelaytime;
extern _SystemSetting SystemSetting;
extern System_Menu_Struct ControlWay_Menu,
CommunicateAdd_Menu,
CheckoutWay_Menu,
CurrentRating_Menu,
VoltageRating_Menu,
Time_Menu;
void Fixed_Initial(void);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -