Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
R
RT_RMR42E
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
时昊
RT_RMR42E
Commits
b9ac31af
Commit
b9ac31af
authored
Jul 02, 2024
by
郑萍
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
✨
feat:增加电量正常显示以及充电显示动画
parent
d461b871
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
617 additions
and
463 deletions
+617
-463
Can_User.c
Firmware/Source/Application/CAN_User/Can_User.c
+61
-34
GUI_Display.c
Firmware/Source/Application/GUI_Display/GUI_Display.c
+185
-86
GUI_Display.h
Firmware/Source/Application/GUI_Display/GUI_Display.h
+4
-3
SEG_DISPLAY.c
Firmware/Source/Application/SEG_DISPLAY/SEG_DISPLAY.c
+366
-339
SEG_DISPLAY.h
Firmware/Source/Application/SEG_DISPLAY/SEG_DISPLAY.h
+1
-1
No files found.
Firmware/Source/Application/CAN_User/Can_User.c
View file @
b9ac31af
...
...
@@ -41,90 +41,117 @@ void Can_RX_Apply_Buff(void)
CAN_RecvMsg
.
CacheType
=
CAN_CacheType_Rx_NoMask
;
CAN_RecvMsg
.
RTR
=
CAN_RTR_Data
;
CAN_RecvMsg
.
Interrupt
=
ENABLE
;
CAN_MessageCache_DeInit
(
CAN0MSG0
1
);
CAN_MessageCache_Init
(
CAN0MSG0
1
,
&
CAN_RecvMsg
);
CAN_MessageCache_OverWriteConfig
(
CAN0MSG0
1
,
ENABLE
);
CAN_MessageCache_DeInit
(
CAN0MSG0
0
);
CAN_MessageCache_Init
(
CAN0MSG0
0
,
&
CAN_RecvMsg
);
CAN_MessageCache_OverWriteConfig
(
CAN0MSG0
0
,
ENABLE
);
CAN_RecvMsg
.
Id
=
0x134
;
CAN_RecvMsg
.
IDE
=
CAN_Id_Standard
;
CAN_RecvMsg
.
CacheType
=
CAN_CacheType_Rx_NoMask
;
CAN_RecvMsg
.
RTR
=
CAN_RTR_Data
;
CAN_RecvMsg
.
Interrupt
=
ENABLE
;
CAN_MessageCache_DeInit
(
CAN0MSG0
2
);
CAN_MessageCache_Init
(
CAN0MSG0
2
,
&
CAN_RecvMsg
);
CAN_MessageCache_OverWriteConfig
(
CAN0MSG0
2
,
ENABLE
);
CAN_MessageCache_DeInit
(
CAN0MSG0
1
);
CAN_MessageCache_Init
(
CAN0MSG0
1
,
&
CAN_RecvMsg
);
CAN_MessageCache_OverWriteConfig
(
CAN0MSG0
1
,
ENABLE
);
CAN_RecvMsg
.
Id
=
0x157
;
CAN_RecvMsg
.
IDE
=
CAN_Id_Standard
;
CAN_RecvMsg
.
CacheType
=
CAN_CacheType_Rx_NoMask
;
CAN_RecvMsg
.
RTR
=
CAN_RTR_Data
;
CAN_RecvMsg
.
Interrupt
=
ENABLE
;
CAN_MessageCache_DeInit
(
CAN0MSG0
6
);
CAN_MessageCache_Init
(
CAN0MSG0
6
,
&
CAN_RecvMsg
);
CAN_MessageCache_OverWriteConfig
(
CAN0MSG0
6
,
ENABLE
);
CAN_MessageCache_DeInit
(
CAN0MSG0
2
);
CAN_MessageCache_Init
(
CAN0MSG0
2
,
&
CAN_RecvMsg
);
CAN_MessageCache_OverWriteConfig
(
CAN0MSG0
2
,
ENABLE
);
CAN_RecvMsg
.
Id
=
0x38E
;
CAN_RecvMsg
.
IDE
=
CAN_Id_Standard
;
CAN_RecvMsg
.
CacheType
=
CAN_CacheType_Rx_NoMask
;
CAN_RecvMsg
.
RTR
=
CAN_RTR_Data
;
CAN_RecvMsg
.
Interrupt
=
ENABLE
;
CAN_MessageCache_DeInit
(
CAN0MSG0
7
);
CAN_MessageCache_Init
(
CAN0MSG0
7
,
&
CAN_RecvMsg
);
CAN_MessageCache_OverWriteConfig
(
CAN0MSG0
7
,
ENABLE
);
CAN_MessageCache_DeInit
(
CAN0MSG0
3
);
CAN_MessageCache_Init
(
CAN0MSG0
3
,
&
CAN_RecvMsg
);
CAN_MessageCache_OverWriteConfig
(
CAN0MSG0
3
,
ENABLE
);
CAN_RecvMsg
.
Id
=
0x3A2
;
CAN_RecvMsg
.
IDE
=
CAN_Id_Standard
;
CAN_RecvMsg
.
CacheType
=
CAN_CacheType_Rx_NoMask
;
CAN_RecvMsg
.
RTR
=
CAN_RTR_Data
;
CAN_RecvMsg
.
Interrupt
=
ENABLE
;
CAN_MessageCache_DeInit
(
CAN0MSG0
8
);
CAN_MessageCache_Init
(
CAN0MSG0
8
,
&
CAN_RecvMsg
);
CAN_MessageCache_OverWriteConfig
(
CAN0MSG0
8
,
ENABLE
);
CAN_MessageCache_DeInit
(
CAN0MSG0
4
);
CAN_MessageCache_Init
(
CAN0MSG0
4
,
&
CAN_RecvMsg
);
CAN_MessageCache_OverWriteConfig
(
CAN0MSG0
4
,
ENABLE
);
CAN_RecvMsg
.
Id
=
0x339
;
CAN_RecvMsg
.
IDE
=
CAN_Id_Standard
;
CAN_RecvMsg
.
CacheType
=
CAN_CacheType_Rx_NoMask
;
CAN_RecvMsg
.
RTR
=
CAN_RTR_Data
;
CAN_RecvMsg
.
Interrupt
=
ENABLE
;
CAN_MessageCache_DeInit
(
CAN0MSG
11
);
CAN_MessageCache_Init
(
CAN0MSG
11
,
&
CAN_RecvMsg
);
CAN_MessageCache_OverWriteConfig
(
CAN0MSG
11
,
ENABLE
);
CAN_MessageCache_DeInit
(
CAN0MSG
05
);
CAN_MessageCache_Init
(
CAN0MSG
05
,
&
CAN_RecvMsg
);
CAN_MessageCache_OverWriteConfig
(
CAN0MSG
05
,
ENABLE
);
CAN_RecvMsg
.
Id
=
0x18202922
;
CAN_RecvMsg
.
IDE
=
CAN_Id_Extended
;
CAN_RecvMsg
.
CacheType
=
CAN_CacheType_Rx_NoMask
;
CAN_RecvMsg
.
RTR
=
CAN_RTR_Data
;
CAN_RecvMsg
.
Interrupt
=
ENABLE
;
CAN_MessageCache_DeInit
(
CAN0MSG06
);
CAN_MessageCache_Init
(
CAN0MSG06
,
&
CAN_RecvMsg
);
CAN_MessageCache_OverWriteConfig
(
CAN0MSG06
,
ENABLE
);
CAN_RecvMsg
.
Id
=
0x18200A20
;
CAN_RecvMsg
.
IDE
=
CAN_Id_Extended
;
CAN_RecvMsg
.
CacheType
=
CAN_CacheType_Rx_NoMask
;
CAN_RecvMsg
.
RTR
=
CAN_RTR_Data
;
CAN_RecvMsg
.
Interrupt
=
ENABLE
;
CAN_MessageCache_DeInit
(
CAN0MSG07
);
CAN_MessageCache_Init
(
CAN0MSG07
,
&
CAN_RecvMsg
);
CAN_MessageCache_OverWriteConfig
(
CAN0MSG07
,
ENABLE
);
CAN_RecvMsg
.
Id
=
0x18200A21
;
CAN_RecvMsg
.
IDE
=
CAN_Id_Extended
;
CAN_RecvMsg
.
CacheType
=
CAN_CacheType_Rx_NoMask
;
CAN_RecvMsg
.
RTR
=
CAN_RTR_Data
;
CAN_RecvMsg
.
Interrupt
=
ENABLE
;
CAN_MessageCache_DeInit
(
CAN0MSG12
);
CAN_MessageCache_Init
(
CAN0MSG12
,
&
CAN_RecvMsg
);
CAN_MessageCache_OverWriteConfig
(
CAN0MSG12
,
ENABLE
);
CAN_RecvMsg
.
Id
=
0x18203220
;
CAN_RecvMsg
.
IDE
=
CAN_Id_Extended
;
CAN_RecvMsg
.
CacheType
=
CAN_CacheType_Rx_NoMask
;
CAN_RecvMsg
.
RTR
=
CAN_RTR_Data
;
CAN_RecvMsg
.
Interrupt
=
ENABLE
;
CAN_MessageCache_DeInit
(
CAN0MSG09
);
CAN_MessageCache_Init
(
CAN0MSG09
,
&
CAN_RecvMsg
);
CAN_MessageCache_OverWriteConfig
(
CAN0MSG09
,
ENABLE
);
CAN_RecvMsg
.
Id
=
0x18203
2
20
;
CAN_RecvMsg
.
Id
=
0x18203
0
20
;
CAN_RecvMsg
.
IDE
=
CAN_Id_Extended
;
CAN_RecvMsg
.
CacheType
=
CAN_CacheType_Rx_NoMask
;
CAN_RecvMsg
.
RTR
=
CAN_RTR_Data
;
CAN_RecvMsg
.
Interrupt
=
ENABLE
;
CAN_MessageCache_DeInit
(
CAN0MSG1
0
);
CAN_MessageCache_Init
(
CAN0MSG1
0
,
&
CAN_RecvMsg
);
CAN_MessageCache_OverWriteConfig
(
CAN0MSG1
0
,
ENABLE
);
CAN_MessageCache_DeInit
(
CAN0MSG1
3
);
CAN_MessageCache_Init
(
CAN0MSG1
3
,
&
CAN_RecvMsg
);
CAN_MessageCache_OverWriteConfig
(
CAN0MSG1
3
,
ENABLE
);
CAN_RecvMsg
.
Id
=
DIAG_ID_Rx_PHY
;
CAN_RecvMsg
.
IDE
=
CAN_Id_Standard
;
CAN_RecvMsg
.
CacheType
=
CAN_CacheType_Rx_NoMask
;
CAN_RecvMsg
.
RTR
=
CAN_RTR_Data
;
CAN_RecvMsg
.
Interrupt
=
ENABLE
;
CAN_MessageCache_DeInit
(
CAN0MSG
03
);
CAN_MessageCache_Init
(
CAN0MSG
03
,
&
CAN_RecvMsg
);
CAN_MessageCache_OverWriteConfig
(
CAN0MSG
03
,
ENABLE
);
CAN_MessageCache_DeInit
(
CAN0MSG
10
);
CAN_MessageCache_Init
(
CAN0MSG
10
,
&
CAN_RecvMsg
);
CAN_MessageCache_OverWriteConfig
(
CAN0MSG
10
,
ENABLE
);
CAN_RecvMsg
.
Id
=
DIAG_ID_Rx_FUN
;
CAN_RecvMsg
.
IDE
=
CAN_Id_Standard
;
CAN_RecvMsg
.
CacheType
=
CAN_CacheType_Rx_NoMask
;
CAN_RecvMsg
.
RTR
=
CAN_RTR_Data
;
CAN_RecvMsg
.
Interrupt
=
ENABLE
;
CAN_MessageCache_DeInit
(
CAN0MSG
04
);
CAN_MessageCache_Init
(
CAN0MSG
04
,
&
CAN_RecvMsg
);
CAN_MessageCache_OverWriteConfig
(
CAN0MSG
04
,
ENABLE
);
CAN_MessageCache_DeInit
(
CAN0MSG
11
);
CAN_MessageCache_Init
(
CAN0MSG
11
,
&
CAN_RecvMsg
);
CAN_MessageCache_OverWriteConfig
(
CAN0MSG
11
,
ENABLE
);
}
/**
...
...
@@ -146,8 +173,8 @@ void Can_Tx_Apply_Buff(void)
CAN_SendMsg
.
Data
[
i
]
=
0
;
}
CAN_MessageCache_DeInit
(
CAN
0MSG08
);
CAN_MessageCache_Init
(
CAN
0MSG08
,
&
CAN_SendMsg
);
CAN_MessageCache_DeInit
(
CAN
1MSG00
);
CAN_MessageCache_Init
(
CAN
1MSG00
,
&
CAN_SendMsg
);
CAN_SendMsg
.
Id
=
0x3A7
;
CAN_SendMsg
.
IDE
=
CAN_Id_Standard
;
...
...
@@ -160,8 +187,8 @@ void Can_Tx_Apply_Buff(void)
CAN_SendMsg
.
Data
[
i
]
=
0
;
}
CAN_MessageCache_DeInit
(
CAN
0MSG10
);
CAN_MessageCache_Init
(
CAN
0MSG10
,
&
CAN_SendMsg
);
CAN_MessageCache_DeInit
(
CAN
1MSG01
);
CAN_MessageCache_Init
(
CAN
1MSG01
,
&
CAN_SendMsg
);
CAN_SendMsg_Diag_Tx
.
Id
=
DIAG_ID_Tx
;
...
...
@@ -175,8 +202,8 @@ void Can_Tx_Apply_Buff(void)
CAN_SendMsg_Diag_Tx
.
Data
[
i
]
=
0
;
}
CAN_MessageCache_DeInit
(
CAN
0MSG09
);
CAN_MessageCache_Init
(
CAN
0MSG09
,
&
CAN_SendMsg_Diag_Tx
);
CAN_MessageCache_DeInit
(
CAN
1MSG02
);
CAN_MessageCache_Init
(
CAN
1MSG02
,
&
CAN_SendMsg_Diag_Tx
);
}
/**
* @brief 用于接收回调函数
...
...
Firmware/Source/Application/GUI_Display/GUI_Display.c
View file @
b9ac31af
...
...
@@ -2,92 +2,167 @@
#include "SEG_DISPLAY\SEG_DISPLAY.h"
#include "Application.h"
uint8_t
SOC_1_Flag_Count
=
0
;
uint8_t
SOC_1_Count
=
0
;
uint8_t
SOC_2_Flag_Count
=
0
;
uint8_t
SOC_2_Count
=
0
;
// void Gauge_Power_1_SOC_Display(void)//得改
// {
// uint8_t Signal1 = Get_CAN_CH0_ID_18203220_Sig_MBMS_StatBattWorkState();
// uint8_t powernum1 = Get_CAN_CH0_ID_18200A20_Sig_MBMS_Soc();
// uint8_t powernum2 = Get_CAN_CH0_ID_18200A21_Sig_MBMS_Soc();
// if(Signal1 == 0x0 || Signal1 == 0x3 || Signal1 == 0x6)
// {
// SOC_1_Flag_Count = 0;
// if(powernum1 > 1)
// {
// }
// else
// {
uint16_t
poweroff_time
=
0
;
// }
// }
// else if(Signal1 == 0x1)
// {
// SOC_1_Flag_Count++;
// if(SOC_1_Flag_Count == 10)
// {
// SOC_1_Flag_Count = 0;
// SOC_1_Count++;
// if(SOC_1_Count > powernum1)
// {
// SOC_1_Count = 0;
// }
// }
// }
// else if(Signal1 == 0x7)
// {
// SOC_1_Flag_Count++;
// if(SOC_1_Flag_Count == 10)
// {
// SOC_1_Flag_Count = 0;
// SOC_1_Count++;
// if(SOC_1_Count > powernum1)
// {
// SOC_1_Count = 0;
// }
// }
// }
uint8_t
SOC_Count_Time
=
0
;
// }
// void Gauge_Power_2_SOC_Display(void)
// void Gauge_Gear_Display(void)
// {
// uint8_t Signal1 = Get_CAN_CH0_ID_18203220_Sig_MBMS_StatBattWorkState();
// uint8_t powernum = Get_CAN_CH0_ID_18200A21_Sig_MBMS_Soc();
// if(Signal1 == 0x0 || Signal1 == 0x3 || Signal1 == 0x6)//放电
// {
// SOC_Flag = 0;
// if(powernum > 1)
// {
// // uint8_t MBMS_StatBattWorkState = Get_CAN_CH0_ID_18203220_Sig_MBMS_StatBattWorkState();
// if (Common_Get_IG_Sts() == COMMON_POWER_ON)
// {
// SEG_SET_GEAR(1,);
// }
// else
// {
// }
// }
// }
// else
// {
void
Gauge_Power_SOC_pull_Display
(
void
)
{
// uint8_t MBMS_StatBattWorkState = Get_CAN_CH0_ID_18203220_Sig_MBMS_StatBattWorkState();
if
(
Common_Get_IG_Sts
()
==
COMMON_POWER_ON
)
{
if
(
CAN_MSG_Status
(
&
CAN_CH0_CanMsgOp
,
Co_Can_ConvertSubID_CAN_CH0
(
CAN_CH0_ID_CAN_0x18200A20_Msg
))
==
CAN_ERR_OK
||
CAN_MSG_Status
(
&
CAN_CH0_CanMsgOp
,
Co_Can_ConvertSubID_CAN_CH0
(
CAN_CH0_ID_CAN_0x18200A21_Msg
))
==
CAN_ERR_OK
)
{
uint8_t
SOC_1_Count
=
Get_CAN_CH0_ID_18200A20_Sig_MBMS_Soc
();
uint8_t
SOC_2_Count
=
Get_CAN_CH0_ID_18200A21_Sig_SBMS_Soc
();
SEG_SET_EleDial_1SOC
(
1
,
SOC_1_Count
);
SEG_SET_EleDial_2SOC
(
1
,
SOC_2_Count
);
}
else
{
SEG_SET_EleDial_1SOC
(
0
,
0
);
SEG_SET_EleDial_2SOC
(
0
,
0
);
}
}
else
{
SEG_SET_EleDial_1SOC
(
0
,
0
);
SEG_SET_EleDial_2SOC
(
0
,
0
);
}
}
void
Gauge_Power_SOC_CHAGING_Display
(
void
)
{
uint8_t
MBMS_TOTALSigAcc
=
Get_CAN_CH0_ID_18202922_Sig_MBMS_TOTALSigAcc
();
uint8_t
MBMS_TOTALSigCharge
=
Get_CAN_CH0_ID_18202922_Sig_MBMS_TOTALSigCharge
();
uint8_t
MBMS_StatBattWorkState
=
Get_CAN_CH0_ID_18203220_Sig_MBMS_StatBattWorkState
();
static
uint8_t
SOC1_Count
=
0
;
static
uint8_t
SOC2_Count
=
0
;
// uint8_t MBMS_StatBattWorkState = Get_CAN_CH0_ID_18203220_Sig_MBMS_StatBattWorkState();
if
(
Common_Get_IG_Sts
()
==
COMMON_POWER_ON
)
{
if
(
CAN_MSG_Status
(
&
CAN_CH0_CanMsgOp
,
Co_Can_ConvertSubID_CAN_CH0
(
CAN_CH0_ID_CAN_0x18200A20_Msg
))
==
CAN_ERR_OK
||
CAN_MSG_Status
(
&
CAN_CH0_CanMsgOp
,
Co_Can_ConvertSubID_CAN_CH0
(
CAN_CH0_ID_CAN_0x18200A21_Msg
))
==
CAN_ERR_OK
)
{
uint8_t
SOC_1_Count
=
Get_CAN_CH0_ID_18200A20_Sig_MBMS_Soc
();
uint8_t
SOC_2_Count
=
Get_CAN_CH0_ID_18200A21_Sig_SBMS_Soc
();
if
((
MBMS_TOTALSigAcc
==
0x1
&&
MBMS_TOTALSigCharge
==
0x1
)
||
(
MBMS_TOTALSigAcc
==
0x0
&&
MBMS_TOTALSigCharge
==
0x1
))
// 上电充电
{
if
(
MBMS_StatBattWorkState
==
0x1
)
// 主电池
{
if
(
++
SOC_Count_Time
>
10
)
{
SOC_Count_Time
=
0
;
SEG_SET_EleDial_1SOC
(
1
,
SOC1_Count
);
SOC1_Count
++
;
if
(
SOC1_Count
>
SOC_1_Count
)
{
SOC1_Count
=
0
;
}
}
SEG_SET_EleDial_2SOC
(
1
,
SOC_2_Count
);
}
else
if
(
MBMS_StatBattWorkState
==
0x4
)
// 副电池
{
if
(
++
SOC_Count_Time
>
10
)
{
SOC_Count_Time
=
0
;
SEG_SET_EleDial_2SOC
(
1
,
SOC2_Count
);
SOC2_Count
++
;
if
(
SOC2_Count
>
SOC_2_Count
)
{
SOC2_Count
=
0
;
}
}
SEG_SET_EleDial_1SOC
(
1
,
SOC_1_Count
);
}
else
if
(
MBMS_StatBattWorkState
==
0x7
)
// 主副电池
{
if
(
++
SOC_Count_Time
>
10
)
{
SOC_Count_Time
=
0
;
SEG_SET_EleDial_1SOC
(
1
,
SOC1_Count
);
SEG_SET_EleDial_2SOC
(
1
,
SOC2_Count
);
SOC1_Count
++
;
SOC2_Count
++
;
if
(
SOC_1_Count
>
SOC_2_Count
)
{
if
(
SOC2_Count
>
SOC_2_Count
)
{
SOC2_Count
--
;
if
(
SOC1_Count
>
SOC_1_Count
)
{
SOC1_Count
=
0
;
SOC2_Count
=
0
;
}
}
}
else
{
if
(
SOC1_Count
>
SOC_1_Count
)
{
SOC1_Count
--
;
if
(
SOC2_Count
>
SOC_2_Count
)
{
SOC1_Count
=
0
;
SOC2_Count
=
0
;
}
}
}
}
}
}
if
(
MBMS_TOTALSigAcc
==
0x0
&&
MBMS_TOTALSigCharge
==
0x1
)
// 下电充电
{
poweroff_time
++
;
}
else
{
poweroff_time
=
0
;
}
}
else
{
SEG_SET_EleDial_1SOC
(
0
,
0
);
SEG_SET_EleDial_2SOC
(
0
,
0
);
}
}
else
{
SEG_SET_EleDial_1SOC
(
0
,
0
);
SEG_SET_EleDial_2SOC
(
0
,
0
);
}
}
// }
// }
// else if(Signal1 == 0x4)//充电
// {
// SOC_Flag = 1;
// SOC_Flag_Count++;
// if(SOC_Flag_Count == 10)
// {
// SOC_Flag_Count = 0;
// SOC_1_Count++;
// if(SOC_1_Count > powernum)
// {
// SOC_1_Count = 0;
// }
// }
// }
// }
void
Gauge_EleDial_AllSOC_Display
(
void
)
{
uint8_t
AllSOC_DIS
=
0
;
if
(
Common_Get_IG_Sts
()
==
COMMON_POWER_ON
)
{
SEG_SET_EleDial_AllSOC
(
1
,
AllSOC_DIS
);
if
(
CAN_MSG_Status
(
&
CAN_CH0_CanMsgOp
,
Co_Can_ConvertSubID_CAN_CH0
(
CAN_CH0_ID_CAN_0x18203020_Msg
))
==
CAN_ERR_OK
)
{
AllSOC_DIS
=
Get_CAN_CH0_ID_18203020_Sig_MBMS_StatSoc
();
SEG_SET_EleDial_AllSOC
(
1
,
AllSOC_DIS
);
}
else
{
SEG_SET_EleDial_AllSOC
(
0
,
0
);
}
}
else
{
...
...
@@ -205,27 +280,51 @@ void Gauge_Service(void)
{
if
(
Common_GetIgnOnTime
()
>=
3000
)
{
SOC_charge_seg_Flag
=
0
;
Checkself_Init
();
Gauge_Clock_Display
();
Gauge_Clock_All_Display
();
Gauge_EleDial_AllSOC_Display
();
SEG_SET_GEAR
(
1
,
1
);
SEG_SET_Cutterhead
(
1
,
2
);
Gauge_Frame_Display
();
if
(
Get_CAN_Power_State
()
==
KEY_ACC
)
{
interact_PWM_Low_Duty
=
0
;
Gauge_Clock_Display
();
Gauge_Clock_All_Display
();
Gauge_EleDial_AllSOC_Display
();
SEG_SET_GEAR
(
1
,
1
);
SEG_SET_Cutterhead
(
1
,
2
);
Gauge_Frame_Display
();
Gauge_Power_SOC_pull_Display
();
}
else
if
(
Get_CAN_Power_State
()
==
READY
)
{
interact_PWM_Low_Duty
=
30
;
Gauge_Clock_Display
();
Gauge_Clock_All_Display
();
Gauge_EleDial_AllSOC_Display
();
SEG_SET_GEAR
(
1
,
1
);
SEG_SET_Cutterhead
(
1
,
2
);
Gauge_Frame_Display
();
Gauge_Power_SOC_pull_Display
();
}
else
else
if
(
Get_CAN_Power_State
()
==
CHRGING
)
{
SOC_charge_seg_Flag
=
1
;
if
(
poweroff_time
<
3600
)
{
Gauge_Power_SOC_CHAGING_Display
();
if
(
poweroff_time
==
0
)
{
Gauge_Clock_Display
();
Gauge_Clock_All_Display
();
Gauge_EleDial_AllSOC_Display
();
SEG_SET_GEAR
(
1
,
1
);
SEG_SET_Cutterhead
(
1
,
2
);
Gauge_Frame_Display
();
}
}
else
{
}
}
// Gauge_Power_1_SOC_Display();
// Gauge_Power_2_SOC_Display();
}
else
{
...
...
Firmware/Source/Application/GUI_Display/GUI_Display.h
View file @
b9ac31af
...
...
@@ -37,14 +37,14 @@ typedef struct
#define POWERON_SCAN_TIMER 3000ul
// void Gauge_Power_1_SOC
_Display(void);
void
Gauge_Power_2_SOC_Display
(
void
);
void
Gauge_Power_SOC_pull
_Display
(
void
);
//
void Gauge_Power_2_SOC_Display(void);
void
Gauge_Power_Display
(
void
);
void
Gauge_Battery_Display
(
void
);
void
Gauge_Clock_Display
(
void
);
// void Gauge_Gear_Display(void);
void
Gauge_Clock_All_Display
(
void
);
void
Gauge_DrivingRange_Display
(
void
);
//void Gauge_Gear_Display(void);
...
...
@@ -61,4 +61,5 @@ void Temp_Calc_Init(void);
void
Temp_Calc_Send
(
void
);
uint32_t
Get_Temp_Calc
(
void
);
#endif
Firmware/Source/Application/SEG_DISPLAY/SEG_DISPLAY.c
View file @
b9ac31af
...
...
@@ -9,6 +9,7 @@
/*数字显示数组*/
/*0, 1 2 3 4 5 6 7 8 9 */
const
uint8_t
SEG_DISPLAY_NUMBER0
[]
=
{
0x3Fu
,
0x06u
,
0x5Bu
,
0x4Fu
,
0x66u
,
0x6Du
,
0x7Du
,
0x07u
,
0x7Fu
,
0x6Fu
};
const
uint8_t
SEG_UNDISPLAY_NUMBER0
[]
=
{
0x00u
,
0x06u
,
0x5Bu
,
0x4Fu
,
0x66u
,
0x6Du
,
0x7Du
,
0x07u
,
0x7Fu
,
0x6Fu
};
uint8_t
SOC_charge_seg_Flag
=
0
;
/**@brief 边框线显示函数
* @param[in] m_Flag 是否显示 -1 显示 -0 不显示
...
...
@@ -401,7 +402,7 @@ _Fun_Res SEG_SET_GEAR(uint8_t m_Gear_Flag, uint8_t m_Gear)
* - EX_OK 上报成功
* - EX_ERR 上报失败
*/
_Fun_Res
SEG_SET_EleDial_1SOC
(
uint8_t
m_Flag
,
uint8_t
m_SEG
)
_Fun_Res
SEG_SET_EleDial_1SOC
(
uint8_t
m_Flag
,
uint8_t
m_SEG
)
{
_Fun_Res
m_Res
;
uint8_t
Num
;
...
...
@@ -418,37 +419,51 @@ _Fun_Res SEG_SET_EleDial_1SOC(uint8_t m_Flag,uint8_t m_SEG)
IC1_SEG147
=
IC_SEG_GREY
;
IC1_SEG148
=
IC_SEG_GREY
;
IC1_SEG135
=
IC_SEG_GREY
;
//小电池
//
小电池
IC1_SEG121
=
IC_SEG_ON
;
IC1_SEG122
=
IC_SEG_ON
;
switch
(
m_SEG
)
if
(
m_SEG
==
1
&&
Common_GetIgnOnTime
()
>=
3000
&&
SOC_charge_seg_Flag
!=
1
)
{
case
10u
:
IC1_SEG136
=
IC_SEG_ON
;
case
9u
:
IC1_SEG137
=
IC_SEG_ON
;
case
8u
:
IC1_SEG138
=
IC_SEG_ON
;
case
7u
:
IC1_SEG143
=
IC_SEG_ON
;
case
6u
:
IC1_SEG144
=
IC_SEG_ON
;
case
5u
:
IC1_SEG145
=
IC_SEG_ON
;
case
4u
:
IC1_SEG146
=
IC_SEG_ON
;
case
3u
:
IC1_SEG147
=
IC_SEG_ON
;
case
2u
:
IC1_SEG148
=
IC_SEG_ON
;
case
1u
:
IC1_SEG135
=
IC_SEG_ON
;
case
0u
:
break
;
default:
break
;
if
(
FLASH_SYNC_1Hz
)
{
IC1_SEG135
=
IC_SEG_ON
;
}
else
{
IC1_SEG135
=
IC_SEG_GREY
;
}
}
else
{
switch
(
m_SEG
)
{
case
10u
:
IC1_SEG136
=
IC_SEG_ON
;
case
9u
:
IC1_SEG137
=
IC_SEG_ON
;
case
8u
:
IC1_SEG138
=
IC_SEG_ON
;
case
7u
:
IC1_SEG143
=
IC_SEG_ON
;
case
6u
:
IC1_SEG144
=
IC_SEG_ON
;
case
5u
:
IC1_SEG145
=
IC_SEG_ON
;
case
4u
:
IC1_SEG146
=
IC_SEG_ON
;
case
3u
:
IC1_SEG147
=
IC_SEG_ON
;
case
2u
:
IC1_SEG148
=
IC_SEG_ON
;
case
1u
:
IC1_SEG135
=
IC_SEG_ON
;
case
0u
:
break
;
default:
break
;
}
}
}
else
...
...
@@ -464,7 +479,7 @@ _Fun_Res SEG_SET_EleDial_1SOC(uint8_t m_Flag,uint8_t m_SEG)
IC1_SEG147
=
IC_SEG_OFF
;
IC1_SEG148
=
IC_SEG_OFF
;
IC1_SEG135
=
IC_SEG_OFF
;
//小电池
//
小电池
IC1_SEG121
=
IC_SEG_OFF
;
IC1_SEG122
=
IC_SEG_OFF
;
}
...
...
@@ -479,7 +494,7 @@ _Fun_Res SEG_SET_EleDial_1SOC(uint8_t m_Flag,uint8_t m_SEG)
* - EX_OK 上报成功
* - EX_ERR 上报失败
*/
_Fun_Res
SEG_SET_EleDial_2SOC
(
uint8_t
m_Flag
,
uint8_t
m_SEG
)
_Fun_Res
SEG_SET_EleDial_2SOC
(
uint8_t
m_Flag
,
uint8_t
m_SEG
)
{
_Fun_Res
m_Res
;
uint8_t
Num
;
...
...
@@ -500,35 +515,48 @@ _Fun_Res SEG_SET_EleDial_2SOC(uint8_t m_Flag,uint8_t m_SEG)
IC1_SEG133
=
IC_SEG_GREY
;
IC1_SEG134
=
IC_SEG_GREY
;
switch
(
m_SEG
)
if
(
m_SEG
==
1
&&
Common_GetIgnOnTime
()
>=
3000
&&
SOC_charge_seg_Flag
!=
1
)
{
case
10u
:
IC1_SEG125
=
IC_SEG_ON
;
case
9u
:
IC1_SEG126
=
IC_SEG_ON
;
case
8u
:
IC1_SEG127
=
IC_SEG_ON
;
case
7u
:
IC1_SEG128
=
IC_SEG_ON
;
case
6u
:
IC1_SEG129
=
IC_SEG_ON
;
case
5u
:
IC1_SEG130
=
IC_SEG_ON
;
case
4u
:
IC1_SEG131
=
IC_SEG_ON
;
case
3u
:
IC1_SEG132
=
IC_SEG_ON
;
case
2u
:
IC1_SEG133
=
IC_SEG_ON
;
case
1u
:
IC1_SEG134
=
IC_SEG_ON
;
case
0u
:
break
;
default:
break
;
if
(
FLASH_SYNC_1Hz
)
{
IC1_SEG134
=
IC_SEG_ON
;
}
else
{
IC1_SEG134
=
IC_SEG_GREY
;
}
}
else
{
switch
(
m_SEG
)
{
case
10u
:
IC1_SEG125
=
IC_SEG_ON
;
case
9u
:
IC1_SEG126
=
IC_SEG_ON
;
case
8u
:
IC1_SEG127
=
IC_SEG_ON
;
case
7u
:
IC1_SEG128
=
IC_SEG_ON
;
case
6u
:
IC1_SEG129
=
IC_SEG_ON
;
case
5u
:
IC1_SEG130
=
IC_SEG_ON
;
case
4u
:
IC1_SEG131
=
IC_SEG_ON
;
case
3u
:
IC1_SEG132
=
IC_SEG_ON
;
case
2u
:
IC1_SEG133
=
IC_SEG_ON
;
case
1u
:
IC1_SEG134
=
IC_SEG_ON
;
case
0u
:
break
;
default:
break
;
}
}
}
else
{
...
...
@@ -543,7 +571,7 @@ _Fun_Res SEG_SET_EleDial_2SOC(uint8_t m_Flag,uint8_t m_SEG)
IC1_SEG132
=
IC_SEG_OFF
;
IC1_SEG133
=
IC_SEG_OFF
;
IC1_SEG134
=
IC_SEG_OFF
;
//小电池
//
小电池
IC1_SEG124
=
IC_SEG_OFF
;
IC1_SEG123
=
IC_SEG_OFF
;
}
...
...
@@ -557,7 +585,7 @@ _Fun_Res SEG_SET_EleDial_2SOC(uint8_t m_Flag,uint8_t m_SEG)
* - EX_OK 上报成功
* - EX_ERR 上报失败
*/
_Fun_Res
SEG_SET_EleDial_AllSOC
(
uint8_t
m_Flag
,
uint16_t
m_NUM
)
_Fun_Res
SEG_SET_EleDial_AllSOC
(
uint8_t
m_Flag
,
uint16_t
m_NUM
)
{
_Fun_Res
m_Res
;
uint8_t
Num
;
...
...
@@ -575,7 +603,7 @@ _Fun_Res SEG_SET_EleDial_AllSOC(uint8_t m_Flag,uint16_t m_NUM)
IC1_SEG072
=
IC_SEG_OFF
;
}
Num
=
(
m_NUM
/
10u
)
%
10u
;
if
(
m_NUM
>
10
)
if
(
m_NUM
>
10
)
{
m8
=
SEG_DISPLAY_NUMBER0
[
Num
];
}
...
...
@@ -1054,275 +1082,275 @@ _Fun_Res SEG_SET_Fault_Code(uint8_t m_Flag, uint16_t m_NUM)
return
m_Res
;
}
/**@brief 续航里程显示函数
* @param[in] m_Flag 续航里程是否显示 -2 显示---km -1 显示 -0 不显示
* @param[in] m_NUM 续航里程数值 0<=m_NUM<=999
* @return 函数执行结果
* - EX_OK 上报成功
* - EX_ERR 上报失败
*/
_Fun_Res
SEG_SET_DTE_NUM
(
uint8_t
m_Flag
,
uint16_t
m_NUM
)
{
_Fun_Res
m_Res
;
uint16_t
Num
;
uint8_t
m8
;
if
((
m_Flag
>
2u
)
||
(
m_NUM
>
999u
))
{
m_Res
=
EX_ERR
;
}
else
{
if
(
m_Flag
==
1u
)
{
IC1_SEG099
=
IC_SEG_ON
;
IC1_SEG065
=
IC_SEG_ON
;
/*百位*/
Num
=
m_NUM
/
100u
;
m8
=
SEG_UNDISPLAY_NUMBER0
[
Num
];
if
(
Bit_Is_Set
(
m8
,
0
))
{
IC1_SEG050
=
IC_SEG_ON
;
}
else
{
IC1_SEG050
=
IC_SEG_OFF
;
}
if
(
Bit_Is_Set
(
m8
,
1
))
{
IC1_SEG049
=
IC_SEG_ON
;
}
else
{
IC1_SEG049
=
IC_SEG_OFF
;
}
if
(
Bit_Is_Set
(
m8
,
2
))
{
IC1_SEG047
=
IC_SEG_ON
;
}
else
{
IC1_SEG047
=
IC_SEG_OFF
;
}
if
(
Bit_Is_Set
(
m8
,
3
))
{
IC1_SEG046
=
IC_SEG_ON
;
}
else
{
IC1_SEG046
=
IC_SEG_OFF
;
}
if
(
Bit_Is_Set
(
m8
,
5
))
{
IC1_SEG045
=
IC_SEG_ON
;
}
else
{
IC1_SEG045
=
IC_SEG_OFF
;
}
if
(
Bit_Is_Set
(
m8
,
4
))
{
IC1_SEG044
=
IC_SEG_ON
;
}
else
{
IC1_SEG044
=
IC_SEG_OFF
;
}
if
(
Bit_Is_Set
(
m8
,
6
))
{
IC1_SEG048
=
IC_SEG_ON
;
}
else
{
IC1_SEG048
=
IC_SEG_OFF
;
}
/*十位*/
Num
=
(
m_NUM
/
10u
)
%
10u
;
if
(
m_NUM
>=
100u
)
{
m8
=
SEG_DISPLAY_NUMBER0
[
Num
];
}
else
{
m8
=
SEG_UNDISPLAY_NUMBER0
[
Num
];
}
// /**@brief 续航里程显示函数
if
(
Bit_Is_Set
(
m8
,
0
))
{
IC1_SEG057
=
IC_SEG_ON
;
}
else
{
IC1_SEG057
=
IC_SEG_OFF
;
}
if
(
Bit_Is_Set
(
m8
,
1
))
{
IC1_SEG056
=
IC_SEG_ON
;
}
else
{
IC1_SEG056
=
IC_SEG_OFF
;
}
if
(
Bit_Is_Set
(
m8
,
2
))
{
IC1_SEG054
=
IC_SEG_ON
;
}
else
{
IC1_SEG054
=
IC_SEG_OFF
;
}
if
(
Bit_Is_Set
(
m8
,
3
))
{
IC1_SEG053
=
IC_SEG_ON
;
}
else
{
IC1_SEG053
=
IC_SEG_OFF
;
}
if
(
Bit_Is_Set
(
m8
,
5
))
{
IC1_SEG052
=
IC_SEG_ON
;
}
else
{
IC1_SEG052
=
IC_SEG_OFF
;
}
if
(
Bit_Is_Set
(
m8
,
4
))
{
IC1_SEG051
=
IC_SEG_ON
;
}
else
{
IC1_SEG051
=
IC_SEG_OFF
;
}
if
(
Bit_Is_Set
(
m8
,
6
))
{
IC1_SEG055
=
IC_SEG_ON
;
}
else
{
IC1_SEG055
=
IC_SEG_OFF
;
}
/*个位*/
Num
=
m_NUM
%
10u
;
m8
=
SEG_DISPLAY_NUMBER0
[
Num
];
if
(
Bit_Is_Set
(
m8
,
0
))
{
IC1_SEG064
=
IC_SEG_ON
;
}
else
{
IC1_SEG064
=
IC_SEG_OFF
;
}
if
(
Bit_Is_Set
(
m8
,
1
))
{
IC1_SEG063
=
IC_SEG_ON
;
}
else
{
IC1_SEG063
=
IC_SEG_OFF
;
}
if
(
Bit_Is_Set
(
m8
,
2
))
{
IC1_SEG061
=
IC_SEG_ON
;
}
else
{
IC1_SEG061
=
IC_SEG_OFF
;
}
if
(
Bit_Is_Set
(
m8
,
3
))
{
IC1_SEG060
=
IC_SEG_ON
;
}
else
{
IC1_SEG060
=
IC_SEG_OFF
;
}
if
(
Bit_Is_Set
(
m8
,
5
))
{
IC1_SEG059
=
IC_SEG_ON
;
}
else
{
IC1_SEG059
=
IC_SEG_OFF
;
}
if
(
Bit_Is_Set
(
m8
,
4
))
{
IC1_SEG058
=
IC_SEG_ON
;
}
else
{
IC1_SEG058
=
IC_SEG_OFF
;
}
if
(
Bit_Is_Set
(
m8
,
6
))
{
IC1_SEG062
=
IC_SEG_ON
;
}
else
{
IC1_SEG062
=
IC_SEG_OFF
;
}
}
else
if
(
m_Flag
==
2u
)
{
IC1_SEG099
=
IC_SEG_ON
;
IC1_SEG065
=
IC_SEG_ON
;
IC1_SEG044
=
IC_SEG_OFF
;
IC1_SEG045
=
IC_SEG_OFF
;
IC1_SEG046
=
IC_SEG_OFF
;
IC1_SEG047
=
IC_SEG_OFF
;
IC1_SEG048
=
IC_SEG_ON
;
IC1_SEG049
=
IC_SEG_OFF
;
IC1_SEG050
=
IC_SEG_OFF
;
IC1_SEG051
=
IC_SEG_OFF
;
IC1_SEG052
=
IC_SEG_OFF
;
IC1_SEG053
=
IC_SEG_OFF
;
IC1_SEG054
=
IC_SEG_OFF
;
IC1_SEG055
=
IC_SEG_ON
;
IC1_SEG056
=
IC_SEG_OFF
;
IC1_SEG057
=
IC_SEG_OFF
;
IC1_SEG058
=
IC_SEG_OFF
;
IC1_SEG059
=
IC_SEG_OFF
;
IC1_SEG060
=
IC_SEG_OFF
;
IC1_SEG061
=
IC_SEG_OFF
;
IC1_SEG062
=
IC_SEG_ON
;
IC1_SEG063
=
IC_SEG_OFF
;
IC1_SEG064
=
IC_SEG_OFF
;
}
// * @param[in] m_Flag 续航里程是否显示 -2 显示---km -1 显示 -0 不显示
// * @param[in] m_NUM 续航里程数值 0<=m_NUM<=999
// * @return 函数执行结果
// * - EX_OK 上报成功
// * - EX_ERR 上报失败
// */
// _Fun_Res SEG_SET_DTE_NUM(uint8_t m_Flag, uint16_t m_NUM)
// {
// _Fun_Res m_Res;
// uint16_t Num;
// uint8_t m8;
// if ((m_Flag > 2u) || (m_NUM > 999u))
// {
// m_Res = EX_ERR;
// }
// else
// {
// if (m_Flag == 1u)
// {
// IC1_SEG099 = IC_SEG_ON;
// IC1_SEG065 = IC_SEG_ON;
// /*百位*/
// Num = m_NUM / 100u;
// m8 = SEG_UNDISPLAY_NUMBER0[Num];
// if (Bit_Is_Set(m8, 0))
// {
// IC1_SEG050 = IC_SEG_ON;
// }
// else
// {
// IC1_SEG050 = IC_SEG_OFF;
// }
// if (Bit_Is_Set(m8, 1))
// {
// IC1_SEG049 = IC_SEG_ON;
// }
// else
// {
// IC1_SEG049 = IC_SEG_OFF;
// }
// if (Bit_Is_Set(m8, 2))
// {
// IC1_SEG047 = IC_SEG_ON;
// }
// else
// {
// IC1_SEG047 = IC_SEG_OFF;
// }
// if (Bit_Is_Set(m8, 3))
// {
// IC1_SEG046 = IC_SEG_ON;
// }
// else
// {
// IC1_SEG046 = IC_SEG_OFF;
// }
// if (Bit_Is_Set(m8, 5))
// {
// IC1_SEG045 = IC_SEG_ON;
// }
// else
// {
// IC1_SEG045 = IC_SEG_OFF;
// }
// if (Bit_Is_Set(m8, 4))
// {
// IC1_SEG044 = IC_SEG_ON;
// }
// else
// {
// IC1_SEG044 = IC_SEG_OFF;
// }
// if (Bit_Is_Set(m8, 6))
// {
// IC1_SEG048 = IC_SEG_ON;
// }
// else
// {
// IC1_SEG048 = IC_SEG_OFF;
// }
// /*十位*/
// Num = (m_NUM / 10u) % 10u;
// if (m_NUM >= 100u)
// {
// m8 = SEG_DISPLAY_NUMBER0[Num];
// }
// else
// {
// m8 = SEG_UNDISPLAY_NUMBER0[Num];
// }
// if (Bit_Is_Set(m8, 0))
// {
// IC1_SEG057 = IC_SEG_ON;
// }
// else
// {
// IC1_SEG057 = IC_SEG_OFF;
// }
// if (Bit_Is_Set(m8, 1))
// {
// IC1_SEG056 = IC_SEG_ON;
// }
// else
// {
// IC1_SEG056 = IC_SEG_OFF;
// }
// if (Bit_Is_Set(m8, 2))
// {
// IC1_SEG054 = IC_SEG_ON;
// }
// else
// {
// IC1_SEG054 = IC_SEG_OFF;
// }
// if (Bit_Is_Set(m8, 3))
// {
// IC1_SEG053 = IC_SEG_ON;
// }
// else
// {
// IC1_SEG053 = IC_SEG_OFF;
// }
// if (Bit_Is_Set(m8, 5))
// {
// IC1_SEG052 = IC_SEG_ON;
// }
// else
// {
// IC1_SEG052 = IC_SEG_OFF;
// }
// if (Bit_Is_Set(m8, 4))
// {
// IC1_SEG051 = IC_SEG_ON;
// }
// else
// {
// IC1_SEG051 = IC_SEG_OFF;
// }
// if (Bit_Is_Set(m8, 6))
// {
// IC1_SEG055 = IC_SEG_ON;
// }
// else
// {
// IC1_SEG055 = IC_SEG_OFF;
// }
// /*个位*/
// Num = m_NUM % 10u;
// m8 = SEG_DISPLAY_NUMBER0[Num];
// if (Bit_Is_Set(m8, 0))
// {
// IC1_SEG064 = IC_SEG_ON;
// }
// else
// {
// IC1_SEG064 = IC_SEG_OFF;
// }
// if (Bit_Is_Set(m8, 1))
// {
// IC1_SEG063 = IC_SEG_ON;
// }
// else
// {
// IC1_SEG063 = IC_SEG_OFF;
// }
// if (Bit_Is_Set(m8, 2))
// {
// IC1_SEG061 = IC_SEG_ON;
// }
// else
// {
// IC1_SEG061 = IC_SEG_OFF;
// }
// if (Bit_Is_Set(m8, 3))
// {
// IC1_SEG060 = IC_SEG_ON;
// }
// else
// {
// IC1_SEG060 = IC_SEG_OFF;
// }
// if (Bit_Is_Set(m8, 5))
// {
// IC1_SEG059 = IC_SEG_ON;
// }
// else
// {
// IC1_SEG059 = IC_SEG_OFF;
// }
// if (Bit_Is_Set(m8, 4))
// {
// IC1_SEG058 = IC_SEG_ON;
// }
// else
// {
// IC1_SEG058 = IC_SEG_OFF;
// }
// if (Bit_Is_Set(m8, 6))
// {
// IC1_SEG062 = IC_SEG_ON;
// }
// else
// {
// IC1_SEG062 = IC_SEG_OFF;
// }
// }
// else if (m_Flag == 2u)
// {
// IC1_SEG099 = IC_SEG_ON;
// IC1_SEG065 = IC_SEG_ON;
else
{
IC1_SEG099
=
IC_SEG_OFF
;
IC1_SEG065
=
IC_SEG_OFF
;
// IC1_SEG044 = IC_SEG_OFF;
// IC1_SEG045 = IC_SEG_OFF;
// IC1_SEG046 = IC_SEG_OFF;
// IC1_SEG047 = IC_SEG_OFF;
// IC1_SEG048 = IC_SEG_ON;
// IC1_SEG049 = IC_SEG_OFF;
// IC1_SEG050 = IC_SEG_OFF;
// IC1_SEG051 = IC_SEG_OFF;
// IC1_SEG052 = IC_SEG_OFF;
// IC1_SEG053 = IC_SEG_OFF;
// IC1_SEG054 = IC_SEG_OFF;
// IC1_SEG055 = IC_SEG_ON;
// IC1_SEG056 = IC_SEG_OFF;
// IC1_SEG057 = IC_SEG_OFF;
// IC1_SEG058 = IC_SEG_OFF;
// IC1_SEG059 = IC_SEG_OFF;
// IC1_SEG060 = IC_SEG_OFF;
// IC1_SEG061 = IC_SEG_OFF;
// IC1_SEG062 = IC_SEG_ON;
// IC1_SEG063 = IC_SEG_OFF;
// IC1_SEG064 = IC_SEG_OFF;
// }
IC1_SEG044
=
IC_SEG_OFF
;
IC1_SEG045
=
IC_SEG_OFF
;
IC1_SEG046
=
IC_SEG_OFF
;
IC1_SEG047
=
IC_SEG_OFF
;
IC1_SEG048
=
IC_SEG_OFF
;
IC1_SEG049
=
IC_SEG_OFF
;
IC1_SEG050
=
IC_SEG_OFF
;
IC1_SEG051
=
IC_SEG_OFF
;
IC1_SEG052
=
IC_SEG_OFF
;
IC1_SEG053
=
IC_SEG_OFF
;
IC1_SEG054
=
IC_SEG_OFF
;
IC1_SEG055
=
IC_SEG_OFF
;
IC1_SEG056
=
IC_SEG_OFF
;
IC1_SEG057
=
IC_SEG_OFF
;
IC1_SEG058
=
IC_SEG_OFF
;
IC1_SEG059
=
IC_SEG_OFF
;
IC1_SEG060
=
IC_SEG_OFF
;
IC1_SEG061
=
IC_SEG_OFF
;
IC1_SEG062
=
IC_SEG_OFF
;
IC1_SEG063
=
IC_SEG_OFF
;
IC1_SEG064
=
IC_SEG_OFF
;
}
// else
// {
// IC1_SEG099 = IC_SEG_OFF;
// IC1_SEG065 = IC_SEG_OFF;
// IC1_SEG044 = IC_SEG_OFF;
// IC1_SEG045 = IC_SEG_OFF;
// IC1_SEG046 = IC_SEG_OFF;
// IC1_SEG047 = IC_SEG_OFF;
// IC1_SEG048 = IC_SEG_OFF;
// IC1_SEG049 = IC_SEG_OFF;
// IC1_SEG050 = IC_SEG_OFF;
// IC1_SEG051 = IC_SEG_OFF;
// IC1_SEG052 = IC_SEG_OFF;
// IC1_SEG053 = IC_SEG_OFF;
// IC1_SEG054 = IC_SEG_OFF;
// IC1_SEG055 = IC_SEG_OFF;
// IC1_SEG056 = IC_SEG_OFF;
// IC1_SEG057 = IC_SEG_OFF;
// IC1_SEG058 = IC_SEG_OFF;
// IC1_SEG059 = IC_SEG_OFF;
// IC1_SEG060 = IC_SEG_OFF;
// IC1_SEG061 = IC_SEG_OFF;
// IC1_SEG062 = IC_SEG_OFF;
// IC1_SEG063 = IC_SEG_OFF;
// IC1_SEG064 = IC_SEG_OFF;
// }
m_Res
=
EX_OK
;
}
return
m_Res
;
}
//
m_Res = EX_OK;
//
}
//
return m_Res;
//
}
/**@brief 车速8字段显示函数
* @param[in] m_Flag 车速是否显示 -1 显示 -0 不显示
...
...
@@ -1676,7 +1704,6 @@ _Fun_Res SEG_SET_L8_NUM(uint8_t m_Flag, uint8_t m_NUM)
return
m_Res
;
}
/**@brief 单次时间显示函数
* @param[in] m_hour 小时
* @param[in] m_minute 分钟
...
...
@@ -1990,9 +2017,9 @@ _Fun_Res SEG_SET_Clock(uint8_t m_hour, uint8_t m_minute, uint8_t m_icon, uint8_t
* - EX_OK 上报成功
* - EX_ERR 上报失败
*/
_Fun_Res
SEG_SET_Clock_ALL
(
uint8_t
m_Flag
,
uint32_t
m_NUM
)
_Fun_Res
SEG_SET_Clock_ALL
(
uint8_t
m_Flag
,
uint32_t
m_NUM
)
{
_Fun_Res
m_Res
;
_Fun_Res
m_Res
;
uint32_t
Num
;
uint8_t
m8
;
if
((
m_Flag
>
2u
)
||
(
m_NUM
>
99999u
))
...
...
@@ -2006,7 +2033,7 @@ _Fun_Res SEG_SET_Clock_ALL(uint8_t m_Flag , uint32_t m_NUM)
IC2_SEG077
=
IC_SEG_ON
;
Num
=
m_NUM
/
10000u
;
if
(
m_NUM
>
10000
)
if
(
m_NUM
>
10000
)
{
m8
=
SEG_DISPLAY_NUMBER0
[
Num
];
}
...
...
@@ -2073,7 +2100,7 @@ _Fun_Res SEG_SET_Clock_ALL(uint8_t m_Flag , uint32_t m_NUM)
}
/*千位*/
Num
=
(
m_NUM
/
1000u
)
%
10u
;
if
(
m_NUM
>
1000
)
if
(
m_NUM
>
1000
)
{
m8
=
SEG_DISPLAY_NUMBER0
[
Num
];
}
...
...
@@ -2140,7 +2167,7 @@ _Fun_Res SEG_SET_Clock_ALL(uint8_t m_Flag , uint32_t m_NUM)
}
/*百位*/
Num
=
(
m_NUM
/
100u
)
%
10u
;
if
(
m_NUM
>
100
)
if
(
m_NUM
>
100
)
{
m8
=
SEG_DISPLAY_NUMBER0
[
Num
];
}
...
...
@@ -2425,10 +2452,10 @@ void Checkself_SEG_Display(void)
// Fuel = Checkself_SEG_step / 5u;
// SEG_SET_FuelDial(1, Fuel);
SEG_SET_EleDial_AllSOC
(
1
,
soc_all
);
SEG_SET_EleDial_2SOC
(
1
,(
Checkself_SEG_step
/
3
)
+
1
);
SEG_SET_EleDial_1SOC
(
1
,(
Checkself_SEG_step
/
3
)
+
1
);
SEG_SET_Clock_ALL
(
1
,
allhour
);
SEG_SET_EleDial_AllSOC
(
1
,
soc_all
);
SEG_SET_EleDial_2SOC
(
1
,
(
Checkself_SEG_step
/
3
)
+
1
);
SEG_SET_EleDial_1SOC
(
1
,
(
Checkself_SEG_step
/
3
)
+
1
);
SEG_SET_Clock_ALL
(
1
,
allhour
);
hour
=
(
Checkself_SEG_step
/
3
)
*
11
;
min
=
(
Checkself_SEG_step
/
3
)
*
11
;
SEG_SET_Clock
(
hour
,
min
,
1
,
1
,
1
);
...
...
@@ -2447,7 +2474,7 @@ void Checkself_SEG_Display(void)
LED_Driver_Channel_Set
(
LampChannel_0
,
LampCh0_14_Cutterhead_Switch_W
,
LED_ON
);
LED_Driver_Channel_Set
(
LampChannel_0
,
LampCh0_15_Cutterhead_Gear_W
,
LED_ON
);
LED_Driver_Channel_Set
(
LampChannel_0
,
LampCh0_17_External_Discharge_W
,
LED_ON
);
//
LED_Driver_Channel_Set(LampChannel_0, LampCh0_17_External_Discharge_W, LED_ON);
LED_Driver_Channel_Set
(
LampChannel_0
,
LampCh0_21_LED_Open_W
,
LED_ON
);
LED_Driver_Channel_Set
(
LampChannel_0
,
LampCh0_31_Working_Hours_One_W
,
LED_ON
);
LED_Driver_Channel_Set
(
LampChannel_0
,
LampCh0_32_Charging_Connection_R
,
LED_ON
);
...
...
@@ -2459,7 +2486,7 @@ void Checkself_SEG_Display(void)
SEG_SET_LED_STS
(
SEG_LED_Key_Access
,
1
);
SEG_SET_LED_STS
(
SEG_LED_Ready
,
1
);
SEG_SET_LED_STS
(
SEG_LED_Cutter_Head_switch
,
1
);
SEG_SET_LED_STS
(
SEG_LED_External_Discharge
,
1
);
//
SEG_SET_LED_STS(SEG_LED_External_Discharge, 1);
SEG_SET_LED_STS
(
SEG_LED_Distance_Light
,
1
);
SEG_SET_LED_STS
(
SEG_LED_HHT_Charger
,
1
);
...
...
@@ -2481,8 +2508,8 @@ void Checkself_SEG_Display(void)
if
(
Checkself_SEG_step
==
0
)
{
Checkself_SEG_step
=
0
;
SEG_SET_EleDial_2SOC
(
1
,
0
);
SEG_SET_EleDial_1SOC
(
1
,
0
);
SEG_SET_EleDial_2SOC
(
1
,
0
);
SEG_SET_EleDial_1SOC
(
1
,
0
);
}
else
{
...
...
Firmware/Source/Application/SEG_DISPLAY/SEG_DISPLAY.h
View file @
b9ac31af
...
...
@@ -112,7 +112,7 @@ void SEG_Scan_SET_EspeedDial(void);
extern
void
Checkself_Init
(
void
);
extern
void
Checkself_SEG_Display
(
void
);
extern
uint8_t
SOC_charge_seg_Flag
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment