sggt/App/APP_WU/Inc/app_screen_main.h

139 lines
3.2 KiB
C
Raw 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.

#ifndef _APP_SCREEN_MAIN_H
#define _APP_SCREEN_MAIN_H
#include "apps_gather.h"
//初始界面
//{
//初始界面编号0开机动画
#define SCREEN_INIT 0
//}
//主界面
//{
//主界面编号1信号输入输出示波器显示
#define SCREEN_MAIN 1
//主界面ON
#define IO_ON 1
//主界面OFF
#define IO_OFF 0
//主界面,输入模式
#define IO_INPUT 0
//主界面,输出模式
#define IO_OUTPUT 1
//游标-横线起点1小数点的宽度与数字不一样因此分成左右两半
#define IO_CURSOR_START1 136
//游标-横线起点2
#define IO_CURSOR_START2 244
//游标-数字之间间隔大小
#define IO_CURSOR_INTERVAL 24
//游标-y轴坐标值
#define IO_CURSOR_Y 230
//闪烁次数上限
#define TWINKLE_CNT_MAX 10
//数码管闪烁功能使能
#define NIXIE_CUBE_ENABLE 0
//EEPROM状态监控
#define EEPROM_MONITOR_ENABLE 1
//}
//菜单数据初始化
void screen_data_init(void);
//主界面参数初始化
void main_data_init(void);
//绘图数据初始化
void plot_data_init(void);
//界面复位
void menu_reset(void);
//按键功能,主界面
void key_functions_main(void);
//开机动画
void scr_init_run(void);
//进度条设置, start[0, end], end[start,100], interval[ms]结束后返回1
uint8_t init_set_bar(uint8_t start, uint8_t end, uint16_t interval);
//主界面
void scr_main_run(void);
//运行时间显示
void runtime_show(void);
//电池电量显示
void battery_show(void);
//设置游标位置【0000.000】0~7
void set_cursor_position(void);
//设置数码管符号位0->熄灭1->显示负号
void set_nixie_cube_sign(uint8_t on2off, uint8_t sg);
//设置数码管显示值io_slc->输入/输出pos->第几个数字num->数值*1000
//补充说明pos = 99时num=[00000009999999]pos = 10时数值显示为空白。
void set_nixie_cube(uint8_t io_slc, uint8_t pos, int32_t num);
//RE按键修改输出值
void keyset_output(int8_t key_step);
//设置当前的输出值1000*实际值->(无符号)数组,可直接输入负数
void set_output_array(int32_t pvo);
//设置输出值:数字显示 + 符号 + 缓存sto->实际值
void set_output(float32 sto);
//获取当前设定的输出值(数组&符号 -> (有符号)实际值)
float32 get_output_value(void);
//显示当前测量值
void input_value_show(void);
//输入输出、ON&OFF状态指示
void io_on2off_status(void);
//恢复主界面的各项参数显示,用于界面切换(设置界面->主界面)
void scr_main_recover(void);
//颜色更新
void scr_main_color_update(void);
//数值闪烁数值发生变化后开始闪烁10秒无动作后闪烁停止游标移动后恢复前一时刻位置的数值
void num_twinkle(void);
//实时曲线绘制
void plot_drawing(void);
//设置工作模式和工作模式类型
void set_working_mode(SIG_FUNCTIONS mode, SIG_FUNCTIONS_TYPE type);
//更新上下限&显示,曲线上下限,数值上下限
void up2down_update(int16_t low, int16_t up);
//eeprom状态监控
void eep_status_monitor(void);
#endif