Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
J
jiancetai
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
陈家乐
jiancetai
Commits
f3e5466d
Commit
f3e5466d
authored
Mar 05, 2026
by
何锐
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
✨
feat:修改版本号校验
parent
e4cbe3d2
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
120 additions
and
46 deletions
+120
-46
Barcode_Scanner.c
YueJin_test_bench/source/Appliciation/Barcode_Scanner.c
+0
-1
Check_Ctrl.c
YueJin_test_bench/source/Appliciation/Check_Ctrl.c
+22
-16
Display_Info.c
YueJin_test_bench/source/Appliciation/Display_Info.c
+92
-23
Display_Info.h
YueJin_test_bench/source/Appliciation/Display_Info.h
+1
-1
Key_user.c
YueJin_test_bench/source/Appliciation/Key_user.c
+1
-1
init.c
YueJin_test_bench/source/System/init.c
+4
-4
No files found.
YueJin_test_bench/source/Appliciation/Barcode_Scanner.c
View file @
f3e5466d
...
@@ -38,7 +38,6 @@ static uint32_t Protocol_UartRead1(uint8_t *pData, uint32_t len);//扫码枪
...
@@ -38,7 +38,6 @@ static uint32_t Protocol_UartRead1(uint8_t *pData, uint32_t len);//扫码枪
static
uint32_t
Protocol_UartRead2
(
uint8_t
*
pData
,
uint32_t
len
);
//esp32
static
uint32_t
Protocol_UartRead2
(
uint8_t
*
pData
,
uint32_t
len
);
//esp32
uint8_t
nowdata
[
4
];
uint8_t
nowdata
[
4
];
uint8_t
lastdata
[
4
];
uint8_t
lastdata
[
4
];
uint8_t
checkresult
;
uint8_t
sendmsg
[
8
];
uint8_t
sendmsg
[
8
];
uint8_t
timenum
=
0
;
uint8_t
timenum
=
0
;
uint8_t
firstflag
=
0
;
uint8_t
firstflag
=
0
;
...
...
YueJin_test_bench/source/Appliciation/Check_Ctrl.c
View file @
f3e5466d
...
@@ -73,24 +73,30 @@ void Function_Check_Ctrl(uint32_t cmd);
...
@@ -73,24 +73,30 @@ void Function_Check_Ctrl(uint32_t cmd);
void
MENU_CHECK_STEP_ADD
(
void
)
void
MENU_CHECK_STEP_ADD
(
void
)
{
{
if
(
jiaoyan
==
1
)
if
(
CheckResult
!=
1
)
//版本号校验,取消校验屏掉此条
{
{
if
(
guangganflag
==
3
)
//光感锁
return
;
{
}
MENU_CHECK_STEP
++
;
if
((
CurrentWrong
==
1
)
&&
(
MENU_CHECK_STEP
==
2
))
if
(
guangganflag
!=
3
)
//光感锁校验,取消校验屏掉此条
{
{
MENU_CHECK_STEP
=
1
;
return
;
}
}
}
if
((
CurrentWrong
==
1
)
&&
(
MENU_CHECK_STEP
==
2
))
//静态电流校验,取消校验屏掉此条
if
(
MENU_CHECK_STEP
>
9
)
//循环
{
{
return
;
MENU_CHECK_STEP
=
0
;
}
guangganflag
=
0
;
}
if
(
MENU_CHECK_STEP
<=
9
)
{
MENU_CHECK_STEP
++
;
}
else
//循环
{
MENU_CHECK_STEP
=
0
;
guangganflag
=
0
;
}
}
}
}
void
MENU_CHECK_STEP_SUB
(
void
)
void
MENU_CHECK_STEP_SUB
(
void
)
{
{
...
...
YueJin_test_bench/source/Appliciation/Display_Info.c
View file @
f3e5466d
...
@@ -12,7 +12,26 @@
...
@@ -12,7 +12,26 @@
#include "Analog_Signals.h"
#include "Analog_Signals.h"
#include "FreIn_User.h"
#include "FreIn_User.h"
#include "Key.h"
#include "Key.h"
// clang-format off
#include <stdio.h>
#define PN_Length 15 //零件号长度
typedef struct {
const char *part;
const char *ver1;
const char *ver2;
const char *ver3;
} PartVersion;
static const PartVersion g_versionTable[] = {
//零件号 MCU版本号(普冉) SOC版本号(7926) 蓝牙芯片版本号(7106)
{"37100-A197-0400", "1.43", "1.43", "1.43"},
{"37100-A265-0200", "1.22", "1.22", "1.43"},
{"37100-G389-0200", "1.22", "1.22", "1.43"},
{NULL, NULL, NULL, NULL} // 结束标志
};
uint8_t checkresult = 0; //校验结果
uint8_t CurrentPN = 0xFF; //当前零件号
uint32_t Display_Menu_Type;
uint32_t Display_Menu_Type;
uint32_t Page_Refresh = 1;
uint32_t Page_Refresh = 1;
uint32_t PageNum_history = 0xff;
uint32_t PageNum_history = 0xff;
...
@@ -4734,6 +4753,62 @@ void Check_PWM(void)
...
@@ -4734,6 +4753,62 @@ void Check_PWM(void)
uint32_t test = Duty_VEHICLE / 10;
uint32_t test = Duty_VEHICLE / 10;
GUI_General_Digit_Display(test, Num_15, 3, 1, testNum, 160);
GUI_General_Digit_Display(test, Num_15, 3, 1, testNum, 160);
}
}
//将接收到的零件号转化为字符串格式
void bytesToString(const uint8_t *bytes, int len, char *out) {
for (int i = 0; i < len; i++) {
out[i] = (char)bytes[i];
}
out[len] = '\0';
}
//将接收到的版本号转换为字符串格式
void makeVersionString(int major, int minor, char *out) {
sprintf(out, "%d.%02d", major, minor); // 次版本固定两位,不足补零
}
//遍历表格寻找零件号,对比校验
int checkVersion(const char *partStr,
const char *curVerStr_mcu,
const char *curVerStr_soc,
const char *curVerStr_bt) {
for (int i = 0; g_versionTable[i].part != NULL; i++) {
if (strcmp(g_versionTable[i].part, partStr) == 0) {
CurrentPN = i;
if ((strcmp(curVerStr_mcu, g_versionTable[i].ver1) +
strcmp(curVerStr_soc, g_versionTable[i].ver2) +
strcmp(curVerStr_bt, g_versionTable[i].ver3)) == 0) {
return 1; // 匹配
} else {
return 2; // 不匹配
}
}
}
return 3; // 零件号不存在
}
uint8_t onReceive(const uint8_t *pnBytes,
int pnLen,
int major_mcu,
int minor_mcu,
int major_soc,
int minor_soc,
int major_bt,
int minor_bt)
{
char partStr[32];
char curVerStr_mcu[16];
char curVerStr_soc[16];
char curVerStr_bt[16];
bytesToString(pnBytes, pnLen, partStr);
makeVersionString(major_mcu, minor_mcu, curVerStr_mcu);
makeVersionString(major_soc, minor_soc, curVerStr_soc);
makeVersionString(major_bt, minor_bt, curVerStr_bt);
uint8_t result = checkVersion(partStr, curVerStr_mcu, curVerStr_soc, curVerStr_bt);
}
uint32_t leftvoltage;
uint32_t leftvoltage;
uint32_t rightvoltage;
uint32_t rightvoltage;
uint8_t firstclearflag = 0;
uint8_t firstclearflag = 0;
...
@@ -4749,7 +4824,7 @@ uint8_t TCSflaglast;
...
@@ -4749,7 +4824,7 @@ uint8_t TCSflaglast;
uint8_t SlopeDescentflaglast;
uint8_t SlopeDescentflaglast;
uint8_t RampParkflaglast;
uint8_t RampParkflaglast;
uint8_t Autoheadlightflaglast;
uint8_t Autoheadlightflaglast;
uint8_t
jiaoyan
= 0;
uint8_t
CheckResult
= 0;
uint8_t up_key_press_number;
uint8_t up_key_press_number;
void Display_Version_Info(uint32_t ON_OFF)
void Display_Version_Info(uint32_t ON_OFF)
{
{
...
@@ -4904,6 +4979,15 @@ void Display_Version_Info(uint32_t ON_OFF)
...
@@ -4904,6 +4979,15 @@ void Display_Version_Info(uint32_t ON_OFF)
wuliao[14] = R485_IDB4h.Sig.MaterialCode15;
wuliao[14] = R485_IDB4h.Sig.MaterialCode15;
wuliao[15] = 0xFF;
wuliao[15] = 0xFF;
CheckResult = onReceive(wuliao,
PN_Length,
R485_IDB4h.Sig.PY32F072_APP_PV,
R485_IDB4h.Sig.PY32F072_APP_SV,
R485_IDB4h.Sig.JL7926_APP_PV,
R485_IDB4h.Sig.JL7926_APP_SV,
R485_IDB4h.Sig.JL7106_APP_PV,
R485_IDB4h.Sig.JL7106_APP_SV);
if(wuliao[12] == 0x32) //4.3寸
if(wuliao[12] == 0x32) //4.3寸
{
{
nowpuran = 18;
nowpuran = 18;
...
@@ -4998,30 +5082,15 @@ void Display_Version_Info(uint32_t ON_OFF)
...
@@ -4998,30 +5082,15 @@ void Display_Version_Info(uint32_t ON_OFF)
TFT_LCD_Draw_Bmp(3, 90+25+25+30+30+30+5, ( uint8_t * )gImage_gImage_LEDwaif1X6_Y16 ); //硬线指示灯外发对比
TFT_LCD_Draw_Bmp(3, 90+25+25+30+30+30+5, ( uint8_t * )gImage_gImage_LEDwaif1X6_Y16 ); //硬线指示灯外发对比
TFT_LCD_Draw_Bmp(3, 90+25+25+30+25+30+30+5, ( uint8_t * )gImage_gImage_SV1X6_Y16 ); //软件版本号对比
TFT_LCD_Draw_Bmp(3, 90+25+25+30+25+30+30+5, ( uint8_t * )gImage_gImage_SV1X6_Y16 ); //软件版本号对比
if(
(puranhoumian + houmian7926 + houmian7106) != 0
)
if(
CheckResult == 1
)
{
{
jiaoyan = 2;
TFT_LCD_Draw_Bmp(200, 90+25+25+30+25+30+30, ( uint8_t * )gImage_dui ); //软件版本号对比 对
if((puranhoumian == nowpuran) && (houmian7926 == now7926) && (houmian7106 == now7106) && \
}
((R485_IDB4h.Sig.PY32F072_APP_PV == 1) && (R485_IDB4h.Sig.JL7926_APP_PV == 1) && (R485_IDB4h.Sig.JL7106_APP_PV == 1)))
else
{
{
TFT_LCD_Draw_Bmp(200, 90+25+25+30+25+30+30, ( uint8_t * )gImage_dui ); //软件版本号对比 对
TFT_LCD_Draw_Bmp(200, 90+25+25+30+25+30+30, ( uint8_t * )gImage_cuo ); //软件版本号对比 错
jiaoyan = 1;
}
else
{
TFT_LCD_Draw_Bmp(200, 90+25+25+30+25+30+30, ( uint8_t * )gImage_cuo ); //软件版本号对比 错
//正在调试取消版本号对比 想要取消版本号对比将上方注释掉并解开下方注释即可
// TFT_LCD_Draw_Bmp(200, 90+25+25+30+25+30+30, ( uint8_t * )gImage_dui ); //软件版本号对比 对
// firstpowerflag = 2;
}
}
}
// TFT_LCD_Draw_Bmp(200, 90+25+25+30+25+25, ( uint8_t * )gImage_cuo ); //软件版本号对比 错
// TFT_LCD_Draw_Bmp(200, 90+25+25+30+25+25, ( uint8_t * )gImage_cuo ); //软件版本号对比 错
// TFT_LCD_Draw_Bmp(3, 90+25+25+25+25+25, ( uint8_t * )gImage_gImage_SV1X6_Y16 ); //支持扫码功能个
// TFT_LCD_Draw_Bmp(3, 90+25+25+25+25+25, ( uint8_t * )gImage_gImage_SV1X6_Y16 ); //支持扫码功能个
...
...
YueJin_test_bench/source/Appliciation/Display_Info.h
View file @
f3e5466d
...
@@ -102,7 +102,7 @@ extern void Get_static_Current(void);
...
@@ -102,7 +102,7 @@ extern void Get_static_Current(void);
extern
uint32_t
Get_Display_Type
(
void
);
extern
uint32_t
Get_Display_Type
(
void
);
extern
uint8_t
guangganflag
;
extern
uint8_t
guangganflag
;
extern
uint8_t
CurrentWrong
;
extern
uint8_t
CurrentWrong
;
extern
uint8_t
jiaoyan
;
extern
uint8_t
CheckResult
;
extern
const
uint8_t
*
Num_15
[];
extern
const
uint8_t
*
Num_15
[];
#define PCodeText_Space_size 2//故障文字 英文空格的像素数
#define PCodeText_Space_size 2//故障文字 英文空格的像素数
#endif
#endif
YueJin_test_bench/source/Appliciation/Key_user.c
View file @
f3e5466d
...
@@ -407,7 +407,7 @@ void EnterVersionNumber(void)
...
@@ -407,7 +407,7 @@ void EnterVersionNumber(void)
if
(
enterdelaytime
<=
600
)
//等待开机动画
if
(
enterdelaytime
<=
600
)
//等待开机动画
{
{
if
(
(
jiaoyan
==
1
)
||
(
jiaoyan
==
2
)
)
if
(
CheckResult
!=
0
)
{
{
if
(
entermenutime
<=
200
)
if
(
entermenutime
<=
200
)
{
{
...
...
YueJin_test_bench/source/System/init.c
View file @
f3e5466d
...
@@ -127,12 +127,12 @@ void Sys_Startup_Init(void)
...
@@ -127,12 +127,12 @@ void Sys_Startup_Init(void)
EN_5V_CUT_ENABLE
=
1
;
EN_5V_CUT_ENABLE
=
1
;
Display_TFT_Clear
();
//
Display_TFT_Clear();
GUI_Display_Version_Code_Service
(
25
,
20
,
"Please Scan The Code "
,
Letter_Num_11
,
PCodeText_Space_size
);
//
GUI_Display_Version_Code_Service(25, 20, "Please Scan The Code ", Letter_Num_11, PCodeText_Space_size);
/*上电扫码校验功能如果需要扫码校验注释掉firstpowerflag = 2,saomafinish = 3;打开上面两行的注释即可*/
/*上电扫码校验功能如果需要扫码校验注释掉firstpowerflag = 2,saomafinish = 3;打开上面两行的注释即可*/
//
firstpowerflag = 2;
firstpowerflag
=
2
;
//
saomafinish = 4;
saomafinish
=
4
;
}
}
/***********************************************************************
/***********************************************************************
...
...
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