ShipCentralControl/Anjiehui7_DTU/User/dwin_form.h

105 lines
2.4 KiB
C
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*
*********************************************************************************************************
* IAR Development Kits
* on the
*
* Nano100
*
* Filename : dwin_form.h
* Version : V1.00
* Programmer(s) : Qian Xianghong
*********************************************************************************************************
*/
#ifndef USER_DIWN_FORM_PRESENT
#define USER_DIWN_FORM_PRESENT
#include "type.h"
// 初始化
void Form_Open();
// 显示任务主体
void Form_Task(void *p_arg);
// 按键任务主体
void Key_Task(void *p_arg);
// 允许匿名结构
#pragma anon_unions
#pragma pack(push, 1)
// 显示刷屏队列
typedef struct // size = 64
{
uint8_t oper; // 操作0x82写0x83读
uint16_t Addr; // 首地址
uint16_t count; // 长度以word为单位
union // 内容
{
char str[100];
uint8_t byte[100];
uint16_t word[50];
uint32_t dword[25];
};
} form_data_t;
typedef struct
{
int16_t rowCount; // 记录条数
uint16_t hdrAddr; // 表头显示地址
uint16_t rowPtr[10]; // 各行显示地址
uint16_t rowDesc[10]; // 各行描述地址
char rowStr[10][100]; // 各行显示内容
uint8_t bufIdx; // 双缓冲序号
int32_t topPtr; // 分页查询起始位置
} form_grid_t;
typedef struct
{
int16_t rowCount; // 记录条数
uint16_t hdrAddr; // 表头显示地址
uint16_t rowPtr[30]; // 各行显示地址
uint16_t rowDesc[30]; // 各行描述地址
char rowStr[30][30]; // 各行显示内容
uint8_t bufIdx; // 双缓冲序号
int32_t topPtr; // 分页查询起始位置
} form_grid2_t;
typedef struct
{
uint8_t func; // 查询功能1-储罐2-数据3-曲线)
// 以下为输入的条件标志
unsigned tgguFlag : 1;
unsigned psnFlag : 1;
unsigned dateFlag: 1;
unsigned : 5;
// 以下为输入的条件值
char TGGU[12]; // 罐箱号
uint8_t PSN[6];
int16_t normal; // 是否选择正常状态
int16_t fault; // 是否选择故障状态
int16_t warn; // 是否选择报警状态
int16_t offline;// 是否选择离线状态
int32_t date; // 起始日期
int16_t days; // 查询天数
} form_query_t;
#pragma pack(pop)
// 首页表格,报警页表格,查询表格
extern form_grid_t gridAll, gridWarn, gridQuery, girdAbout;
// 记录查询功能(储罐、数据或曲线)和查询条件
extern form_query_t formQuery;
// 清除表格内容
void Form_ClearGrid(form_grid_t *grid);
// 刷新表格
void Form_RefreshGrid(form_grid_t *grid);
// 滚动表格
void Form_ScrollGrid(form_grid_t *grid);
#endif