Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
H
haoJin750TFT
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
时昊
haoJin750TFT
Commits
b4668b50
Commit
b4668b50
authored
Aug 21, 2024
by
郑萍
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'dev' of
http://tyw-server.synology.me:12345/shihao/haojin750tft
into zhengping
parents
16150e63
14085d14
Changes
14
Show whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
557 additions
and
300 deletions
+557
-300
HaoJin750TFT.uvprojx
.../Project/Cmsemicon/BAT32A279/MDK_ARM/HaoJin750TFT.uvprojx
+10
-5
HaoJin750TFT.sct
...ject/Cmsemicon/BAT32A279/MDK_ARM/Objects/HaoJin750TFT.sct
+2
-2
BlueTooth.c
Firmware/Source/Application/BlueTooth.c
+37
-9
BlueTooth.h
Firmware/Source/Application/BlueTooth.h
+2
-0
GpioUser.c
Firmware/Source/Application/GpioUser.c
+2
-2
AMT630H_Datas.c
Firmware/Source/Component/AMT630H/AMT630H_Datas.c
+289
-157
PicBin.h
Firmware/Source/Component/AMT630H/PicBin.h
+1
-1
Key_user.c
Firmware/Source/Component/Key/Key_user.c
+17
-2
Key_user.h
Firmware/Source/Component/Key/Key_user.h
+2
-0
Line_In_user.c
Firmware/Source/Component/Line_In/Line_In_user.c
+1
-1
Telltales_user.c
Firmware/Source/Component/Telltales/Telltales_user.c
+52
-24
cgc.c
...ource/Device/Cmsemicon/BAT32A279/Library/Driver/src/cgc.c
+136
-92
Sys_Task_List.c
Firmware/Source/System/Sys_Task_List.c
+2
-1
Option.properties
Firmware/utility/诊断工具/Option/Option.properties
+4
-4
No files found.
Firmware/Project/Cmsemicon/BAT32A279/MDK_ARM/HaoJin750TFT.uvprojx
View file @
b4668b50
...
...
@@ -728,6 +728,16 @@
<FileType>
5
</FileType>
<FilePath>
..\..\..\..\Source\Application\FaultCode.h
</FilePath>
</File>
<File>
<FileName>
BlueTooth.c
</FileName>
<FileType>
1
</FileType>
<FilePath>
..\..\..\..\Source\Application\BlueTooth.c
</FilePath>
</File>
<File>
<FileName>
BlueTooth.h
</FileName>
<FileType>
5
</FileType>
<FilePath>
..\..\..\..\Source\Application\BlueTooth.h
</FilePath>
</File>
</Files>
</Group>
<Group>
...
...
@@ -1008,11 +1018,6 @@
<FileType>
5
</FileType>
<FilePath>
..\..\..\..\Source\Component\System_Monitor\System_Monitor_User.h
</FilePath>
</File>
<File>
<FileName>
System_Monitor.lib
</FileName>
<FileType>
4
</FileType>
<FilePath>
..\..\..\..\Source\Component\System_Monitor\System_Monitor.lib
</FilePath>
</File>
</Files>
</Group>
<Group>
...
...
Firmware/Project/Cmsemicon/BAT32A279/MDK_ARM/Objects/HaoJin750TFT.sct
View file @
b4668b50
...
...
@@ -2,8 +2,8 @@
; *** Scatter-Loading Description File generated by uVision ***
; *************************************************************
LR_IROM1 0 0x00073C00 { ; load region size_region
ER_IROM1 0 0x00073C00 { ; load address = execution address
LR_IROM1 0
x00000000
0x00073C00 { ; load region size_region
ER_IROM1 0
x00000000
0x00073C00 { ; load address = execution address
*.o (RESET, +First)
*(InRoot$$Sections)
.ANY (+RO)
...
...
Firmware/Source/Application/BlueTooth.c
View file @
b4668b50
#include "Components.h"
uint8_t
OTA_Update_Count
=
0
;
const
uint8_t
HJBlueToothName
[
9
]
=
{
"HJ_750TFT"
};
uint8_t
UUIDConfigBuf
[
22
]
=
{
0xff
,
0xff
,
0xff
,
0xff
,
0xff
,
0xff
,
0xff
,
0xff
,
0xff
,
0xff
,
0xff
,
0xff
,
0xff
,
0xff
,
0xff
,
0xff
,
0xff
,
0xff
,
0xff
,
0xff
,
0xff
,
0x00
};
void
BlueToothService
()
{
// _PICID_Struct PicObj;
// PicObj.qr_logo_id = Pic_0020;
// PicObj.qr_pic_id = Pic_0002;
// PicObj.update_pic_id = 0;
// PicObj.second_menu = 0;
// PicObj.navigation_task_id = 0;
// PackedTransfer_DisplayPhoneMirrorQRcode(1, PicObj);
SetBlueToothName
((
uint8_t
*
)
HJBlueToothName
,
sizeof
(
HJBlueToothName
));
SetUUIDData
((
char
*
)
UUIDConfigBuf
,
22
);
// _QRCODE_RECT QRCode_Rect;
...
...
@@ -20,3 +15,36 @@ void BlueToothService()
// QRCode_Rect.width = QRCode_WIDTH;
// SetScreenType(QRCode_TYPE, QRCode_Rect);
}
void
UpdateGraphics
(
void
)
{
_PICID_Struct
PicObj
;
PicObj
.
qr_logo_id
=
0
;
PicObj
.
main_pic_id
=
Pic_0382
;
PicObj
.
qr_pic_id
=
Pic_0316
;
PicObj
.
update_pic_id
=
Pic_0193
;
PicObj
.
second_menu
=
0
;
PicObj
.
navigation_task_id
=
0
;
PackedTransfer_DisplayPhoneMirrorQRcode
(
0
,
PicObj
);
}
void
OTAUpdateService
(
void
)
{
_QRCODE_RECT
QRCode_Rect
;
QRCode_Rect
.
x
=
457
;
QRCode_Rect
.
y
=
137
;
QRCode_Rect
.
height
=
240
;
QRCode_Rect
.
width
=
240
;
if
(
OTA_Update_Flag
==
1
)
{
OTA_Update_Count
++
;
if
(
OTA_Update_Count
<
5
)
{
SetUpdateCtrl
(
1
,
QRCode_Rect
);
}
}
else
{
SetUpdateCtrl
(
0
,
QRCode_Rect
);
OTA_Update_Count
=
0
;
}
}
Firmware/Source/Application/BlueTooth.h
View file @
b4668b50
...
...
@@ -10,5 +10,7 @@
extern
void
BlueToothService
(
void
);
extern
void
OTAUpdateService
(
void
);
void
UpdateGraphics
(
void
);
#endif
\ No newline at end of file
Firmware/Source/Application/GpioUser.c
View file @
b4668b50
...
...
@@ -38,7 +38,7 @@ void Gpio_Init(_GpioUser_Enum InitMode)
RTE_GPIO_Config
(
RTE_GPIO_PORT02_PIN06
,
RTE_GPIO_DIR_IN
);
//水温信号输入-AD
RTE_GPIO_Config
(
RTE_GPIO_PORT02_PIN07
,
RTE_GPIO_DIR_IN
);
//BiasBitSW-燃油-AD---
RTE_GPIO_Config
(
RTE_GPIO_PORT03_PIN00
,
GpioOut_Low
);
RTE_GPIO_Config
(
RTE_GPIO_PORT03_PIN00
,
RTE_GPIO_DIR_IN
);
RTE_GPIO_Config
(
RTE_GPIO_PORT03_PIN01
,
RTE_GPIO_DIR_IN
);
//SDB_LED_DRIVER
RTE_GPIO_Config
(
RTE_GPIO_PORT04_PIN00
,
GpioOut_Low
);
//SEDIO-编程
...
...
@@ -110,7 +110,7 @@ void Gpio_Init(_GpioUser_Enum InitMode)
RTE_GPIO_Config
(
RTE_GPIO_PORT02_PIN06
,
RTE_GPIO_DIR_IN
);
RTE_GPIO_Config
(
RTE_GPIO_PORT02_PIN07
,
RTE_GPIO_DIR_IN
);
RTE_GPIO_Config
(
RTE_GPIO_PORT03_PIN00
,
GpioOut_Low
);
RTE_GPIO_Config
(
RTE_GPIO_PORT03_PIN00
,
RTE_GPIO_DIR_IN
);
RTE_GPIO_Config
(
RTE_GPIO_PORT03_PIN01
,
RTE_GPIO_DIR_IN
);
RTE_GPIO_Config
(
RTE_GPIO_PORT04_PIN00
,
GpioOut_Low
);
...
...
Firmware/Source/Component/AMT630H/AMT630H_Datas.c
View file @
b4668b50
...
...
@@ -3,16 +3,18 @@
uint8_t
Pic_mode
=
PIC_DAYTIME_CH
;
uint8_t
g_u8Display_Mode
=
ModeDAY
;
uint8_t
g_u8Display_Mode_select
=
ModeDAY
;
uint8_t
g_u8Language
=
CH
;
uint8_t
g_u8Backlight
=
Backlight_4
;
uint8_t
g_u8Backlight_select
=
Backlight_4
;
uint8_t
g_u8UnitSetting
=
Metric
;
uint8_t
g_u8SelfCheck
=
0
;
/*自检*/
uint16_t
g_u16fuelnumberup
=
0
;
uint16_t
g_u16vspeednumberup
=
0
;
uint16_t
g_u16vspeednumberdown
=
6
00
;
uint16_t
g_u16vspeednumberdown
=
3
00
;
uint16_t
g_u16espeednumberup
=
0
;
uint16_t
g_u16espeednumberdown
=
6
00
;
uint16_t
g_u16espeednumberdown
=
3
00
;
//自检函数
void
AMT630H_GUI_BACKGRAND_SelfCheck
(
void
);
...
...
@@ -282,7 +284,7 @@ static void AMT630H_GUI_FaultCode(uint8_t FaultCodevalid,uint8_t FaultCode_hight
*/
void
AMT630H_GUI_Display_Mode_Information
()
{
if
(
g_u8Display_Mode
==
ModeDAY
)
if
(
g_u8Display_Mode
_select
==
ModeDAY
)
{
if
(
g_u8Language
==
CH
)
/*日间中文*/
{
...
...
@@ -309,7 +311,7 @@ void AMT630H_GUI_Display_Mode_Information()
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0074_422_103
);
}
}
else
if
(
g_u8Display_Mode
==
ModeNIGHT
)
else
if
(
g_u8Display_Mode
_select
==
ModeNIGHT
)
{
if
(
g_u8Language
==
CH
)
/*夜间中文*/
{
...
...
@@ -334,8 +336,43 @@ void AMT630H_GUI_Display_Mode_Information()
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0262_461_118
);
}
}
/*else if自动模式没写*/
else
if
(
g_u8Display_Mode_select
==
ModeATUO
)
{
if
(
g_u8Display_Mode
==
ModeDAY
)
{
if
(
g_u8Language
==
CH
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0146_27_396
);
/*下方菜单*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0150_448_343
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0148_472_231
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0151_476_117
);
}
else
if
(
g_u8Language
==
EN
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0071_18_397
);
/*下方菜单*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0075_409_345
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0073_456_232
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0076_461_118
);
}
}
else
if
(
g_u8Display_Mode
==
ModeNIGHT
)
{
if
(
g_u8Language
==
CH
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0333_27_396
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0337_448_343
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0335_472_231
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0338_476_117
);
}
else
if
(
g_u8Language
==
EN
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0257_18_397
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0261_409_345
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0259_456_232
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0262_461_118
);
}
}
}
}
...
...
@@ -366,7 +403,7 @@ void AMT630H_GUI_Backlight_Information(void)
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0122_436_519
);
}
/*背光等级选择*/
if
(
g_u8Backlight
==
Backlight_5
)
if
(
g_u8Backlight
_select
==
Backlight_5
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0059_509_353
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0060_504_307
);
...
...
@@ -374,7 +411,7 @@ void AMT630H_GUI_Backlight_Information(void)
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0062_503_219
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0063_495_145
);
}
else
if
(
g_u8Backlight
==
Backlight_4
)
else
if
(
g_u8Backlight
_select
==
Backlight_4
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0059_509_353
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0060_504_307
);
...
...
@@ -382,7 +419,7 @@ void AMT630H_GUI_Backlight_Information(void)
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0064_493_190
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0065_504_136
);
}
else
if
(
g_u8Backlight
==
Backlight_3
)
else
if
(
g_u8Backlight
_select
==
Backlight_3
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0059_509_353
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0060_504_307
);
...
...
@@ -390,7 +427,7 @@ void AMT630H_GUI_Backlight_Information(void)
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0062_503_186
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0065_504_136
);
}
else
if
(
g_u8Backlight
==
Backlight_2
)
else
if
(
g_u8Backlight
_select
==
Backlight_2
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0059_509_353
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0067_495_281
);
...
...
@@ -398,7 +435,7 @@ void AMT630H_GUI_Backlight_Information(void)
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0062_503_186
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0065_504_136
);
}
else
if
(
g_u8Backlight
==
Backlight_1
)
else
if
(
g_u8Backlight
_select
==
Backlight_1
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0069_506_332
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0060_504_286
);
...
...
@@ -406,7 +443,7 @@ void AMT630H_GUI_Backlight_Information(void)
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0062_503_186
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0065_504_136
);
}
else
if
(
g_u8Backlight
==
Backlight_ATUO
)
else
if
(
g_u8Backlight
_select
==
Backlight_ATUO
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0059_509_286
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0060_504_236
);
...
...
@@ -441,7 +478,7 @@ void AMT630H_GUI_Backlight_Information(void)
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0310_436_519
);
}
/*背光等级选择*/
if
(
g_u8Backlight
==
Backlight_5
)
if
(
g_u8Backlight
_select
==
Backlight_5
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0245_509_353
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0246_504_307
);
...
...
@@ -449,7 +486,7 @@ void AMT630H_GUI_Backlight_Information(void)
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0248_503_219
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0249_495_145
);
}
else
if
(
g_u8Backlight
==
Backlight_4
)
else
if
(
g_u8Backlight
_select
==
Backlight_4
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0245_509_353
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0246_504_307
);
...
...
@@ -457,7 +494,7 @@ void AMT630H_GUI_Backlight_Information(void)
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0250_493_190
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0251_504_136
);
}
else
if
(
g_u8Backlight
==
Backlight_3
)
else
if
(
g_u8Backlight
_select
==
Backlight_3
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0245_509_353
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0246_504_307
);
...
...
@@ -465,7 +502,7 @@ void AMT630H_GUI_Backlight_Information(void)
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0248_503_186
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0251_504_136
);
}
else
if
(
g_u8Backlight
==
Backlight_2
)
else
if
(
g_u8Backlight
_select
==
Backlight_2
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0245_509_353
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0253_495_281
);
...
...
@@ -473,7 +510,7 @@ void AMT630H_GUI_Backlight_Information(void)
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0248_503_186
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0251_504_136
);
}
else
if
(
g_u8Backlight
==
Backlight_1
)
else
if
(
g_u8Backlight
_select
==
Backlight_1
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0255_506_332
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0246_504_286
);
...
...
@@ -481,7 +518,7 @@ void AMT630H_GUI_Backlight_Information(void)
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0248_503_186
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0251_504_136
);
}
else
if
(
g_u8Backlight
==
Backlight_ATUO
)
else
if
(
g_u8Backlight
_select
==
Backlight_ATUO
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0245_509_286
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0246_504_236
);
...
...
@@ -1444,6 +1481,7 @@ void AMT630H_GUI_Display_Mode_Setting(Menu_Item_en_t display_mode) /*图 显示
if
(
Menu_Item_Select_Get
(
MENU_ITEM_SELECT_DAYTIME
)
==
1
)
{
g_u8Display_Mode
=
ModeDAY
;
g_u8Display_Mode_select
=
ModeDAY
;
}
else
{
...
...
@@ -1474,6 +1512,7 @@ void AMT630H_GUI_Display_Mode_Setting(Menu_Item_en_t display_mode) /*图 显示
if
(
Menu_Item_Select_Get
(
MENU_ITEM_SELECT_NIGHTTIME
)
==
1
)
{
g_u8Display_Mode
=
ModeNIGHT
;
g_u8Display_Mode_select
=
ModeNIGHT
;
}
else
{
...
...
@@ -1502,7 +1541,15 @@ void AMT630H_GUI_Display_Mode_Setting(Menu_Item_en_t display_mode) /*图 显示
}
if
(
Menu_Item_Select_Get
(
MENU_ITEM_SELECT_AUTO
)
==
1
)
{
g_u8Display_Mode
=
ModeATUO
;
g_u8Display_Mode_select
=
ModeATUO
;
if
(
LightR_Status
==
0
)
{
g_u8Display_Mode
=
ModeNIGHT
;
}
else
if
(
LightR_Status
==
1
)
{
g_u8Display_Mode
=
ModeDAY
;
}
}
else
{
...
...
@@ -1541,6 +1588,7 @@ void AMT630H_GUI_Display_Mode_Setting(Menu_Item_en_t display_mode) /*图 显示
if
(
Menu_Item_Select_Get
(
MENU_ITEM_SELECT_DAYTIME
)
==
1
)
{
g_u8Display_Mode
=
ModeDAY
;
g_u8Display_Mode_select
=
ModeDAY
;
}
else
{
...
...
@@ -1572,6 +1620,7 @@ void AMT630H_GUI_Display_Mode_Setting(Menu_Item_en_t display_mode) /*图 显示
if
(
Menu_Item_Select_Get
(
MENU_ITEM_SELECT_NIGHTTIME
)
==
1
)
{
g_u8Display_Mode
=
ModeNIGHT
;
g_u8Display_Mode_select
=
ModeNIGHT
;
}
else
{
...
...
@@ -1601,7 +1650,15 @@ void AMT630H_GUI_Display_Mode_Setting(Menu_Item_en_t display_mode) /*图 显示
}
if
(
Menu_Item_Select_Get
(
MENU_ITEM_SELECT_AUTO
)
==
1
)
{
g_u8Display_Mode
=
ModeATUO
;
g_u8Display_Mode_select
=
ModeATUO
;
if
(
LightR_Status
==
0
)
{
g_u8Display_Mode
=
ModeNIGHT
;
}
else
if
(
LightR_Status
==
1
)
{
g_u8Display_Mode
=
ModeDAY
;
}
}
else
{
...
...
@@ -1612,6 +1669,10 @@ void AMT630H_GUI_Display_Mode_Setting(Menu_Item_en_t display_mode) /*图 显示
break
;
}
}
else
{
;
}
}
...
...
@@ -1621,13 +1682,6 @@ void AMT630H_GUI_Display_Mode_Setting(Menu_Item_en_t display_mode) /*图 显示
*/
void
AMT630H_GUI_Backlight_Setting
(
Menu_Item_en_t
back_mode
)
/*图 背光*/
{
/*case 0 自动*/
/*case 1 选中1*/
/*case 2 选中2*/
/*case 3 选中3*/
/*case 4 选中4*/
/*case 5 选中5*/
if
(
g_u8Display_Mode
==
ModeDAY
)
/*日间模式*/
{
if
(
g_u8Language
==
CH
)
...
...
@@ -1653,6 +1707,7 @@ void AMT630H_GUI_Backlight_Setting(Menu_Item_en_t back_mode) /*图 背光*/
if
(
Menu_Item_Select_Get
(
MENU_ITEM_BACKLIGHT_5
))
{
g_u8Backlight
=
Backlight_5
;
g_u8Backlight_select
=
Backlight_5
;
}
else
{
...
...
@@ -1671,6 +1726,7 @@ void AMT630H_GUI_Backlight_Setting(Menu_Item_en_t back_mode) /*图 背光*/
if
(
Menu_Item_Select_Get
(
MENU_ITEM_BACKLIGHT_4
))
{
g_u8Backlight
=
Backlight_4
;
g_u8Backlight_select
=
Backlight_4
;
}
else
{
...
...
@@ -1689,6 +1745,7 @@ void AMT630H_GUI_Backlight_Setting(Menu_Item_en_t back_mode) /*图 背光*/
if
(
Menu_Item_Select_Get
(
MENU_ITEM_BACKLIGHT_3
))
{
g_u8Backlight
=
Backlight_3
;
g_u8Backlight_select
=
Backlight_3
;
}
else
{
...
...
@@ -1707,6 +1764,7 @@ void AMT630H_GUI_Backlight_Setting(Menu_Item_en_t back_mode) /*图 背光*/
if
(
Menu_Item_Select_Get
(
MENU_ITEM_BACKLIGHT_2
))
{
g_u8Backlight
=
Backlight_2
;
g_u8Backlight_select
=
Backlight_2
;
}
else
{
...
...
@@ -1725,6 +1783,7 @@ void AMT630H_GUI_Backlight_Setting(Menu_Item_en_t back_mode) /*图 背光*/
if
(
Menu_Item_Select_Get
(
MENU_ITEM_BACKLIGHT_1
))
{
g_u8Backlight
=
Backlight_1
;
g_u8Backlight_select
=
Backlight_1
;
}
else
{
...
...
@@ -1749,7 +1808,31 @@ void AMT630H_GUI_Backlight_Setting(Menu_Item_en_t back_mode) /*图 背光*/
/*记忆选择*/
if
(
Menu_Item_Select_Get
(
MENU_ITEM_BACKLIGHT_AUTO
))
{
g_u8Backlight
=
Backlight_ATUO
;
g_u8Backlight_select
=
Backlight_ATUO
;
if
(
Backlight_SetPwmLevel
()
==
5
)
{
g_u8Backlight
=
Backlight_5
;
}
else
if
(
Backlight_SetPwmLevel
()
==
4
)
{
g_u8Backlight
=
Backlight_4
;
}
else
if
(
Backlight_SetPwmLevel
()
==
3
)
{
g_u8Backlight
=
Backlight_3
;
}
else
if
(
Backlight_SetPwmLevel
()
==
2
)
{
g_u8Backlight
=
Backlight_2
;
}
else
if
(
Backlight_SetPwmLevel
()
==
1
)
{
g_u8Backlight
=
Backlight_1
;
}
else
{
;
}
}
else
{
...
...
@@ -1785,6 +1868,7 @@ void AMT630H_GUI_Backlight_Setting(Menu_Item_en_t back_mode) /*图 背光*/
if
(
Menu_Item_Select_Get
(
MENU_ITEM_BACKLIGHT_5
))
{
g_u8Backlight
=
Backlight_5
;
g_u8Backlight_select
=
Backlight_5
;
}
else
{
...
...
@@ -1803,6 +1887,7 @@ void AMT630H_GUI_Backlight_Setting(Menu_Item_en_t back_mode) /*图 背光*/
if
(
Menu_Item_Select_Get
(
MENU_ITEM_BACKLIGHT_4
))
{
g_u8Backlight
=
Backlight_4
;
g_u8Backlight_select
=
Backlight_4
;
}
else
{
...
...
@@ -1821,6 +1906,7 @@ void AMT630H_GUI_Backlight_Setting(Menu_Item_en_t back_mode) /*图 背光*/
if
(
Menu_Item_Select_Get
(
MENU_ITEM_BACKLIGHT_3
))
{
g_u8Backlight
=
Backlight_3
;
g_u8Backlight_select
=
Backlight_3
;
}
else
{
...
...
@@ -1839,6 +1925,7 @@ void AMT630H_GUI_Backlight_Setting(Menu_Item_en_t back_mode) /*图 背光*/
if
(
Menu_Item_Select_Get
(
MENU_ITEM_BACKLIGHT_2
))
{
g_u8Backlight
=
Backlight_2
;
g_u8Backlight_select
=
Backlight_2
;
}
else
{
...
...
@@ -1857,6 +1944,7 @@ void AMT630H_GUI_Backlight_Setting(Menu_Item_en_t back_mode) /*图 背光*/
if
(
Menu_Item_Select_Get
(
MENU_ITEM_BACKLIGHT_1
))
{
g_u8Backlight
=
Backlight_1
;
g_u8Backlight_select
=
Backlight_1
;
}
else
{
...
...
@@ -1881,7 +1969,31 @@ void AMT630H_GUI_Backlight_Setting(Menu_Item_en_t back_mode) /*图 背光*/
/*记忆选择*/
if
(
Menu_Item_Select_Get
(
MENU_ITEM_BACKLIGHT_AUTO
))
{
g_u8Backlight
=
Backlight_ATUO
;
g_u8Backlight_select
=
Backlight_ATUO
;
if
(
Backlight_SetPwmLevel
()
==
5
)
{
g_u8Backlight
=
Backlight_5
;
}
else
if
(
Backlight_SetPwmLevel
()
==
4
)
{
g_u8Backlight
=
Backlight_4
;
}
else
if
(
Backlight_SetPwmLevel
()
==
3
)
{
g_u8Backlight
=
Backlight_3
;
}
else
if
(
Backlight_SetPwmLevel
()
==
2
)
{
g_u8Backlight
=
Backlight_2
;
}
else
if
(
Backlight_SetPwmLevel
()
==
1
)
{
g_u8Backlight
=
Backlight_1
;
}
else
{
;
}
}
else
{
...
...
@@ -2653,16 +2765,6 @@ static const uint16_t PICList_ESpeed_NIGHT[] = {
Pic_0716_782_125
,
};
static
const
uint16_t
PICList_Fuel
[]
=
{
Pic_0554_315_473
,
Pic_0555_366_473
,
Pic_0556_426_473
,
Pic_0557_469_473
,
Pic_0558_514_473
,
Pic_0559_550_473
,
Pic_0560_586_473
,
Pic_0561_623_473
,
};
static
const
uint16_t
PICList_Fuel_RED
[]
=
{
Pic_0562_315_473
,
Pic_0555_366_473
,
Pic_0556_426_473
,
...
...
@@ -2672,6 +2774,16 @@ static const uint16_t PICList_Fuel_RED[] = {
Pic_0560_586_473
,
Pic_0561_623_473
,
};
// static const uint16_t PICList_Fuel_RED[] = {
// Pic_0562_315_473,
// Pic_0555_366_473,
// Pic_0556_426_473,
// Pic_0557_469_473,
// Pic_0558_514_473,
// Pic_0559_550_473,
// Pic_0560_586_473,
// Pic_0561_623_473,
// };
static
const
uint16_t
PICList_Fuel_SelfCheck
[]
=
{
Pic_0554_315_473
,
Pic_0555_366_473
,
...
...
@@ -2733,7 +2845,14 @@ static void AMT630H_GUI_Light()
}
if
(
Get_TelltalesLedSts
(
em_LED_Coolant_Temperature
))
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0741_616_20
);
if
(
FLASH_SYNC_1Hz
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0741_616_20
);
/*水温灯报警闪烁1HZ*/
}
else
{
;
}
}
if
(
Get_TelltalesLedSts
(
em_LED_WIFI
))
{
...
...
@@ -2743,13 +2862,17 @@ static void AMT630H_GUI_Light()
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0740_682_21
);
}
if
(
Get_TelltalesLedSts
(
em_LED_E
))
if
(
Get_TelltalesLedSts
(
em_LED_E
)
==
1
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0748_194_26
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0748_194_26
);
//E
}
if
(
Get_TelltalesLedSts
(
em_LED_S
)
)
else
if
(
Get_TelltalesLedSts
(
em_LED_E
)
==
2
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0749_192_26
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0749_192_26
);
//S
}
else
{
;
}
}
...
...
@@ -2837,23 +2960,31 @@ static void AMT630H_GUI_TIME(uint16_t Hour, uint16_t Minute)
// }
/*燃油显示函数*/
uint8_t
g_u16_GUI_PerFuelLevel
=
0
;
uint8_t
g_u16_GUI_PerFuelLevel
=
1
;
static
void
AMT630H_GUI_Fuel
(
uint8_t
Fuel
)
{
/*外部传参燃油处于数组第几格*/
/*R>83且处于非开路状态时 黄色燃油灯闪烁*/
/*R开路状态时 黄色燃油灯闪烁*/
/*以上两种情况黄色燃油灯闪烁的频率不同*/
static
uint8_t
s_FuelLowTime
=
0U
;
uint8_t
FuelLevel
;
FuelLevel
=
Fuel
;
static
uint8_t
s_FuelLowTime
=
0U
;
if
(
Fuel
==
0
)
{
FuelLevel
=
1
;
}
else
{
;
}
if
(
g_u8Display_Mode
==
ModeDAY
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0553_315_473
);
/*燃油格*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0549_299_533
);
/*E*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0550_715_533
);
/*F*/
/*
燃油桶
闪烁*/
if
(
Fuel
Level
==
0
)
/*
开路状态黄色燃油灯 1HZ
闪烁*/
if
(
Fuel
==
0
)
{
if
(
FLASH_SYNC_1Hz
)
{
...
...
@@ -2861,7 +2992,7 @@ static void AMT630H_GUI_Fuel(uint8_t Fuel)
}
s_FuelLowTime
=
0
;
}
else
if
(
Fuel
Level
==
1
)
else
if
(
Fuel
==
1
)
{
s_FuelLowTime
++
;
if
(
s_FuelLowTime
<=
15
)
...
...
@@ -2884,7 +3015,7 @@ static void AMT630H_GUI_Fuel(uint8_t Fuel)
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0662_315_473
);
/*燃油格*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0549_299_533
);
/*E*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0660_715_533
);
/*F*/
if
(
Fuel
Level
==
0
)
if
(
Fuel
==
0
)
{
if
(
FLASH_SYNC_1Hz
)
{
...
...
@@ -2892,7 +3023,7 @@ static void AMT630H_GUI_Fuel(uint8_t Fuel)
}
s_FuelLowTime
=
0
;
}
else
if
(
Fuel
Level
==
1
)
else
if
(
Fuel
==
1
)
{
s_FuelLowTime
++
;
if
(
s_FuelLowTime
<=
15
)
...
...
@@ -2911,13 +3042,12 @@ static void AMT630H_GUI_Fuel(uint8_t Fuel)
}
}
/*燃油格数走格*/
if
(
FuelLevel
>
0
)
{
if
(
FuelLevel
!=
g_u16_GUI_PerFuelLevel
)
{
for
(
uint8_t
i
=
0
;
i
<
=
g_u16_GUI_PerFuelLevel
;
i
++
)
for
(
uint8_t
i
=
0
;
i
<
g_u16_GUI_PerFuelLevel
;
i
++
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
PICList_Fuel
[
i
]);
}
...
...
@@ -2935,67 +3065,41 @@ static void AMT630H_GUI_Fuel(uint8_t Fuel)
;
}
}
else
if
(
FuelLevel
==
g_u16_GUI_PerFuelLevel
)
if
(
FuelLevel
==
g_u16_GUI_PerFuelLevel
)
{
g_u16_GUI_PerFuelLevel
=
FuelLevel
;
for
(
uint8_t
i
=
0
;
i
<
=
g_u16_GUI_PerFuelLevel
;
i
++
)
for
(
uint8_t
i
=
0
;
i
<
g_u16_GUI_PerFuelLevel
;
i
++
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
PICList_Fuel
[
i
]);
}
}
}
else
{
if
(
FuelLevel
!=
g_u16_GUI_PerFuelLevel
)
{
for
(
uint8_t
i
=
0
;
i
<=
g_u16_GUI_PerFuelLevel
;
i
++
)
{
{
SetPagePic
(
GRAPHICS_PAGE_0
,
PICList_Fuel_RED
[
i
]);
}
}
if
(
FuelLevel
>
g_u16_GUI_PerFuelLevel
)
{
g_u16_GUI_PerFuelLevel
++
;
}
else
if
((
FuelLevel
<
g_u16_GUI_PerFuelLevel
)
&&
(
g_u16_GUI_PerFuelLevel
!=
0
))
{
g_u16_GUI_PerFuelLevel
--
;
}
else
{
;
}
}
else
if
(
FuelLevel
==
g_u16_GUI_PerFuelLevel
)
{
g_u16_GUI_PerFuelLevel
=
FuelLevel
;
for
(
uint8_t
i
=
0
;
i
<=
g_u16_GUI_PerFuelLevel
;
i
++
)
{
{
SetPagePic
(
GRAPHICS_PAGE_0
,
PICList_Fuel_RED
[
i
]);
}
}
}
}
}
uint16_t
g_u16PerFuel_SelfCheck
=
0
;
/*燃油自检函数*/
static
void
AMT630H_GUI_Fuel_SelfCheck
(
uint8_t
Fuel
)
{
uint8_t
FuelLevel
;
FuelLevel
=
Fuel
;
if
(
Fuel
==
1
)
{
FuelLevel
=
2
;
}
else
{
;
}
if
(
g_u8Display_Mode
==
ModeDAY
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0553_315_473
);
/*燃油格*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0549_299_533
);
/*E*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0550_715_533
);
/*F*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0551_503_529
);
/*黑色燃油灯*/
}
else
if
(
g_u8Display_Mode
==
ModeNIGHT
)
{
...
...
@@ -3004,8 +3108,17 @@ static void AMT630H_GUI_Fuel_SelfCheck(uint8_t Fuel)
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0660_715_533
);
/*F*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0661_503_529
);
/*白色燃油灯*/
}
/*开机自检燃油走格*/
if
(
FuelLevel
>
0
)
{
if
(
FuelLevel
!=
g_u16_GUI_PerFuelLevel
)
{
for
(
uint8_t
i
=
0
;
i
<
g_u16_GUI_PerFuelLevel
;
i
++
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
PICList_Fuel_SelfCheck
[
i
]);
}
/*燃油格数走格*/
if
(
FuelLevel
>
g_u16_GUI_PerFuelLevel
)
{
g_u16_GUI_PerFuelLevel
++
;
...
...
@@ -3018,10 +3131,21 @@ static void AMT630H_GUI_Fuel_SelfCheck(uint8_t Fuel)
{
;
}
}
if
(
FuelLevel
==
g_u16_GUI_PerFuelLevel
)
{
g_u16_GUI_PerFuelLevel
=
FuelLevel
;
for
(
uint8_t
i
=
0
;
i
<
g_u16_GUI_PerFuelLevel
;
i
++
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
PICList_Fuel_SelfCheck
[
i
]);
}
}
}
else
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0562_315_473
);
/*燃油红区*/
}
}
...
...
@@ -3045,11 +3169,11 @@ static void AMT630H_GUI_Voltage(uint16_t Voltage)
uint16_t
Front
;
if
((
VoltageNumber
<=
120
)
||
(
VoltageNumber
>
150
))
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0563_923_407
);
/*电压图标*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0563_923_407
);
/*
红色
电压图标*/
}
else
{
;
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0865_923_407
);
/*绿色电压图标显示*/
}
/*数据处理*/
Voltage_Hundred
=
VoltageNumber
/
100
;
...
...
@@ -3109,11 +3233,11 @@ static void AMT630H_GUI_Voltage(uint16_t Voltage)
uint16_t
Front
;
if
((
VoltageNumber
<=
120
)
||
(
VoltageNumber
>
150
))
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0563_923_407
);
/*电压图标*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0563_923_407
);
/*
红色
电压图标*/
}
else
{
;
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0865_923_407
);
/*绿色电压图标显示*/
}
/*数据处理*/
Voltage_Hundred
=
VoltageNumber
/
100
;
...
...
@@ -3382,54 +3506,54 @@ static void AMT630H_GUI_Trip(uint32_t Trip, uint8_t Uint)
DisplayNumPara
.
DecimalNum
=
1
;
/*小数点后一位*/
if
((
Tripnumber
<
10000
)
&&
(
Tripnumber
>=
1000
))
{
DisplayNumPara
.
x
=
1
25
;
DisplayNumPara
.
x
=
1
40
;
DisplayNumPara
.
MinDigits
=
4
;
if
(
Uint
==
0
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0580_1
63_324
);
/*KM*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0580_1
87_324
);
//KM
}
else
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0861_1
63_324
);
/*单位mile*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0861_1
87_324
);
/*单位mile*/
}
}
else
if
((
Tripnumber
<
1000
)
&&
(
Tripnumber
>=
100
))
{
DisplayNumPara
.
x
=
1
01
;
DisplayNumPara
.
x
=
1
16
;
DisplayNumPara
.
MinDigits
=
3
;
if
(
Uint
==
0
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0580_1
39_324
);
/*KM*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0580_1
63_324
);
/*KM*/
}
else
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0861_1
39_324
);
/*单位mile*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0861_1
63_324
);
/*单位mile*/
}
}
else
if
((
Tripnumber
<
100
)
&&
(
Tripnumber
>=
10
))
{
DisplayNumPara
.
x
=
77
;
DisplayNumPara
.
x
=
93
;
DisplayNumPara
.
MinDigits
=
2
;
if
(
Uint
==
0
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0580_1
15_324
);
/*KM*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0580_1
39_324
);
/*KM*/
}
else
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0861_1
15_324
);
/*单位mile*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0861_1
39_324
);
/*单位mile*/
}
}
else
if
((
Tripnumber
<
10
)
&&
(
Tripnumber
>=
0
))
{
DisplayNumPara
.
x
=
5
3
;
DisplayNumPara
.
x
=
9
3
;
DisplayNumPara
.
MinDigits
=
2
;
if
(
Uint
==
0
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0580_91_324
);
/*单位
KM*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0580_139_324
);
/*
KM*/
}
else
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0861_
91
_324
);
/*单位mile*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0861_
139
_324
);
/*单位mile*/
}
}
DisplayNum
(
GRAPHICS_PAGE_0
,
&
DisplayNumPara
,
Tripnumber
);
...
...
@@ -3444,48 +3568,54 @@ static void AMT630H_GUI_Trip(uint32_t Trip, uint8_t Uint)
DisplayNumPara
.
DecimalNum
=
1
;
/*小数点后一位*/
if
((
Tripnumber
<
10000
)
&&
(
Tripnumber
>=
1000
))
{
DisplayNumPara
.
x
=
1
25
;
DisplayNumPara
.
x
=
1
40
;
DisplayNumPara
.
MinDigits
=
4
;
if
(
Uint
==
0
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0
688_163_324
);
/*KM
*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0
580_187_324
);
/*单位km
*/
}
else
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0863_1
63
_324
);
/*单位mile*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0863_1
87
_324
);
/*单位mile*/
}
}
else
if
((
Tripnumber
<
1000
)
&&
(
Tripnumber
>=
100
))
{
DisplayNumPara
.
x
=
1
01
;
DisplayNumPara
.
x
=
1
16
;
DisplayNumPara
.
MinDigits
=
3
;
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0688_139_324
);
/*KM*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0863_139_324
);
/*单位mile*/
if
(
Uint
==
0
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0580_163_324
);
/*KM*/
}
else
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0863_163_324
);
/*单位mile*/
}
}
else
if
((
Tripnumber
<
100
)
&&
(
Tripnumber
>=
10
))
{
DisplayNumPara
.
x
=
77
;
DisplayNumPara
.
x
=
93
;
DisplayNumPara
.
MinDigits
=
2
;
if
(
Uint
==
0
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0
688_115
_324
);
/*KM*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0
580_139
_324
);
/*KM*/
}
else
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0863_1
15
_324
);
/*单位mile*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0863_1
39
_324
);
/*单位mile*/
}
}
else
if
((
Tripnumber
<
10
)
&&
(
Tripnumber
>=
0
))
{
DisplayNumPara
.
x
=
5
3
;
DisplayNumPara
.
x
=
9
3
;
DisplayNumPara
.
MinDigits
=
2
;
if
(
Uint
==
0
)
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0
688_91
_324
);
/*单位KM*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0
580_139
_324
);
/*单位KM*/
}
else
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0863_
91
_324
);
/*单位mile*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0863_
139
_324
);
/*单位mile*/
}
}
DisplayNum
(
GRAPHICS_PAGE_0
,
&
DisplayNumPara
,
Tripnumber
);
...
...
@@ -3834,8 +3964,6 @@ void AMT630H_GUI_BACKGRAND_SelfCheck()
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0754_109_347
);
}
}
/*指示灯显示*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0752_28_13
);
/*左转向*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0736_941_13
);
/*右转向*/
...
...
@@ -3851,9 +3979,9 @@ void AMT630H_GUI_BACKGRAND_SelfCheck()
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0737_875_23
);
/*WIFI*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0740_682_21
);
/*蓝牙*/
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0748_194_26
);
/*E*/
//SetPagePic(GRAPHICS_PAGE_0, Pic_0749_192_26);/*S*/
// AMT630H_GUI_Telephone(Telephone);
AMT630H_GUI_Voltage
(
KL30_VOLTAGE_Value
);
AMT630H_GUI_TIME
(
Get_Dis_Hour_Time
(),
Get_Dis_Minute_Time
());
if
(
KL30_VOLTAGE_time
<
10
)
{
...
...
@@ -3863,12 +3991,8 @@ void AMT630H_GUI_BACKGRAND_SelfCheck()
{
KL30_VOLTAGE_time
=
0
;
KL30_VOLTAGE_Value
=
(
ADC_Read_Signal
(
ADC_CH_KL30_VOLTAGE
))
/
10
;
}
AMT630H_GUI_Voltage
(
KL30_VOLTAGE_Value
);
// AMT630H_GUI_Telephone(Telephone);
/*里程 无自检*/
/*里程无自检*/
if
(
Get_Dis_OdoAndTrip
()
==
0
)
{
AMT630H_GUI_ODO
(
Get_ODO_Value
()
/
10
,
Get_Dis_Unit
());
...
...
@@ -3878,27 +4002,27 @@ void AMT630H_GUI_BACKGRAND_SelfCheck()
AMT630H_GUI_Trip
(
Get_Trip_Value
(),
Get_Dis_Unit
());
}
/*燃油自检*/
if
(
g_u16fuelnumberup
<
12
00
)
if
(
g_u16fuelnumberup
<
6
00
)
{
g_u16fuelnumberup
+=
6
;
AMT630H_GUI_Fuel_SelfCheck
(
g_u16fuelnumberup
/
150
);
/*初始化g_u16fuelnumberup = 0*/
AMT630H_GUI_Fuel_SelfCheck
(
g_u16fuelnumberup
/
75
);
/*初始化g_u16fuelnumberup = 0*/
}
else
{
;
}
/*车速自检*/
if
(
g_u16vspeednumberup
<
6
00
)
if
(
g_u16vspeednumberup
<
3
00
)
{
AMT630H_GUI_VSpeed
(
g_u16vspeednumberup
/
3
,
Get_Dis_Unit
());
/*初始化g_u16vspeednumberup = 0*/
g_u16vspeednumberup
+=
6
;
AMT630H_GUI_VSpeed
(
g_u16vspeednumberup
,
Get_Dis_Unit
());
/*初始化g_u16vspeednumberup = 0*/
g_u16vspeednumberup
+=
6
;
}
else
{
if
(
g_u16vspeednumberdown
>
0
)
{
g_u16vspeednumberdown
-=
6
;
/*初始化g_u16vspeednumberup=1200*/
AMT630H_GUI_VSpeed
(
g_u16vspeednumberdown
/
3
,
Get_Dis_Unit
());
/*if g_u16vspeednumberup=0 车速自检结束*/
g_u16vspeednumberdown
-=
6
;
/*初始化g_u16vspeednumberup=1200*/
AMT630H_GUI_VSpeed
(
g_u16vspeednumberdown
,
Get_Dis_Unit
());
/*if g_u16vspeednumberup=0 车速自检结束*/
}
else
{
...
...
@@ -3906,21 +4030,21 @@ void AMT630H_GUI_BACKGRAND_SelfCheck()
}
}
/*转速自检*/
if
(
g_u16espeednumberup
<=
6
00
)
if
(
g_u16espeednumberup
<=
3
00
)
{
AMT630H_GUI_ESpeed
(
g_u16espeednumberup
*
2
0
);
/*初始化g_u16espeednumberup = 0*/
g_u16espeednumberup
+=
6
;
AMT630H_GUI_ESpeed
(
g_u16espeednumberup
*
4
0
);
/*初始化g_u16espeednumberup = 0*/
g_u16espeednumberup
+=
6
;
}
else
{
if
(
g_u16espeednumberdown
>
0
)
{
AMT630H_GUI_ESpeed
(
g_u16espeednumberdown
*
2
0
);
/*初始化g_u16espeednumberdown = 600*/
g_u16espeednumberdown
-=
6
;
/*g_u16espeednumberdown = 0 转速自检结束*/
AMT630H_GUI_ESpeed
(
g_u16espeednumberdown
*
4
0
);
/*初始化g_u16espeednumberdown = 600*/
g_u16espeednumberdown
-=
6
;
/*g_u16espeednumberdown = 0 转速自检结束*/
}
}
/*结束状态*/
if
(
g_u16fuelnumberup
==
12
00
)
if
(
g_u16fuelnumberup
==
6
00
)
{
AMT630H_GUI_Fuel_SelfCheck
(
8
);
}
...
...
@@ -3933,7 +4057,7 @@ void AMT630H_GUI_BACKGRAND_SelfCheck()
AMT630H_GUI_ESpeed
(
g_u16espeednumberdown
);
}
/*结束自检*/
if
((
g_u16fuelnumberup
==
12
00
)
&&
(
g_u16vspeednumberdown
==
0
)
&&
(
g_u16espeednumberdown
==
0
))
if
((
g_u16fuelnumberup
==
6
00
)
&&
(
g_u16vspeednumberdown
==
0
)
&&
(
g_u16espeednumberdown
==
0
))
{
g_u8SelfCheck
=
1
;
/*自检结束标志*/
}
...
...
@@ -4121,8 +4245,16 @@ void AMT630H_GUI_ReadPosittion_Display(void)
AMT630H_GUI_Language_Setting
(
MENU_ITEM_LANGUAGE_ENGLISH
);
break
;
case
MENU_ITEM_FAULT_INFORMATION
:
/*27 故障信息*/
if
(
OTA_Update_Flag
==
0
)
{
AMT630H_GUI_SETTING
();
AMT630H_GUI_Fault_Information
();
}
else
{
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0653_54_499
);
SetPagePic
(
GRAPHICS_PAGE_0
,
Pic_0193_0_0
);
}
break
;
case
MENU_ITEM_PHONE_CONNECT
:
/*28 手机互联*/
AMT630H_GUI_SETTING
();
...
...
Firmware/Source/Component/AMT630H/PicBin.h
View file @
b4668b50
#ifndef PICBIN_H
#define PICBIN_H
/* Flash Bin Version:202408
17 2024-08-17 11:18:35
Compression ratio:70.00% */
/* Flash Bin Version:202408
21 2024-08-21 09:09:13
Compression ratio:70.00% */
#define Pic_0001 1
#define Pic_0002 2
#define Pic_0003 3
...
...
Firmware/Source/Component/Key/Key_user.c
View file @
b4668b50
...
...
@@ -62,6 +62,7 @@ void Key_Operation_Right(Key_Event_en_t enKeyEvent)//确认
break
;
case
KEY_EVENT_LONG_PRESS_4
:
//10s
//TYW_RESET_ODO();
Get_Into_OTA_Update_Mode
();
break
;
case
KEY_EVENT_OFF_TO_ON
:
break
;
...
...
@@ -158,10 +159,16 @@ void Key_Wakeup_Init_EXample(void)
void
Key_TimeOut_Service
(
void
)
{
if
(
OTA_Update_Flag
==
0
)
{
if
((
MenuData
.
Back_Time_Left_Flag
==
1
)
&&
(
MenuData
.
Back_Time_Right_Flag
==
1
))
{
Menu_Service
(
MENU_KEY_TIMEOUT
);
}
}
else
{
}
}
void
Key_Auto_Save
(
void
)
...
...
@@ -274,6 +281,14 @@ void Key_Event_Short_Press_Right(void)//确认
}
}
uint8_t
OTA_Update_Flag
=
0
;
void
Get_Into_OTA_Update_Mode
(
void
)
{
if
(
Menu_Get_Current_Cursor_Information
()
==
MENU_ITEM_FAULT_INFORMATION
)
{
OTA_Update_Flag
=
!
OTA_Update_Flag
;
}
}
void
KEY_LEFT_EVENT_NONE_Service
(
void
)
{
MenuData
.
Back_Time_Left
++
;
...
...
Firmware/Source/Component/Key/Key_user.h
View file @
b4668b50
...
...
@@ -47,6 +47,7 @@ typedef struct
uint8_t
Clock_Flash
;
}
_Menu_Data
;
extern
uint8_t
OTA_Update_Flag
;
extern
uint8_t
ClearODO_Flag
;
extern
uint8_t
g_u8Cursor_Posittion
;
extern
RTC_CounterTypeDef
counter_val
;
...
...
@@ -59,6 +60,7 @@ Key_Status_en_t Key_Status_Read_Left(void);
Key_Status_en_t
Key_Status_Read_Right
(
void
);
void
Key_Event_Short_Press_Left
(
void
);
void
Key_Event_Short_Press_Right
(
void
);
void
Get_Into_OTA_Update_Mode
(
void
);
void
KEY_RIGHT_EVENT_NONE_Service
(
void
);
void
KEY_LEFT_EVENT_NONE_Service
(
void
);
void
Key_Auto_Save
(
void
);
...
...
Firmware/Source/Component/Line_In/Line_In_user.c
View file @
b4668b50
...
...
@@ -58,7 +58,7 @@ Linelib_uint8_t Get_LINE_IN_High_Beam(void)
Linelib_uint8_t
Get_LINE_IN_Efi_Fault
(
void
)
{
Linelib_uint8_t
ret
=
0U
;
if
(
RTE_GPIO_Get_Level
(
Engine_Failure_MCU
))
if
(
RTE_GPIO_Get_Level
(
MAINTENANCE_LAMP_OUT
))
{
ret
=
1u
;
}
...
...
Firmware/Source/Component/Telltales/Telltales_user.c
View file @
b4668b50
...
...
@@ -5,6 +5,10 @@
#include "Line_In\Line_In_user.h"
#include "Components.h"
uint8_t
ECU_Engine_Temperature_flag
=
0
;
static
Tellib_uint16_t
LED_Turn_Left_Judgement
(
void
);
static
void
LED_Turn_Left_Execution
(
Tellib_uint16_t
led_status
);
static
Tellib_uint16_t
LED_Turn_Right_Judgement
(
void
);
...
...
@@ -228,7 +232,7 @@ static Tellib_uint16_t LED_TCS_Judgement(void)
}
else
{
if
(
Get_CAN_CH0_ID_37B_Sig_TCS_Work_Mode
==
0x0
)
if
(
Get_CAN_CH0_ID_37B_Sig_TCS_Work_Mode
()
==
0x0
)
{
if
(
Get_CAN_CH0_ID_37B_Sig_TCS_Warning_Lamp
()
==
0x1
)
{
...
...
@@ -243,26 +247,15 @@ static Tellib_uint16_t LED_TCS_Judgement(void)
LED_STATE
=
0u
;
}
}
else
if
(
Get_CAN_CH0_ID_37B_Sig_TCS_Work_Mode
==
0x0
)
{
if
(
Get_CAN_CH0_ID_37B_Sig_TCS_Warning_Lamp
()
==
0x1
)
else
if
(
Get_CAN_CH0_ID_37B_Sig_TCS_Work_Mode
()
==
0x1u
)
{
LED_STATE
=
2u
;
/*TCS/亮*/
}
else
if
(
Get_CAN_CH0_ID_37B_Sig_TCS_Warning_Lamp
()
==
0x0
)
{
LED_STATE
=
0u
;
}
else
{
LED_STATE
=
0u
;
}
}
else
{
;
}
}
return
LED_STATE
;
}
static
void
LED_TCS_Execution
(
Tellib_uint16_t
led_status
)
...
...
@@ -283,7 +276,7 @@ static Tellib_uint16_t LED_HEV_Judgement(void)
}
else
{
if
((
Get_CAN_CH0_ID_111_Sig_ISG_Ready
()
==
0x01UL
)
||
((
Get_CAN_CH0_ID_111_Sig_ISG_Power
()
==
1u
)
&&
(
Get_CAN_CH0_ID_111_Sig_ISG_Power_Enable
()
==
0
u
)))
if
((
Get_CAN_CH0_ID_111_Sig_ISG_Ready
()
==
0x01UL
)
||
((
Get_CAN_CH0_ID_111_Sig_ISG_Power
()
==
1u
)
&&
(
Get_CAN_CH0_ID_111_Sig_ISG_Power_Enable
()
==
2u
))
||
((
Get_CAN_CH0_ID_111_Sig_ISG_Power
()
==
1u
)
&&
(
Get_CAN_CH0_ID_111_Sig_ISG_Power_Enable
()
==
1
u
)))
{
LED_STATE
=
1u
;
}
...
...
@@ -342,34 +335,69 @@ static void LED_Fuel_Level_Low_Execution(Tellib_uint16_t led_status)
{
}
// uint16_t ECU_Engine_Temperature_R =0;
// uint32_t test_ECU_Engine_Temperature =0;
/*信号来源:ECU_101 +硬线-P11 阻值 CAN>硬线*/
static
Tellib_uint16_t
LED_Coolant_Temperature_Judgement
(
void
)
{
Tellib_uint16_t
LED_STATE
=
0u
;
if
(
CAN_MSG_Status
(
&
CAN_CH0_CanMsgOp
,
CAN_CH0_ID_CH0_101_Msg_Count
)
==
CAN_SIG_LOST
)
{
// ECU_Engine_Temperature_R = ADC_Read_Signal(ADC_CH_COOLANT_TEMP1_R);
if
(
ADC_Read_Signal
(
ADC_CH_COOLANT_TEMP1_R
)
<=
20
)
{
ECU_Engine_Temperature_flag
=
1
;
LED_STATE
=
1u
;
}
else
if
(
ADC_Read_Signal
(
ADC_CH_COOLANT_TEMP1_R
)
>=
23
)
{
ECU_Engine_Temperature_flag
=
0
;
LED_STATE
=
0u
;
if
(
Line_In_Get_Status
(
LINE_IN_Coolant_Temperature
))
}
else
{
if
(
ECU_Engine_Temperature_flag
==
1
)
{
LED_STATE
=
1u
;
}
else
if
(
ECU_Engine_Temperature_flag
==
0
)
{
LED_STATE
=
0u
;
}
else
{
LED_STATE
=
0u
;
}
}
}
else
{
if
(
Get_CAN_CH0_ID_101_Sig_ECU_Engine_Temperature_State
()
==
0x01UL
)
// test_ECU_Engine_Temperature = Get_CAN_CH0_ID_101_Sig_ECU_Engine_Temperature();
if
(
Get_CAN_CH0_ID_101_Sig_ECU_Engine_Temperature
()
>=
120
)
{
ECU_Engine_Temperature_flag
=
1
;
LED_STATE
=
1u
;
}
else
if
(
Get_CAN_CH0_ID_101_Sig_ECU_Engine_Temperature
()
<=
118
)
{
ECU_Engine_Temperature_flag
=
0
;
LED_STATE
=
0u
;
}
else
{
if
(
ECU_Engine_Temperature_flag
==
1
)
{
LED_STATE
=
1u
;
}
else
if
(
ECU_Engine_Temperature_flag
==
0
)
{
LED_STATE
=
0u
;
}
else
{
LED_STATE
=
0u
;
}
}
}
return
LED_STATE
;
}
...
...
Firmware/Source/Device/Cmsemicon/BAT32A279/Library/Driver/src/cgc.c
View file @
b4668b50
#include "cgc.h"
uint8_t
USE_HSE_SYSTYEM_CLOCK
=
SYSTYEM_CLOCK_CLOSE
;
uint8_t
USE_HSI_SYSTYEM_CLOCK
=
SYSTYEM_CLOCK_CLOSE
;
uint8_t
USE_LSE_SYSTYEM_CLOCK
=
SYSTYEM_CLOCK_CLOSE
;
uint8_t
USE_LSI_SYSTYEM_CLOCK
=
SYSTYEM_CLOCK_CLOSE
;
/**
* @brief Enables or disables the PER0 peripheral clock.
* @note After reset, the peripheral clock (used for registers read/write access)
...
...
@@ -107,7 +102,6 @@ void CGC_PER2PeriphClockCmd(uint32_t CGC_PER2Periph, FunctionalState NewState)
CGC
->
PER2
&=
~
CGC_PER2Periph
;
}
}
/**
* @brief Enables or disables the PER3 peripheral clock.
* @note After reset, the peripheral clock (used for registers read/write access)
...
...
@@ -155,32 +149,29 @@ void CGC_Osc_Setting(OSC_Pin_Mode_t main,OSC_Speed_Mode_t amph, OSC_Pin_Mode_t s
uint8_t
tmp
;
tmp
=
0x00
;
if
(
main
==
OSC_PORT
)
if
(
main
==
OSC_OSCILLATOR
)
{
tmp
|=
(
0
<<
CGC_CMC_EXCLK_Pos
)
|
(
0
<<
CGC_CMC_OSCSEL
_Pos
);
tmp
|=
(
0
<<
CGC_CMC_EXCLK_Pos
)
|
(
1
<<
CGC_CMC_OSCSEL_Pos
)
|
(((
uint8_t
)
amph
)
<<
CGC_CMC_AMPH
_Pos
);
}
if
(
sub
==
OSC_PORT
)
else
if
(
main
==
OSC_PORT
)
{
tmp
|=
(
0
<<
CGC_CMC_EXCLK
S_Pos
)
|
(
0
<<
CGC_CMC_OSCSELS
_Pos
);
tmp
|=
(
0
<<
CGC_CMC_EXCLK
_Pos
)
|
(
0
<<
CGC_CMC_OSCSEL
_Pos
);
}
if
(
main
==
OSC_OSCILLATOR
)
else
if
(
main
==
OSC_EXCLK
)
{
tmp
|=
(
0
<<
CGC_CMC_EXCLK_Pos
)
|
(
1
<<
CGC_CMC_OSCSEL_Pos
)
|
(
1
<<
CGC_CMC_AMPH
_Pos
);
tmp
|=
(
1
<<
CGC_CMC_EXCLK_Pos
)
|
(
1
<<
CGC_CMC_OSCSEL
_Pos
);
}
if
(
sub
==
OSC_OSCILLATOR
)
{
tmp
|=
(
0
<<
CGC_CMC_EXCLKS_Pos
)
|
(
1
<<
CGC_CMC_OSCSELS_Pos
)
|
(
1
<<
CGC_CMC_AMPHS_Pos
);
tmp
|=
(
0
<<
CGC_CMC_EXCLKS_Pos
)
|
(
1
<<
CGC_CMC_OSCSELS_Pos
)
|
(
((
uint8_t
)
amphs
)
<<
CGC_CMC_AMPHS_Pos
);
}
if
(
main
==
OSC_EXCLK
)
else
if
(
sub
==
OSC_PORT
)
{
tmp
|=
(
1
<<
CGC_CMC_EXCLK_Pos
)
|
(
1
<<
CGC_CMC_OSCSEL
_Pos
);
tmp
|=
(
0
<<
CGC_CMC_EXCLKS_Pos
)
|
(
0
<<
CGC_CMC_OSCSELS
_Pos
);
}
if
(
sub
==
OSC_EXCLK
)
else
if
(
sub
==
OSC_EXCLK
)
{
tmp
|=
(
1
<<
CGC_CMC_EXCLKS_Pos
)
|
(
1
<<
CGC_CMC_OSCSELS_Pos
);
}
...
...
@@ -188,7 +179,7 @@ void CGC_Osc_Setting(OSC_Pin_Mode_t main,OSC_Speed_Mode_t amph, OSC_Pin_Mode_t s
CGC
->
CMC
=
tmp
;
/* Set fMX */
CGC
->
CSC
&=
~
(
1
<<
7
)
;
//MSTOP = 0
CGC
->
CSC
&=
~
(
1
<<
CGC_CSC_MSTOP_Pos
)
;
//MSTOP = 0
if
(
main
==
OSC_OSCILLATOR
)
{
...
...
@@ -203,7 +194,7 @@ void CGC_Osc_Setting(OSC_Pin_Mode_t main,OSC_Speed_Mode_t amph, OSC_Pin_Mode_t s
}
/* Set fSUB */
CGC
->
CSC
&=
~
(
1
<<
6
)
;
//XTSTOP = 0
CGC
->
CSC
&=
~
(
1
<<
CGC_CSC_XTSTOP_Pos
)
;
//XTSTOP = 0
if
(
sub
==
OSC_OSCILLATOR
)
{
...
...
@@ -234,25 +225,24 @@ void CGC_Osc_Setting(OSC_Pin_Mode_t main,OSC_Speed_Mode_t amph, OSC_Pin_Mode_t s
*/
void
CGC_LSEConfig
(
OSC_Pin_Mode_t
sub
,
OSC_Power_Mode_t
amphs
)
{
/* Check the parameters */
assert_param
(
IS_CGC_LSE_MODE
(
sub
));
assert_param
(
IS_CGC_LSE_PWR_MODE
(
amphs
));
volatile
uint32_t
w_count
;
uint8_t
tmp
;
/* Check the parameters */
assert_param
(
IS_CGC_OSC_PIN_MODE
(
sub
));
assert_param
(
IS_CGC_LSE_PWR_MODE
(
amphs
));
tmp
=
0x00
;
if
(
sub
==
OSC_PORT
)
{
tmp
|=
(
0
<<
CGC_CMC_EXCLKS_Pos
)
|
(
0
<<
CGC_CMC_OSCSELS_Pos
);
}
if
(
sub
==
OSC_OSCILLATOR
)
{
tmp
|=
(
0
<<
CGC_CMC_EXCLKS_Pos
)
|
(
1
<<
CGC_CMC_OSCSELS_Pos
)
|
(
amphs
<<
CGC_CMC_AMPHS_Pos
);
tmp
|=
(
0
<<
CGC_CMC_EXCLKS_Pos
)
|
(
1
<<
CGC_CMC_OSCSELS_Pos
)
|
(
((
uint8_t
)
amphs
)
<<
CGC_CMC_AMPHS_Pos
);
}
if
(
sub
==
OSC_EXCLK
)
else
if
(
sub
==
OSC_PORT
)
{
tmp
|=
(
0
<<
CGC_CMC_EXCLKS_Pos
)
|
(
0
<<
CGC_CMC_OSCSELS_Pos
);
}
else
if
(
sub
==
OSC_EXCLK
)
{
tmp
|=
(
1
<<
CGC_CMC_EXCLKS_Pos
)
|
(
1
<<
CGC_CMC_OSCSELS_Pos
);
}
...
...
@@ -260,7 +250,7 @@ void CGC_LSEConfig(OSC_Pin_Mode_t sub, OSC_Power_Mode_t amphs)
CGC
->
CMC
=
tmp
;
/* Set fSUB */
CGC
->
CSC
&=
~
(
1
<<
6
)
;
//XTSTOP = 0
CGC
->
CSC
&=
~
(
1
<<
CGC_CSC_XTSTOP_Pos
)
;
//XTSTOP = 0
if
(
sub
==
OSC_OSCILLATOR
)
{
...
...
@@ -275,7 +265,7 @@ void CGC_LSEConfig(OSC_Pin_Mode_t sub, OSC_Power_Mode_t amphs)
/**
* @brief Configures the External High Speed oscillator (HSE).
* @note External High Speed oscillator clock source can be choose from PORT
* @note External High Speed oscillator clock source can be choose from PORT
��
* OSC_OSCILLATOR or external input clock.
* at same time, OSC_OSCILLATOR can be 1MHz < fx < 10MHz or 10MHz < fx < 20MHz
* @param pinMode
...
...
@@ -290,27 +280,25 @@ void CGC_LSEConfig(OSC_Pin_Mode_t sub, OSC_Power_Mode_t amphs)
*/
void
CGC_HSEConfig
(
OSC_Pin_Mode_t
main
,
OSC_Speed_Mode_t
amph
)
{
/* Check the parameters */
assert_param
(
IS_CGC_LSE_MODE
(
main
));
assert_param
(
IS_CGC_HSE_OSC_SPEED
(
amph
));
volatile
uint32_t
w_count
;
uint8_t
temp_stab_set
;
uint8_t
temp_stab_wait
;
uint8_t
tmp
;
/* Check the parameters */
assert_param
(
IS_CGC_OSC_PIN_MODE
(
main
));
assert_param
(
IS_CGC_HSE_OSC_SPEED
(
amph
));
tmp
=
0x00
;
if
(
main
==
OSC_PORT
)
{
tmp
|=
(
0
<<
CGC_CMC_EXCLK_Pos
)
|
(
0
<<
CGC_CMC_OSCSEL_Pos
);
}
if
(
main
==
OSC_OSCILLATOR
)
{
tmp
|=
(
0
<<
CGC_CMC_EXCLK_Pos
)
|
(
1
<<
CGC_CMC_OSCSEL_Pos
)
|
(
amph
<<
CGC_CMC_AMPH_Pos
);
tmp
|=
(
0
<<
CGC_CMC_EXCLK_Pos
)
|
(
1
<<
CGC_CMC_OSCSEL_Pos
)
|
(
((
uint8_t
)
amph
)
<<
CGC_CMC_AMPH_Pos
);
}
if
(
main
==
OSC_EXCLK
)
else
if
(
main
==
OSC_PORT
)
{
tmp
|=
(
0
<<
CGC_CMC_EXCLK_Pos
)
|
(
0
<<
CGC_CMC_OSCSEL_Pos
);
}
else
if
(
main
==
OSC_EXCLK
)
{
tmp
|=
(
1
<<
CGC_CMC_EXCLK_Pos
)
|
(
1
<<
CGC_CMC_OSCSEL_Pos
);
}
...
...
@@ -318,7 +306,7 @@ void CGC_HSEConfig(OSC_Pin_Mode_t main, OSC_Speed_Mode_t amph)
CGC
->
CMC
=
tmp
;
/* Set fMX */
CGC
->
CSC
&=
~
(
1
<<
7
)
;
//MSTOP = 0
CGC
->
CSC
&=
~
(
1
<<
CGC_CSC_MSTOP_Pos
)
;
//MSTOP = 0
if
(
main
==
OSC_OSCILLATOR
)
{
...
...
@@ -333,6 +321,18 @@ void CGC_HSEConfig(OSC_Pin_Mode_t main, OSC_Speed_Mode_t amph)
}
}
/* Clock switching needs to be executed in SRAM */
#if defined (__CC_ARM)
#pragma arm section code = "RW_FUNC_PLL" // Arm Compiler 5
#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION > 6010050)
#pragma clang section text = "RW_FUNC_PLL" // Arm Compiler 6
#endif
#if defined(__ICCARM__)
__ramfunc
#endif
/**
* @brief Enables External Low Speed oscillator (LSE/Fsub) used as CPU
* system clock and Clock source of peripheral hardware circuit.
...
...
@@ -342,9 +342,12 @@ void CGC_HSEConfig(OSC_Pin_Mode_t main, OSC_Speed_Mode_t amph)
void
CGC_LSE_CFG_AS_FCLK
()
{
CGC
->
CKC
=
(
1
<<
CGC_CKC_CSS_Pos
)
|
(
0
<<
CGC_CKC_MCM0_Pos
);
__NOP
();
__NOP
();
__NOP
();
__NOP
();
while
((
CGC
->
CKC
&
CGC_CKC_CLS_Msk
)
==
0
);
USE_LSE_SYSTYEM_CLOCK
=
SYSTYEM_CLOCK_OPEN
;
}
/**
...
...
@@ -356,8 +359,11 @@ void CGC_LSE_CFG_AS_FCLK()
void
CGC_HSE_CFG_AS_FCLK
()
{
CGC
->
CKC
=
(
0
<<
CGC_CKC_CSS_Pos
)
|
(
1
<<
CGC_CKC_MCM0_Pos
);
__NOP
();
__NOP
();
__NOP
();
__NOP
();
while
((
CGC
->
CKC
&
CGC_CKC_MCS_Msk
)
==
0
);
USE_HSE_SYSTYEM_CLOCK
=
SYSTYEM_CLOCK_OPEN
;
}
/**
...
...
@@ -369,12 +375,48 @@ void CGC_HSE_CFG_AS_FCLK()
*/
void
CGC_HSI_CFG_AS_FCLK
()
{
CGC
->
CKC
=
0
<<
CGC_CKC_CSS_Pos
;
if
(
CGC
->
MCKC
&
CGC_MCKC_CKSTR_Msk
)
{
CGC
->
MCKC
&=
~
(
1
<<
CGC_MCKC_CKSELR_Pos
);
__NOP
();
__NOP
();
__NOP
();
__NOP
();
while
(
CGC
->
MCKC
&
CGC_MCKC_CKSTR_Msk
);
}
CGC
->
CKC
=
(
0
<<
CGC_CKC_CSS_Pos
)
|
(
0
<<
CGC_CKC_MCM0_Pos
);
__NOP
();
__NOP
();
__NOP
();
__NOP
();
while
((
CGC
->
CKC
&
(
CGC_CKC_CSS_Msk
|
CGC_CKC_MCS_Msk
)));
}
/**
* @brief Enables output frequency by PLL used as CPU
* system clock and Clock source of peripheral hardware circuit.
* @note
* @retval None
*/
void
CGC_PLL_CFG_AS_FCLK
(
void
)
{
CGC
->
MCKC
|=
(
1
<<
CGC_MCKC_CKSELR_Pos
);
__NOP
();
__NOP
();
__NOP
();
__NOP
();
while
((
CGC
->
MCKC
&
CGC_MCKC_CKSTR_Msk
)
==
0
);
while
((
CGC
->
CKC
&
CGC_CKC_CSS_Msk
)
==
1
);
USE_HSI_SYSTYEM_CLOCK
=
SYSTYEM_CLOCK_OPEN
;
CGC
->
CKC
=
(
0
<<
CGC_CKC_CSS_Pos
)
|
(
0
<<
CGC_CKC_MCM0_Pos
);
__NOP
();
__NOP
();
__NOP
();
__NOP
();
while
(
CGC
->
CKC
&
CGC_CKC_CSS_Msk
);
}
#if 0
/**
* @brief Enables External High Speed oscillator (HSE) used as MAIN system clock
* which can provided for clock output/buzzer or CPU/peripheral hardware circuit.
...
...
@@ -383,7 +425,11 @@ void CGC_HSI_CFG_AS_FCLK()
*/
void CGC_HSE_CFG_AS_FMAIN()
{
CGC
->
CKC
=
1
<<
CGC_CKC_MCM0_Pos
;
CGC->CKC = (1 << CGC_CKC_MCM0_Pos);
__NOP();
__NOP();
__NOP();
__NOP();
while((CGC->CKC & CGC_CKC_MCS_Msk) == 0);
}
/**
...
...
@@ -394,9 +440,20 @@ void CGC_HSE_CFG_AS_FMAIN()
*/
void CGC_HSI_CFG_AS_FMAIN()
{
CGC
->
CKC
=
0
<<
CGC_CKC_MCM0_Pos
;
while
((
CGC
->
CKC
&
CGC_CKC_MCS_Msk
)
==
1
);
CGC->CKC = (0 << CGC_CKC_MCM0_Pos);
__NOP();
__NOP();
__NOP();
__NOP();
while(CGC->CKC & CGC_CKC_MCS_Msk);
}
#endif
#if defined (__CC_ARM)
#pragma arm section code // Arm Compiler 5
#elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION > 6010050)
#pragma clang section text = "" // Arm Compiler 6
#endif
/**
* @brief Setting PLL used as system clock and Clock source of peripheral hardware circuit.
...
...
@@ -451,7 +508,7 @@ void CGC_PLL_Setting(PLL_Src_t src, PLL_Div_t div, PLL_Mul_t mul)
CGC
->
PLLCR
=
tmp
;
CGC
->
PLLCR
|=
1
<<
0
;
/* PLLON = 1 */
CGC
->
PLLCR
|=
(
1
<<
CGC_PLLCR_PLLON_Pos
)
;
/* PLLON = 1 */
for
(
i
=
0U
;
i
<=
2000
;
i
++
)
{
__NOP
();
...
...
@@ -459,19 +516,6 @@ void CGC_PLL_Setting(PLL_Src_t src, PLL_Div_t div, PLL_Mul_t mul)
}
/**
* @brief Enables output frequency by PLL used as CPU
* system clock and Clock source of peripheral hardware circuit.
* @note
* @retval None
*/
__attribute__
((
section
(
"RW_FUNC_PLL"
)))
void
CGC_PLL_CFG_AS_FCLK
(
void
)
{
CGC
->
MCKC
=
0x01
;
while
((
CGC
->
MCKC
&
CGC_MCKC_CKSTR_Msk
)
==
0
);
USE_HSE_SYSTYEM_CLOCK
=
SYSTYEM_CLOCK_OPEN
;
}
/**
* @brief This function stops the main system clock oscilator (MOSC).
* @param None
...
...
@@ -479,7 +523,7 @@ __attribute__((section("RW_FUNC_PLL"))) void CGC_PLL_CFG_AS_FCLK(void)
*/
void
CGC_MainOsc_Stop
(
void
)
{
CGC
->
CSC
|=
1
<<
7
;
/* MSTOP = 1 */
CGC
->
CSC
|=
(
1
<<
CGC_CSC_MSTOP_Pos
)
;
/* MSTOP = 1 */
}
/**
...
...
@@ -489,7 +533,7 @@ void CGC_MainOsc_Stop(void)
*/
void
CGC_MainOsc_Start
(
void
)
{
CGC
->
CSC
&=
~
(
1
<<
7
);
/* MSTOP = 0 */
CGC
->
CSC
&=
~
(
1
<<
CGC_CSC_MSTOP_Pos
);
/* MSTOP = 0 */
}
/**
...
...
@@ -499,7 +543,7 @@ void CGC_MainOsc_Start(void)
*/
void
CGC_SubOsc_Stop
(
void
)
{
CGC
->
CSC
|=
1
<<
6
;
/* XTSTOP = 1 */
CGC
->
CSC
|=
(
1
<<
CGC_CSC_XTSTOP_Pos
)
;
/* XTSTOP = 1 */
}
/**
...
...
@@ -509,7 +553,7 @@ void CGC_SubOsc_Stop(void)
*/
void
CLK_SubOsc_Start
(
void
)
{
CGC
->
CSC
&=
~
(
1
<<
6
);
/* XTSTOP = 0 */
CGC
->
CSC
&=
~
(
1
<<
CGC_CSC_XTSTOP_Pos
);
/* XTSTOP = 0 */
}
/**
...
...
@@ -519,7 +563,7 @@ void CLK_SubOsc_Start(void)
*/
void
CGC_Hoco_Stop
(
void
)
{
CGC
->
CSC
|=
1
<<
0
;
/* HIOSTOP = 1 */
CGC
->
CSC
|=
(
1
<<
CGC_CSC_HIOSTOP_Pos
)
;
/* HIOSTOP = 1 */
}
/**
...
...
@@ -529,5 +573,5 @@ void CGC_Hoco_Stop(void)
*/
void
CGC_Hoco_Start
(
void
)
{
CGC
->
CSC
&=
~
(
1
<<
0
);
/* HIOSTOP = 0 */
CGC
->
CSC
&=
~
(
1
<<
CGC_CSC_HIOSTOP_Pos
);
/* HIOSTOP = 0 */
}
Firmware/Source/System/Sys_Task_List.c
View file @
b4668b50
...
...
@@ -53,6 +53,7 @@ void Sys_20ms_Tasks(void)
void
Sys_50ms_Tasks
(
void
)
{
// BlueToothService();
UpdateGraphics
();
Telltales_Management
();
g_u8Cursor_Posittion
=
Menu_Get_Current_Cursor_Information
();
...
...
@@ -82,7 +83,7 @@ void Sys_100ms_Tasks(void)
Coolant_Cal_Sevice
(
100u
);
Services_Mileage_Callback
();
// Data_Mileage_Clear();
OTAUpdateService
();
RTE_GPIO_Config
(
RTE_GPIO_PORT05_PIN04
,
GpioOut_High
);
//BackLight_Process();
//TimerM_PWM_set_duty(TIMERM_COUNTER1, TIMERM_CHB, 100);
...
...
Firmware/utility/诊断工具/Option/Option.properties
View file @
b4668b50
#new Option
#Sun Aug 18 1
1:51:19
CST 2024
#Sun Aug 18 1
5:35:55
CST 2024
IsSort
=
true
MergeFlashIsCompression
=
false
ChangeAppFilePath
=
MergeCanXLSPath
=
RH850_D1M1AGPIOJSONpath
=
DBFFilePath
=
MergeCrcTtpe
=
2
1
MergeCrcTtpe
=
2
9
MergeBootFilePath
=
D
\:\\
git
\\
haojin750tft
\\
Firmware
\\
utility
\\
Boot_Release
\\
HaoJin_750TFT_HJYB-7500TFT_BV1.03_20240816.hex
IsMergeChangeAddress
=
false
MergeFlashOutPutFilePath
=
...
...
@@ -47,7 +47,7 @@ IsMergeCreateHex=false
MergeFlashIsCreateREC
=
false
TTFExtractTTFpath
=
MergeImageFilePath
=
IsMergeCreateUpdateBin
=
tru
e
IsMergeCreateUpdateBin
=
fals
e
MergeImageSize
=
128M
CRCFilePath
=
MergeFlashCompressionFormat
=
...
...
@@ -56,7 +56,7 @@ IsHexDisplay=true
MergeLineInXLSPath
=
MergeFlashInPutFilePath
=
MergeFlashIsInternal
=
false
MergeOutPutFilePath
=
D
\:\\\u9879\u
76EE
\\\u
8C6A
\u
8FDB
\\
haojin750TFT
\\
srec
MergeOutPutFilePath
=
D
\:\\\u9879\u
76EE
\\\u
8C6A
\u
8FDB
\\
haojin750TFT
\\
srec
-8.18
MergeAppFilePath
=
D
\:\\
git
\\
haojin750tft
\\
Firmware
\\
Project
\\
Cmsemicon
\\
BAT32A279
\\
MDK_ARM
\\
Objects
\\
HaoJin750TFT.hex
MergeTelltalesXLSPath
=
FillingByte
=
-86
...
...
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