[200~A36新界面以及全部修改后的界面代码和数据结构体,界面有动画效果

This commit is contained in:
liulin
2024-04-18 09:50:14 +08:00
parent 3401b91efc
commit dd46bd3fa1
25 changed files with 68920 additions and 86 deletions

View File

@ -37,15 +37,12 @@ LV_FONT_DECLARE(MXC_WRYH_CT_bpp4_72px);
LV_FONT_DECLARE(arialuni_field_bbp2_32px);
#define LV_FONT_MXC_WRYH_CT_32PX &HarmonyOS_Sans_SC_Medium_32px
#define LV_FONT_MXC_WRYH_CT_10PX &MXC_WRYH_CT_bpp4_10px
#define LV_FONT_MXC_WRYH_CT_16PX &MXC_WRYH_CT_bpp4_16px
#define LV_FONT_MXC_WRYH_CT_20PX &MXC_WRYH_CT_bpp4_20px
#define LV_FONT_MXC_WRYH_CT_22PX &MXC_WRYH_CT_bpp4_22px
#define LV_FONT_MXC_WRYH_CT_30PX &MXC_WRYH_CT_bpp4_30px
#define LV_FONT_MXC_WRYH_CT_72PX &MXC_WRYH_CT_bpp4_72px
#define LV_FONT_BIG_NUMBER_180PX &Number_HarmonyOS_bpp4_180px
#define LV_FONT_BIG_NUMBER_128PX &Number_HarmonyOS_bpp4_128px
#define LV_FONT_BIG_NUMBER_92PX &Number_HarmonyOS_bpp4_92px
@ -68,10 +65,48 @@ LV_FONT_DECLARE(arialuni_field_bbp2_32px);
lv_obj_set_style_border_width(PARENT, 0, 0); \
lv_obj_set_scrollbar_mode(PARENT, LV_SCROLLBAR_MODE_OFF);}while(0)
//A36<33>½<EFBFBD><C2BD><EFBFBD> 2024.4.9 liulin
LV_FONT_DECLARE(MXC_MSYAHEI_CT_bpp4_10px);
LV_FONT_DECLARE(MXC_MSYAHEI_CT_bpp4_14px);
LV_FONT_DECLARE(MXC_MSYAHEI_CT_bpp4_21px);
LV_FONT_DECLARE(MXC_MSYAHEI_CT_bpp4_36px);
LV_FONT_DECLARE(MXC_MSYAHEI_CT_bpp4_48px);
#define LV_FONT_MXC_MSYAHEI_CT_10PX &MXC_MSYAHEI_CT_bpp4_10px
#define LV_FONT_MXC_MSYAHEI_CT_14PX &MXC_MSYAHEI_CT_bpp4_14px
#define LV_FONT_MXC_MSYAHEI_CT_21PX &MXC_MSYAHEI_CT_bpp4_21px
#define LV_FONT_MXC_MSYAHEI_CT_36PX &MXC_MSYAHEI_CT_bpp4_36px
#define LV_FONT_MXC_MSYAHEI_CT_48PX &MXC_MSYAHEI_CT_bpp4_48px
void lv_img_big_disp(lv_obj_t* parent, const lv_img_dsc_t **src , lv_coord_t x, lv_coord_t y,uint8_t img_num,uint8_t start);
lv_obj_t* lv_img_big_create(lv_obj_t* parent, const lv_img_dsc_t **src , lv_coord_t x, lv_coord_t y,uint8_t img_num,uint8_t start);
//A36<33>½<EFBFBD><C2BD><EFBFBD>
#if 1
//LV_IMG_DECLARE(ui_img_a36_colorbar_png)
LV_IMG_DECLARE(A36_colorbar_cfile)
LV_IMG_DECLARE(A36_waterbar1_cfile)
LV_IMG_DECLARE(A36_oilbar1_cfile)
LV_ATTRIBUTE_LARGE_CONST static const lv_img_dsc_t* panel_blackgroud_src[6] =
{
IMG_A36_BLACKGROUD1_ICO_1,
IMG_A36_BLACKGROUD1_ICO_2,
IMG_A36_BLACKGROUD1_ICO_3,
IMG_A36_BLACKGROUD1_ICO_4,
IMG_A36_BLACKGROUD1_ICO_5,
IMG_A36_BLACKGROUD1_ICO_6
};
LV_ATTRIBUTE_LARGE_CONST static const lv_img_dsc_t* panel_numscale_src[3] =
{
IMG_A36_NUMSCALE_ICO_1,
IMG_A36_NUMSCALE_ICO_2,
IMG_A36_NUMSCALE_ICO_3
};
#else if
LV_IMG_DECLARE(speed_arc);
LV_ATTRIBUTE_LARGE_CONST static const lv_img_dsc_t* panel_demo1_src[5] =
@ -83,19 +118,19 @@ LV_ATTRIBUTE_LARGE_CONST static const lv_img_dsc_t* panel_demo1_src[5] =
IMG_DM1_BG_5,
};
LV_ATTRIBUTE_LARGE_CONST static const lv_img_dsc_t* arc_test_src[4] =
LV_ATTRIBUTE_LARGE_CONST static const lv_img_dsc_t* arc_test_src[3] =
{
IMG_SPEED_ARC_1,
IMG_SPEED_ARC_2,
IMG_SPEED_ARC_3,
};
LV_ATTRIBUTE_LARGE_CONST static const lv_img_dsc_t* panel_bg2_src[6] =
LV_ATTRIBUTE_LARGE_CONST static const lv_img_dsc_t* panel_bg2_src[3] =
{
IMG_DM1_BAR_BG_1,
IMG_DM1_BAR_BG_2,
IMG_DM1_BAR_BG_3,
};
#endif
#endif

View File

@ -0,0 +1,101 @@
/*
* @Description:
* @Date: 2024-02-01 08:45:00
* @role:
* @LastEditTime:
*/
#ifndef __IMG_BASIC_H__
#define __IMG_BASIC_H__
#define lv_log_on printf
#include "language_table.h"
LV_FONT_DECLARE(Number_HarmonyOS_bpp4_180px);
LV_FONT_DECLARE(Number_HarmonyOS_bpp4_128px);
LV_FONT_DECLARE(Number_HarmonyOS_bpp4_92px);
LV_FONT_DECLARE(Number_HarmonyOS_bpp4_80px);
LV_FONT_DECLARE(Number_HarmonyOS_bpp4_62px);
LV_FONT_DECLARE(Number_HarmonyOS_bpp4_50px);
LV_FONT_DECLARE(Number_HarmonyOS_bpp4_46px);
LV_FONT_DECLARE(Number_HarmonyOS_bpp4_44px);
LV_FONT_DECLARE(Number_HarmonyOS_bpp4_36px);
LV_FONT_DECLARE(HarmonyOS_Sans_SC_Medium_32px);
LV_FONT_DECLARE(Number_HarmonyOS_bpp4_20px);
LV_FONT_DECLARE(Number_HarmonyOS_bpp4_28px);
LV_FONT_DECLARE(Number_HarmonyOS_bpp4_16px);
LV_FONT_DECLARE(Number_HarmonyOS_bpp4_12px);
LV_FONT_DECLARE(MXC_WRYH_CT_bpp4_10px);
LV_FONT_DECLARE(MXC_WRYH_CT_bpp4_16px);
LV_FONT_DECLARE(MXC_WRYH_CT_bpp4_20px);
LV_FONT_DECLARE(MXC_WRYH_CT_bpp4_22px);
LV_FONT_DECLARE(MXC_WRYH_CT_bpp4_30px);
LV_FONT_DECLARE(MXC_WRYH_CT_bpp4_72px);
LV_FONT_DECLARE(arialuni_field_bbp2_32px);
#define LV_FONT_MXC_WRYH_CT_32PX &HarmonyOS_Sans_SC_Medium_32px
#define LV_FONT_MXC_WRYH_CT_10PX &MXC_WRYH_CT_bpp4_10px
#define LV_FONT_MXC_WRYH_CT_16PX &MXC_WRYH_CT_bpp4_16px
#define LV_FONT_MXC_WRYH_CT_20PX &MXC_WRYH_CT_bpp4_20px
#define LV_FONT_MXC_WRYH_CT_22PX &MXC_WRYH_CT_bpp4_22px
#define LV_FONT_MXC_WRYH_CT_30PX &MXC_WRYH_CT_bpp4_30px
#define LV_FONT_MXC_WRYH_CT_72PX &MXC_WRYH_CT_bpp4_72px
#define LV_FONT_BIG_NUMBER_180PX &Number_HarmonyOS_bpp4_180px
#define LV_FONT_BIG_NUMBER_128PX &Number_HarmonyOS_bpp4_128px
#define LV_FONT_BIG_NUMBER_92PX &Number_HarmonyOS_bpp4_92px
#define LV_FONT_BIG_NUMBER_80PX &Number_HarmonyOS_bpp4_80px
#define LV_FONT_BIG_NUMBER_62PX &Number_HarmonyOS_bpp4_62px
#define LV_FONT_BIG_NUMBER_50PX &Number_HarmonyOS_bpp4_50px
#define LV_FONT_BIG_NUMBER_46PX &Number_HarmonyOS_bpp4_46px
#define LV_FONT_BIG_NUMBER_44PX &Number_HarmonyOS_bpp4_44px
#define LV_FONT_MEDIUM_NUMBER_36PX &Number_HarmonyOS_bpp4_36px
#define LV_FONT_SMALL_NUMBER_20PX &Number_HarmonyOS_bpp4_20px
#define LV_FONT_MEDIUM_NUMBER_28PX &Number_HarmonyOS_bpp4_28px
#define LV_FONT_SMALL_NUMBER_16PX &Number_HarmonyOS_bpp4_16px
#define LV_FONT_SMALL_NUMBER_12PX &Number_HarmonyOS_bpp4_12px
#define LV_FONT_ARIALUNI_ALL_32PX &arialuni_field_bbp2_32px
#define UI_PARENT_INIT(PARENT) do{lv_obj_set_size(PARENT,LV_PCT(100),LV_PCT(100));\
lv_obj_set_style_bg_color(PARENT,lv_color_black(),0); \
lv_obj_set_style_pad_all(PARENT,0,0); \
lv_obj_set_style_border_width(PARENT, 0, 0); \
lv_obj_set_scrollbar_mode(PARENT, LV_SCROLLBAR_MODE_OFF);}while(0)
void lv_img_big_disp(lv_obj_t* parent, const lv_img_dsc_t **src , lv_coord_t x, lv_coord_t y,uint8_t img_num,uint8_t start);
lv_obj_t* lv_img_big_create(lv_obj_t* parent, const lv_img_dsc_t **src , lv_coord_t x, lv_coord_t y,uint8_t img_num,uint8_t start);
LV_IMG_DECLARE(speed_arc);
LV_ATTRIBUTE_LARGE_CONST static const lv_img_dsc_t* panel_demo1_src[5] =
{
IMG_DM1_BG_1,
IMG_DM1_BG_2,
IMG_DM1_BG_3,
IMG_DM1_BG_4,
IMG_DM1_BG_5,
};
LV_ATTRIBUTE_LARGE_CONST static const lv_img_dsc_t* arc_test_src[4] =
{
IMG_SPEED_ARC_1,
IMG_SPEED_ARC_2,
IMG_SPEED_ARC_3,
};
LV_ATTRIBUTE_LARGE_CONST static const lv_img_dsc_t* panel_bg2_src[6] =
{
IMG_DM1_BAR_BG_1,
IMG_DM1_BAR_BG_2,
IMG_DM1_BAR_BG_3,
};
#endif

View File

@ -4,8 +4,6 @@
#define img_head_address 0x0
#define IMG_DM1_BAR_BG_1 (const lv_img_dsc_t *)(img_head_address + 0x0)
#define IMG_DM1_BAR_BG_2 (const lv_img_dsc_t *)(img_head_address + 0xd164)
#define IMG_DM1_BAR_BG_3 (const lv_img_dsc_t *)(img_head_address + 0x1a2c8)
@ -24,4 +22,33 @@
#define IMG_SPEED_ARC_3 (const lv_img_dsc_t *)(img_head_address + 0x7f9c8)
/***A36<33>½<EFBFBD><C2BD><EFBFBD>****/
#define IMG_A36_BLACKGROUD1_ICO_1 (const lv_img_dsc_t *)(img_head_address + 0x0)
#define IMG_A36_BLACKGROUD1_ICO_2 (const lv_img_dsc_t *)(img_head_address + 0xd970)
#define IMG_A36_BLACKGROUD1_ICO_3 (const lv_img_dsc_t *)(img_head_address + 0x1b2e0)
#define IMG_A36_BLACKGROUD1_ICO_4 (const lv_img_dsc_t *)(img_head_address + 0x28c50)
#define IMG_A36_BLACKGROUD1_ICO_5 (const lv_img_dsc_t *)(img_head_address + 0x365c0)
#define IMG_A36_BLACKGROUD1_ICO_6 (const lv_img_dsc_t *)(img_head_address + 0x43f30)
#define IMG_A36_BLUELIGHT_ICO (const lv_img_dsc_t *)(img_head_address + 0x44b8c)
#define IMG_A36_BLUETOOTH_ICO (const lv_img_dsc_t *)(img_head_address + 0x44fb8)
#define IMG_A36_ESPEEDPOINT_ICO (const lv_img_dsc_t *)(img_head_address + 0x452ac)
#define IMG_A36_GREENALIGHT_ICO (const lv_img_dsc_t *)(img_head_address + 0x4bb3c)
#define IMG_A36_GREENLIGHT_ICO (const lv_img_dsc_t *)(img_head_address + 0x4bf68)
#define IMG_A36_LEFTRED1_ICO (const lv_img_dsc_t *)(img_head_address + 0x4c394)
#define IMG_A36_LEFTRED2_ICO (const lv_img_dsc_t *)(img_head_address + 0x4c954)
#define IMG_A36_LEFT_ICO (const lv_img_dsc_t *)(img_head_address + 0x4d158)
#define IMG_A36_NUMSCALE_ICO_1 (const lv_img_dsc_t *)(img_head_address + 0x4d7dc)
#define IMG_A36_NUMSCALE_ICO_2 (const lv_img_dsc_t *)(img_head_address + 0x5b194)
#define IMG_A36_NUMSCALE_ICO_3 (const lv_img_dsc_t *)(img_head_address + 0x68b4c)
#define IMG_A36_OILPOINT_ICO (const lv_img_dsc_t *)(img_head_address + 0x703f4)
#define IMG_A36_OILSCALE_ICO (const lv_img_dsc_t *)(img_head_address + 0x75fc8)
#define IMG_A36_OIL_ICO (const lv_img_dsc_t *)(img_head_address + 0x770d8)
#define IMG_A36_RIGHTYELLOW1_ICO (const lv_img_dsc_t *)(img_head_address + 0x77b70)
#define IMG_A36_RIGHTYELLOW2_ICO (const lv_img_dsc_t *)(img_head_address + 0x78164)
#define IMG_A36_RIGHTYELLOW3_ICO (const lv_img_dsc_t *)(img_head_address + 0x7856c)
#define IMG_A36_RIGHT_ICO (const lv_img_dsc_t *)(img_head_address + 0x78af4)
#define IMG_A36_WATERPOINT_ICO (const lv_img_dsc_t *)(img_head_address + 0x79178)
#define IMG_A36_WATERSCALE_ICO (const lv_img_dsc_t *)(img_head_address + 0x7ed4c)
#define IMG_A36_WATER_ICO (const lv_img_dsc_t *)(img_head_address + 0x7fe5c)
/***A36<33>½<EFBFBD><C2BD><EFBFBD>****/
#endif

View File

@ -0,0 +1,55 @@
#ifndef __IMG_DEF_H__
#define __IMG_DEF_H__
#define img_head_address 0x0
#define IMG_DM1_BAR_BG_1 (const lv_img_dsc_t *)(img_head_address + 0x0)
#define IMG_DM1_BAR_BG_2 (const lv_img_dsc_t *)(img_head_address + 0xd164)
#define IMG_DM1_BAR_BG_3 (const lv_img_dsc_t *)(img_head_address + 0x1a2c8)
#define IMG_DM1_BG_1 (const lv_img_dsc_t *)(img_head_address + 0x2742c)
#define IMG_DM1_BG_2 (const lv_img_dsc_t *)(img_head_address + 0x34388)
#define IMG_DM1_BG_3 (const lv_img_dsc_t *)(img_head_address + 0x412e4)
#define IMG_DM1_BG_4 (const lv_img_dsc_t *)(img_head_address + 0x4e240)
#define IMG_DM1_BG_5 (const lv_img_dsc_t *)(img_head_address + 0x5b19c)
#define IMG_DM1_NULL (const lv_img_dsc_t *)(img_head_address + 0x640a0)
#define IMG_DM1_OIL (const lv_img_dsc_t *)(img_head_address + 0x6455c)
#define IMG_DM1_TCS (const lv_img_dsc_t *)(img_head_address + 0x647b4)
#define IMG_DM1_TEMP (const lv_img_dsc_t *)(img_head_address + 0x650e4)
#define IMG_POINTER2 (const lv_img_dsc_t *)(img_head_address + 0x6533c)
#define IMG_SPEED_ARC_1 (const lv_img_dsc_t *)(img_head_address + 0x65708)
#define IMG_SPEED_ARC_2 (const lv_img_dsc_t *)(img_head_address + 0x72868)
#define IMG_SPEED_ARC_3 (const lv_img_dsc_t *)(img_head_address + 0x7f9c8)
/***A36<33>½<EFBFBD><C2BD><EFBFBD>****/
#define IMG_A36_BLACKGROUD1_ICO_1 (const lv_img_dsc_t *)(img_head_address + 0x0)
#define IMG_A36_BLACKGROUD1_ICO_2 (const lv_img_dsc_t *)(img_head_address + 0xd970)
#define IMG_A36_BLACKGROUD1_ICO_3 (const lv_img_dsc_t *)(img_head_address + 0x1b2e0)
#define IMG_A36_BLACKGROUD1_ICO_4 (const lv_img_dsc_t *)(img_head_address + 0x28c50)
#define IMG_A36_BLACKGROUD1_ICO_5 (const lv_img_dsc_t *)(img_head_address + 0x365c0)
#define IMG_A36_BLACKGROUD1_ICO_6 (const lv_img_dsc_t *)(img_head_address + 0x43f30)
#define IMG_A36_BLUELIGHT_ICO (const lv_img_dsc_t *)(img_head_address + 0x44b8c)
#define IMG_A36_BLUETOOTH_ICO (const lv_img_dsc_t *)(img_head_address + 0x44fb8)
#define IMG_A36_ESPEEDPOINT_ICO (const lv_img_dsc_t *)(img_head_address + 0x452ac)
#define IMG_A36_GREENALIGHT_ICO (const lv_img_dsc_t *)(img_head_address + 0x4bb3c)
#define IMG_A36_GREENLIGHT_ICO (const lv_img_dsc_t *)(img_head_address + 0x4bf68)
#define IMG_A36_LEFTRED1_ICO (const lv_img_dsc_t *)(img_head_address + 0x4c394)
#define IMG_A36_LEFTRED2_ICO (const lv_img_dsc_t *)(img_head_address + 0x4c954)
#define IMG_A36_LEFT_ICO (const lv_img_dsc_t *)(img_head_address + 0x4d158)
#define IMG_A36_NUMSCALE_ICO_1 (const lv_img_dsc_t *)(img_head_address + 0x4d7dc)
#define IMG_A36_NUMSCALE_ICO_2 (const lv_img_dsc_t *)(img_head_address + 0x5b194)
#define IMG_A36_NUMSCALE_ICO_3 (const lv_img_dsc_t *)(img_head_address + 0x68b4c)
#define IMG_A36_OILPOINT_ICO (const lv_img_dsc_t *)(img_head_address + 0x703f4)
#define IMG_A36_OILSCALE_ICO (const lv_img_dsc_t *)(img_head_address + 0x75fc8)
#define IMG_A36_OIL_ICO (const lv_img_dsc_t *)(img_head_address + 0x770d8)
#define IMG_A36_RIGHTYELLOW1_ICO (const lv_img_dsc_t *)(img_head_address + 0x77b70)
#define IMG_A36_RIGHTYELLOW2_ICO (const lv_img_dsc_t *)(img_head_address + 0x78164)
#define IMG_A36_RIGHTYELLOW3_ICO (const lv_img_dsc_t *)(img_head_address + 0x7856c)
#define IMG_A36_RIGHT_ICO (const lv_img_dsc_t *)(img_head_address + 0x78af4)
#define IMG_A36_WATERPOINT_ICO (const lv_img_dsc_t *)(img_head_address + 0x79178)
#define IMG_A36_WATERSCALE_ICO (const lv_img_dsc_t *)(img_head_address + 0x7ed4c)
#define IMG_A36_WATER_ICO (const lv_img_dsc_t *)(img_head_address + 0x7fe5c)
/***A36<33>½<EFBFBD><C2BD><EFBFBD>****/
#endif

View File

@ -0,0 +1,182 @@
#ifndef __MX_ALTERNATOR_H
#define __MX_ALTERNATOR_H
#ifdef __cplusplus
extern "C" {
#endif
//#include "uart.h"
#include <stdio.h>
#include <stdint.h>
//软件主版本
uint8_t getSoftMainVersion(void);
void setSoftMainVersion(uint8_t value);
//软件副版本
uint8_t getSoftSubVersion(void);
void setSoftSubVersion(uint8_t value);
//SetMode
uint8_t getSetMode(void);
void setSetMode(uint8_t value);
//速度信息
uint16_t getSpeedData(void);
void setSpeedData(uint16_t value);
//档位信息
uint8_t getGearInfo(void);
void setGearInfo(uint8_t value);
//总计里程
uint32_t getTotalMile(void);
void setTotalMile(uint32_t value);
//单次里程
uint32_t getTripMile(void);
void setTripMile(uint32_t value);
//小计里程清零
uint8_t getMileClearTags(void);
void setMileClearTags(uint8_t value);
//Wifi
uint8_t getWifi(void);
void setWifi(uint8_t value);
//蓝牙
uint8_t getBlueTooth(void);
void setBlueTooth(uint8_t value);
//转向
uint8_t getTurn(void);
void setTurn(uint8_t value);
//转向提示
uint8_t getTurnPrompt(void);
void setTurnPrompt(uint8_t value);
//转向灯
uint8_t getTurnLight(void);
void setTurnLight(uint8_t value);
//灯光
uint8_t getBeamLight(void);
void setBeamLight(uint8_t value);
//示宽灯
uint8_t getSideMarkerLight(void);
void setSideMarkerLight(uint8_t value);
//风扇灯
uint8_t getFanLight(void);
void setFanLight(uint8_t value);
//abs灯
uint8_t getABSLight(void);
void setABSLight(uint8_t value);
//机油压力灯
uint8_t getOilPressLight(void);
void setOilPressLight(uint8_t value);
//发动机故障灯
uint8_t getEngineLight(void);
void setEngineLight(uint8_t value);
//获取 油量/水温/电池电压刷新标志
uint8_t getRefreshTags(void);
void setRefreshTags(uint8_t value);
//灯光亮度,具体的light_value值
uint8_t getLightValue(void);
void setLightValue(uint8_t value);
//开机自检
uint8_t getSelfCheck(void);
void setSelfCheck(uint8_t value);
//UUID
char* getUUID(void);
void setUUID();
//BTname
char* getBTName(void);
void setBTName();
//蓝牙继承数据
uint8_t getBTDataInherit(void);
void setBTDataInherit(uint8_t value);
//当前故障码
uint16_t getCurrentFaultCode(void);
void setCurrentFaultCode(uint16_t value);
//历史故障码
uint16_t getHistoryFaultCode(void);
void setHistoryFaultCode(uint16_t value);
/*******告警信息begin*******/
//发动机故障
uint8_t getEngineErr(void);
void setEngineErr(uint8_t value);
//机油报警
uint8_t getEngineOilErr(void);
void setEngineOilErr(uint8_t value);
//abs故障
uint8_t getAbsErr(void);
void setAbsErr(uint8_t value);
//TCS故障
uint8_t getTCSErr(void);
void setTCSErr(uint8_t value);
//风扇故障
uint8_t getFanErr(void);
void setFanErr(uint8_t value);
//空档故障
uint8_t getNeutralGearErr(void);
void setNeutralGearErr(uint8_t value);
//水温故障
uint8_t getWaterTemperErr(void);
void setWaterTemperErr(uint8_t value);
//刹车故障
uint8_t getBrakesFaultErr(void);
void setBrakesFaultErr(uint8_t value);
/*******告警信息end*******/
//电池电量占比
uint8_t getBatteryRatio(void);
void setBatteryRatio(uint8_t value);
//电池电压
uint8_t getBatteryVoltage(void);
void setBatteryVoltage(uint8_t value);
//转速信息
uint16_t getEspeed(void);
void setEspeed(uint16_t value);
//油量指示
uint8_t getFuel(void);
void setFuel(uint8_t value);
//水温提示
uint8_t getWaterTemper(void);
void setWaterTemper(uint8_t value);
//电瓶电压
uint8_t getAccumulatorVolt(void);
void setAccumulatorVolt(uint8_t value);
#ifdef __cplusplus
}
#endif
#endif

View File

@ -0,0 +1,119 @@
#ifndef __MX_UART_H
#define __MX_UART_H
#ifdef __cplusplus
extern "C" {
#endif
//#include "uart.h"
#include <stdio.h>
#include <stdint.h>
//A27项目界面所需结构体
typedef struct
{
uint16_t ucYear;
uint8_t ucMonth;
uint8_t ucDate;
uint8_t ucHour;
uint8_t ucMinute;
uint8_t ucSecond;
}STime_t, *pSTime;
typedef struct
{
uint8_t mEngine; //发动机故障
uint8_t mEngineOil; //机油报警
uint8_t mAbs; //abs防抱死
uint8_t mTcs; //tcs牵引力系统
uint8_t mFan; //风扇
uint8_t mNeutralGear; //空挡
uint8_t mWaterTemper; //水温故障
uint8_t mBrakesFault; //刹车故障
}ErrorCode_t, *pErrCode;
typedef struct
{
uint8_t mFactorySet; //出厂设置
uint8_t mLanguage; //语言
uint8_t mDisplayUint; //单位
uint8_t mTheme; //当前主题
uint8_t mThemeState; //主题状态
uint8_t mLightValue; //亮度
uint8_t mBT_OnOff; //蓝牙
uint8_t mBT_State; //状态
uint8_t mGearPos; //档位
uint16_t mFuel; //油量
uint32_t mTotalMile; //里程数
}SaveData_t, *pSaveData;
typedef struct
{
uint8_t mSoftMainVersion; //主版本号
uint8_t mSoftSubVersion; //次版本号
//uint8_t bt_name[BT_NAME_MAX_LEN];
uint8_t mSetMode; //高字节 SET 1 为短按 2为长按 低字节 MODE 1 为短按 2为长按
uint16_t mSpeed; //速度信息
uint8_t mGearInfo; //档位信息
uint32_t mTotalMile; //总计里程
uint32_t mTripMile; //单次行驶里程
uint8_t mMileClearTags; //小计里程清零标志
uint8_t mWifi; //WIFI
uint8_t mBlueTooth; //蓝牙
uint8_t mTurn; //转向 0-无 1-左转 2-右转
uint8_t mTurnPrompt; //转向提示 0无 1左 2右
uint8_t mTurnLight; //转向灯 0-无 1-左转向灯 2-右转向灯
uint8_t mBeamLight; //灯光 0-无灯光 1-远光 2-近光 3-自动大灯
uint8_t mSideMarkerLight; //示宽灯 0-无灯光 1-示宽灯
uint8_t mFanLight; //风扇灯 0-无灯光 1-灯亮
uint8_t mABSLight; //0-无灯光 1-灯亮
uint8_t mOilPressLight; //机油压力报警灯 0-无灯光 1-灯亮
uint8_t mEngineLight; //0-无灯光 1-灯亮
uint8_t mRefreshTags; //0-无刷新 1-油量/水温/电池电压刷新标志
uint8_t mLightValue; //灯光亮度,具体的light_value值
uint8_t mSelfCheck; //开机自检
uint8_t mLightSensingVolt; //光感电压值 暂定范围0-3300
char mUuid[32];
char mBT_name[32];
uint16_t mCurrentFaultCode; //当前故障码
uint16_t mHistoryFaultCode; //历史故障码
uint8_t mBTData_Inherit; //继承的蓝牙数据(保留)
uint8_t mTtrb; //开机检测是否获取到时间的标志
uint8_t mTtrb_Time; //设施时间后检测是否正常设置时间的标志
uint8_t mOdo_Reset; //小计里程清零后检测是否正常设置时间的标志
uint8_t mDemo_Position; //是否在demo展示界面的标志
ErrorCode_t mErr; //告警错误
SaveData_t mSaveData; //保存数据
STime_t mTime; //时间变量
uint16_t mPlan; //总进度标志
uint16_t mPace; //分进度标志
uint8_t mUpGrade; //内存拷贝标志
//电摩专用属性
uint8_t mBatteryRatio; //电池电量占比 1个字节eg100% 传输64
uint8_t mBatteryVoltage; //电池电压 eg3.3V 传输3300
//油摩专用属性
uint16_t mEspeed; //转速信息
uint8_t mFuel; //油量指示
uint8_t mWaterTemper; //水温指示
uint8_t mAccumulatorVolt; //电瓶电压
}Store_t, *pStore;
void Storeinit(Store_t* store);
void store_init(void);
Store_t *store_get(void);
void store_set(Store_t store);
ErrorCode_t *error_code_get(void);
void error_code_set(ErrorCode_t error);
#ifdef __cplusplus
}
#endif
#endif

View File

@ -6,6 +6,8 @@ typedef void (*btn_event_func)(lv_obj_t *obj);
#define LV_KEY_Q 113
#define LV_KEY_W 10
#define _EMOTO_ // 宏开关
#define _OMOTO_
typedef enum _ENUM_CONTROL_WIN_ID
{
@ -26,8 +28,116 @@ typedef enum _ENUM_CONTROL_WIN_ID
MOTO_WIN_ID_MAX,
} ENUM_CONTROL_WIN_ID;
#if 0
//A27项目界面所需结构体
typedef struct
{
uint16_t ucYear;
uint8_t ucMonth;
uint8_t ucDate;
uint8_t ucHour;
uint8_t ucMinute;
uint8_t ucSecond;
}STime_t, *pSTime;
typedef struct{
typedef struct
{
uint8_t mEngine; //发动机故障
uint8_t mEngineOil; //机油报警
uint8_t mAbs; //abs防抱死
uint8_t mTcs; //tcs牵引力系统
uint8_t mFan; //风扇
uint8_t mNeutralGear; //空挡
uint8_t mWaterTemper; //水温故障
uint8_t mBrakesFault; //刹车故障
}Error_t, *pError;
typedef struct
{
uint8_t mFactorySet; //出厂设置
uint8_t mLanguage; //语言
uint8_t mDisplayUint; //单位
uint8_t mTheme; //当前主题
uint8_t mThemeState; //主题状态
uint8_t mLightValue; //亮度
uint8_t mBT_OnOff; //蓝牙
uint8_t mBT_State; //状态
uint8_t mGearPos; //档位
uint16_t mFuel; //油量
uint32_t mTotalMile; //里程数
}SaveData_t, *pSaveData;
typedef struct
{
uint8_t mSoftMainVersion; //主版本号
uint8_t mSoftSubVersion; //次版本号
//uint8_t bt_name[BT_NAME_MAX_LEN];
uint8_t mSetMode; //高字节 SET 1 为短按 2为长按 低字节 MODE 1 为短按 2为长按
uint16_t mSpeed; //速度信息
uint8_t mGearInfo; //档位信息
uint32_t mTotalMile; //总计里程
uint32_t mTripMile; //单次行驶里程
uint8_t mMileClearTags; //小计里程清零标志
uint8_t mWifi; //WIFI
uint8_t mBlueTooth; //蓝牙
uint8_t mTurn; //转向 0-无 1-左转 2-右转
uint8_t mTurnPrompt; //转向提示 0无 1左 2右
uint8_t mTurnLight; //转向灯 0-无 1-左转向灯 2-右转向灯
uint8_t mBeamLight; //灯光 0-无灯光 1-远光 2-近光 3-自动大灯
uint8_t mSideMarkerLight; //示宽灯 0-无灯光 1-示宽灯
uint8_t mFanLight; //风扇灯 0-无灯光 1-灯亮
uint8_t mABSLight; //0-无灯光 1-灯亮
uint8_t mOilPressLight; //机油压力报警灯 0-无灯光 1-灯亮
uint8_t mEngineLight; //0-无灯光 1-灯亮
uint8_t mRefreshTags; //0-无刷新 1-油量/水温/电池电压刷新标志
uint8_t mLightValue; //灯光亮度,具体的light_value值
uint8_t mSelfCheck; //开机自检
uint8_t mLightSensingVolt; //光感电压值 暂定范围0-3300
uint8_t return_demo; //????
char mUuid[32];
char mBT_name[32];
uint16_t mCurrentFaultCode; //当前故障码
uint16_t mHistoryFaultCode; //历史故障码
uint8_t mBTData_Inherit; //继承的蓝牙数据(保留)
uint8_t mTtrb; //开机检测是否获取到时间的标志
uint8_t mTtrb_Time; //设施时间后检测是否正常设置时间的标志
uint8_t mOdo_Reset; //小计里程清零后检测是否正常设置时间的标志
uint8_t mDemo_Position; //是否在demo展示界面的标志
Error_t mErr; //告警错误
SaveData_t mSaveData; //保存数据
STime_t mTime; //时间变量
uint16_t mPlan; //总进度标志
uint16_t mPace; //分进度标志
uint8_t mUpGrade; //内存拷贝标志
//电摩专用属性
#ifdef _EMOTO_
uint8_t mBatteryRatio; //电池电量占比 1个字节eg100% 传输64
uint8_t mBatteryVoltage; //电池电压 eg3.3V 传输3300
#endif
//油摩专用属性
#ifdef _OMOTO_
uint8_t mEspeed; //转速信息
uint8_t mFuel; //油量指示
uint8_t mWaterTemper; //水温指示
uint8_t mAccumulatorVolt; //电瓶电压
#endif
}SysData_t, *pSysData;
extern SysData_t UserData;
STime_t* getCurrentTime1();
SysData_t* GetDailyData1(void);
void SystemDate_Init(void);
#endif
typedef struct
{
uint8_t engine; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
uint8_t machine_oil; //<2F><><EFBFBD>ͱ<EFBFBD><CDB1><EFBFBD>
uint8_t abs; //abs<62><73><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
@ -38,7 +148,7 @@ typedef struct{
typedef struct
{
uint16_t ucYear;
uint16_t ucYear;
uint8_t ucMonth;
uint8_t ucDate;
uint8_t ucHour;
@ -63,44 +173,32 @@ typedef struct
{
uint8_t softwar_host; //<2F><><EFBFBD><EFBFBD><E6B1BE>
uint8_t softwar_order; //<2F>ΰ汾<CEB0><E6B1BE>
uint8_t ui_page_id;
//time
stTime_type time;
save_info_t save_info;
uint8_t veer; //ת<><D7AA>
uint8_t veer_hint; //ת<><D7AA><EFBFBD><EFBFBD>ʾ
uint8_t lamplight; //<2F>ƹ<EFBFBD>
uint8_t power_on_self_test; //<2F><><EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD>
uint8_t light_perception_value; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
uint8_t light; //<2F><><EFBFBD><EFBFBD><EFBFBD>light_valueֵ
uint8_t light; //<2F><><EFBFBD><EFBFBD><EFBFBD>light_valueֵ
uint8_t return_demo;
uint16_t velocity; //<2F>ٶ<EFBFBD>
uint16_t veer_velocity; //ת<><D7AA>
uint8_t grade; //<2F><>λ
uint8_t oil; //<2F><><EFBFBD><EFBFBD>
uint8_t temp; //<2F><EFBFBD>
uint8_t temp; //<2F><EFBFBD>
double trip_mileage; //С<><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
uint32_t total_mileage; //<2F>ܼ<EFBFBD><DCBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
double voltage; //<2F><>ص<EFBFBD>ѹ
warning_t warning; //<2F><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>
uint16_t max_velocity; //<2F><><EFBFBD>ʱ<EFBFBD><CAB1>
double voltage; //<2F><>ص<EFBFBD>ѹ
warning_t warning; //<2F><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>
uint16_t max_velocity; //<2F><><EFBFBD>ʱ<EFBFBD><CAB1>
uint16_t verage_velocity; //ƽ<><C6BD>ʱ<EFBFBD><CAB1>
char uuid[32];
char bt_name[32];
uint32_t now_defect_code; //<2F><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
uint32_t his_defect_code; //<2F><>ʷ<EFBFBD><CAB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
uint8_t ttrb; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7>ȡ<EFBFBD><C8A1>ʱ<EFBFBD><CAB1>ı<EFBFBD>־
uint8_t ttrb_time; //<2F><>ʩʱ<CAA9><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>ı<EFBFBD>־
uint8_t odo_reset; //С<><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>ı<EFBFBD>־
@ -109,9 +207,6 @@ typedef struct
uint16_t pace; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD><D6BD>ȱ<EFBFBD>־
uint8_t upgrade; //<2F><><EFBFBD><EFBFBD><EFBFBD>ڴ濽<DAB4><E6BFBD><EFBFBD><EFBFBD>־
}daily_data_t;
extern daily_data_t custom_data;
@ -125,4 +220,5 @@ stTime_type * getCurrentTime();
daily_data_t* GetDailyData(void);
char * GetCurTimeString();
#endif

View File

@ -0,0 +1,128 @@
#ifndef __MXC_METER_H__
#define __MXC_METER_H__
typedef void (*btn_event_func)(lv_obj_t *obj);
#define LV_KEY_Q 113
#define LV_KEY_W 10
typedef enum _ENUM_CONTROL_WIN_ID
{
IDLE_CONTROL_WIN_ID, // 0,
PAGE_MAINMENU_WIN_ID, //
SUBMENU_SET_THEME,
SUBMENU_SET_LIGHT, //
SUBMENU_SET_BLUETOOTH, // 4
SUBMENU_SET_OTHER,
SUBMENU_SET_INFORMATION,
SUBMENU_SET_PRESSURE, //
SUBMENU_SET_FAULT_CODE, //8
SUBMENU_THEME_SELECT,
SUBMENU_THEME_BG,
SUBMENU_OTHER_TIME,
SUBMENU_OTHER_LANGUAGE,
SUBMENU_OTHER_UINT, // 13
MOTO_WIN_ID_MAX,
} ENUM_CONTROL_WIN_ID;
typedef struct{
uint8_t engine; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
uint8_t machine_oil; //<2F><><EFBFBD>ͱ<EFBFBD><CDB1><EFBFBD>
uint8_t abs; //abs<62><73><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
uint8_t tcs; //tcsǣ<73><C7A3><EFBFBD><EFBFBD>ϵͳ
uint8_t fan; //<2F><><EFBFBD><EFBFBD>
uint8_t null; //<2F>յ<EFBFBD>
}warning_t;
typedef struct
{
uint16_t ucYear;
uint8_t ucMonth;
uint8_t ucDate;
uint8_t ucHour;
uint8_t ucMinute;
uint8_t ucSecond;
}stTime_type;
typedef struct
{
uint8_t factory_reset; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
uint8_t language; //<2F><><EFBFBD><EFBFBD>
uint8_t display_uint; //<2F><>λ
uint8_t theme; //<2F><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>
uint8_t theme_state; //<2F><><EFBFBD><EFBFBD>״̬
uint8_t light_value; //<2F><><EFBFBD><EFBFBD>
uint8_t bt_on_off; //<2F><><EFBFBD><EFBFBD>
uint8_t bt_state; //״̬
}save_info_t;
typedef struct
{
uint8_t softwar_host; //<2F><><EFBFBD><EFBFBD><E6B1BE>
uint8_t softwar_order; //<2F>ΰ汾<CEB0><E6B1BE>
uint8_t ui_page_id;
//time
stTime_type time;
save_info_t save_info;
uint8_t veer; //ת<><D7AA>
uint8_t veer_hint; //ת<><D7AA><EFBFBD><EFBFBD>ʾ
uint8_t lamplight; //<2F>ƹ<EFBFBD>
uint8_t power_on_self_test; //<2F><><EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD>
uint8_t light_perception_value; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
uint8_t light; //<2F><><EFBFBD><EFBFBD><EFBFBD>light_valueֵ
uint8_t return_demo;
uint16_t velocity; //<2F>ٶ<EFBFBD>
uint16_t veer_velocity; //ת<><D7AA>
uint8_t grade; //<2F><>λ
uint8_t oil; //<2F><><EFBFBD><EFBFBD>
uint8_t temp; //<2F><EFBFBD>
double trip_mileage; //С<><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
uint32_t total_mileage; //<2F>ܼ<EFBFBD><DCBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
double voltage; //<2F><>ص<EFBFBD>ѹ
warning_t warning; //<2F><><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>
uint16_t max_velocity; //<2F><><EFBFBD>ʱ<EFBFBD><CAB1>
uint16_t verage_velocity; //ƽ<><C6BD>ʱ<EFBFBD><CAB1>
char uuid[32];
char bt_name[32];
uint32_t now_defect_code; //<2F><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
uint32_t his_defect_code; //<2F><>ʷ<EFBFBD><CAB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
uint8_t ttrb; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7>ȡ<EFBFBD><C8A1>ʱ<EFBFBD><CAB1>ı<EFBFBD>־
uint8_t ttrb_time; //<2F><>ʩʱ<CAA9><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>ı<EFBFBD>־
uint8_t odo_reset; //С<><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>ı<EFBFBD>־
uint8_t demo_position; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD>demoչʾ<D5B9><CABE><EFBFBD><EFBFBD>ı<EFBFBD>־
uint16_t plan; //<2F><><EFBFBD><EFBFBD><EFBFBD>ܽ<EFBFBD><DCBD>ȱ<EFBFBD>־
uint16_t pace; //<2F><><EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD><D6BD>ȱ<EFBFBD>־
uint8_t upgrade; //<2F><><EFBFBD><EFBFBD><EFBFBD>ڴ濽<DAB4><E6BFBD><EFBFBD><EFBFBD>־
}daily_data_t;
extern daily_data_t custom_data;
daily_data_t *daily_get_UiData(void);
ENUM_CONTROL_WIN_ID get_top_history_win(void);
void Set_UI_page_id(ENUM_CONTROL_WIN_ID id);
void system_date_init(void);
void updateCurTime();
stTime_type * getCurrentTime();
daily_data_t* GetDailyData(void);
char * GetCurTimeString();
#endif