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
f3863877
Commit
f3863877
authored
Dec 06, 2025
by
何锐
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
✨
feat:上电左转闪烁,显示当前ACC电压
parent
6b0cc17f
Changes
9
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
176 additions
and
502 deletions
+176
-502
Check_Ctrl.c
YueJin_test_bench/source/Appliciation/Check_Ctrl.c
+6
-154
Display_Info.c
YueJin_test_bench/source/Appliciation/Display_Info.c
+56
-118
R485_Communication_Matrix.c
...est_bench/source/Appliciation/R485_Communication_Matrix.c
+24
-13
R485_Communication_Matrix.h
...est_bench/source/Appliciation/R485_Communication_Matrix.h
+41
-33
RTE_GPIO.h
YueJin_test_bench/source/Appliciation/RTE_GPIO.h
+3
-3
api_RS485.c
YueJin_test_bench/source/Appliciation/api_RS485.c
+38
-178
Analog_Signals.c
..._test_bench/source/Driver/Analog_Signals/Analog_Signals.c
+3
-1
Analog_Signals.h
..._test_bench/source/Driver/Analog_Signals/Analog_Signals.h
+3
-2
init.c
YueJin_test_bench/source/System/init.c
+2
-0
No files found.
YueJin_test_bench/source/Appliciation/Check_Ctrl.c
View file @
f3863877
...
@@ -590,162 +590,14 @@ void Function_Check_Ctrl(uint32_t cmd)
...
@@ -590,162 +590,14 @@ void Function_Check_Ctrl(uint32_t cmd)
Display_Send_Vspead
(
MENU_CHECK_STEP
);
Display_Send_Vspead
(
MENU_CHECK_STEP
);
switch
(
MENU_CHECK_STEP
)
switch
(
MENU_CHECK_STEP
)
{
{
case
0
:
case
0
:
{
break
;
if
(
CHECK_Ctrl_delay
<=
10
)
{
RELAY_VBAT_MCU
=
0
;
RELAY_DC12V_MCU
=
0
;
RELAY_KEY_MCU
=
0
;
}
else
{
RELAY_VBAT_MCU
=
1
;
RELAY_DC12V_MCU
=
1
;
RELAY_KEY_MCU
=
1
;
// Aima_SLF(1u, 0x04, 0x1, 1u);
// left_turn = 1;
}
break
;
}
case
1
:
case
1
:
{
break
;
left_turn
=
0
;
if
(
CHECK_Ctrl_delay
<=
10
)
{
RELAY_VBAT_MCU
=
0
;
RELAY_DC12V_MCU
=
0
;
RELAY_KEY_MCU
=
0
;
}
else
if
(
CHECK_Ctrl_delay
>
10
&&
CHECK_Ctrl_delay
<=
60
)
{
RELAY_VBAT_MCU
=
1
;
RELAY_DC12V_MCU
=
1
;
RELAY_KEY_MCU
=
1
;
}
else
if
(
CHECK_Ctrl_delay
>
60
&&
CHECK_Ctrl_delay
<=
65
)
{
Aima_SLF
(
1u
,
0x03
,
0x1
,
1u
);
}
else
{
}
case
2
:
// ONE_START = 1;
break
;
break
;
}
case
2
:
{
if
(
CHECK_Ctrl_delay
<=
10
)
{
RELAY_VBAT_MCU
=
0
;
RELAY_DC12V_MCU
=
0
;
RELAY_KEY_MCU
=
0
;
}
else
{
RELAY_VBAT_MCU
=
1
;
RELAY_DC12V_MCU
=
1
;
RELAY_KEY_MCU
=
0
;
}
left_turn
=
0
;
break
;
}
case
3
:
{
RELAY_DC12V_MCU
=
1
;
RELAY_VBAT_MCU
=
1
;
if
(
ONE_KEY_ONOFF
<=
20
)
{
RELAY_KEY_MCU
=
1
;
ONE_START
=
1
;
}
else
if
(
ONE_KEY_ONOFF
<=
40
)
{
RELAY_KEY_MCU
=
0
;
ONE_START
=
0
;
}
else
if
(
ONE_KEY_ONOFF
<=
60
)
{
RELAY_KEY_MCU
=
0
;
ONE_START
=
1
;
}
else
if
(
ONE_KEY_ONOFF
<=
70
)
{
RELAY_KEY_MCU
=
0
;
ONE_START
=
0
;
}
else
if
(
ONE_KEY_ONOFF
>
110
&&
ONE_KEY_ONOFF
<=
120
)
{
ONE_START
=
1
;
ABC_OUT
=
1
;
}
else
{
ABC_OUT
=
0
;
}
break
;
}
case
4
:
{
RELAY_VBAT_MCU
=
1
;
RELAY_DC12V_MCU
=
1
;
RELAY_KEY_MCU
=
1
;
ONE_START
=
1
;
FULL_BEAM
=
0
;
break
;
}
case
5
:
{
RELAY_VBAT_MCU
=
1
;
RELAY_DC12V_MCU
=
1
;
RELAY_KEY_MCU
=
1
;
FULL_BEAM
=
1
;
ZXSW_12V
=
0
;
left_turn
=
0
;
break
;
}
case
6
:
{
RELAY_VBAT_MCU
=
1
;
RELAY_DC12V_MCU
=
1
;
RELAY_KEY_MCU
=
1
;
ZXSW_12V
=
1
;
FULL_BEAM
=
0
;
left_turn
=
1
;
right_turn
=
0
;
break
;
}
case
7
:
{
RELAY_VBAT_MCU
=
1
;
RELAY_DC12V_MCU
=
1
;
RELAY_KEY_MCU
=
1
;
ZXSW_12V
=
1
;
left_turn
=
0
;
right_turn
=
1
;
RELAY_LIGHTCONTROL_MCU
=
0
;
break
;
}
case
8
:
{
RELAY_VBAT_MCU
=
1
;
RELAY_DC12V_MCU
=
1
;
RELAY_KEY_MCU
=
1
;
ZXSW_12V
=
0
;
right_turn
=
0
;
RELAY_LIGHTCONTROL_MCU
=
1
;
ABC_OUT
=
0
;
break
;
}
default:
break
;
}
}
}
}
}
}
...
...
YueJin_test_bench/source/Appliciation/Display_Info.c
View file @
f3863877
...
@@ -4421,6 +4421,7 @@ void Display_Send_Vspead(uint8_t menu)
...
@@ -4421,6 +4421,7 @@ void Display_Send_Vspead(uint8_t menu)
uint16_t
ZXSW_Voltage
=
0
;
uint16_t
ZXSW_Voltage
=
0
;
uint16_t
Voltage_left
=
0
;
uint16_t
Voltage_left
=
0
;
uint16_t
Voltage_right
=
0
;
uint16_t
Voltage_right
=
0
;
uint16_t
Voltage_ACC
=
0
;
// static uint8_t Type_Clear_FLAG = 0;
// static uint8_t Type_Clear_FLAG = 0;
if
(
(
Type_Clear
!=
menu
))
if
(
(
Type_Clear
!=
menu
))
{
{
...
@@ -4433,111 +4434,47 @@ void Display_Send_Vspead(uint8_t menu)
...
@@ -4433,111 +4434,47 @@ void Display_Send_Vspead(uint8_t menu)
switch
(
menu
)
switch
(
menu
)
{
{
case
0
:
case
0
:
{
Voltage_ACC
=
ADC_Read_Signal
(
ADC_CH_ACC1_VOLTAGE
);
if
(
CHECK_Ctrl_delay
>
20
)
Voltage_left
=
Voltage_ACC
/
1000
;
{
Voltage_right
=
(
Voltage_ACC
/
10
)
%
10
;
CHECK_Value
=
1
;
uint8_t
mLRbuff
[
3
]
=
{
0x2E
,
Voltage_right
,
0xff
};
}
General_Number_Disp
(
mLRbuff
,
175
,
160
);
}
GUI_General_Digit_Display
(
Voltage_left
,
Num_15
,
2
,
1
,
ODODigitNum09PosX
,
160
);
TFT_LCD_Draw_Bmp
(
210
,
160
,
(
uint8_t
*
)
gImage_Dyy_words_19X224_Y166
);
//单位:V
break
;
break
;
case
1
:
case
1
:
{
if
(
CHECK_Ctrl_delay
>=
75
)
{
CHECK_Value
=
1
;
}
break
;
}
case
2
:
if
(
CHECK_Ctrl_delay
>=
20
)
{
if
(
DIS_AD
==
0
)
{
TFT_LCD_Draw_Bmp
(
51
,
261
,(
uint8_t
*
)
gImage_Alarm_09_Word0X51_Y261
);
DIS_VALUE
=
1
;
}
else
{
if
(
DIS_VALUE
==
1
)
{
if
(
DIS_AD
==
1
)
{
DIS_VALUE
=
0
;
CHECK_Value
=
1
;
}
else
{
CHECK_Value
=
0
;
}
}
// TFT_LCD_Draw_Box(0, 261, 239, 319, TFT_LCD_FILL_FULL, TFT_LCD_TYPE_CLR);
}
}
break
;
break
;
case
3
:
// if(CHECK_Ctrl_delay >= 100)
case
2
:
// {
// CHECK_Value = 1;
// }
// else
// {
// CHECK_Value = 0;
// }
if
(
DIS_AD
==
0
)
{
DIS_VALUE
=
1
;
TFT_LCD_Draw_Bmp
(
51
,
261
,(
uint8_t
*
)
gImage_Alarm_10_Word0X51_Y261
);
}
else
{
if
(
DIS_VALUE
==
1
)
{
if
(
DIS_AD
==
1
)
{
DIS_VALUE
=
0
;
CHECK_Value
=
1
;
}
else
{
CHECK_Value
=
0
;
}
}
// TFT_LCD_Draw_Box(0, 261, 239, 319, TFT_LCD_FILL_FULL, TFT_LCD_TYPE_CLR);
}
break
;
break
;
case
4
:
if
(
CHECK_Ctrl_delay
>=
30
)
case
3
:
{
CHECK_Value
=
1
;
}
break
;
break
;
case
5
:
if
(
CHECK_Ctrl_delay
>=
30
)
case
4
:
{
CHECK_Value
=
1
;
}
break
;
break
;
case
6
:
ZXSW_Voltage
=
ADC_Read_Signal
(
ADC_CH_ZXSW_VOLTAGE
);
case
6
:
Voltage_left
=
ZXSW_Voltage
/
1000
;
ZXSW_Voltage
=
ADC_Read_Signal
(
ADC_CH_ZXSW_VOLTAGE
);
Voltage_right
=
(
ZXSW_Voltage
/
10
)
%
10
;
Voltage_left
=
ZXSW_Voltage
/
1000
;
uint8_t
mLRbuff
[
3
]
=
{
0x2E
,
Voltage_right
,
0xff
};
Voltage_right
=
(
ZXSW_Voltage
/
10
)
%
10
;
General_Number_Disp
(
mLRbuff
,
175
,
160
);
// uint8_t mLRbuff [3] = {0x2E,Voltage_right,0xff};
GUI_General_Digit_Display
(
Voltage_left
,
Num_15
,
2
,
1
,
ODODigitNum09PosX
,
160
);
General_Number_Disp
(
mLRbuff
,
175
,
160
);
TFT_LCD_Draw_Bmp
(
210
,
160
,
(
uint8_t
*
)
gImage_Dyy_words_19X224_Y166
);
//单位:V
GUI_General_Digit_Display
(
Voltage_left
,
Num_15
,
2
,
1
,
ODODigitNum09PosX
,
160
);
if
(
ZXSW_Voltage
>=
10000
)
TFT_LCD_Draw_Bmp
(
210
,
160
,
(
uint8_t
*
)
gImage_Dyy_words_19X224_Y166
);
//单位:V
{
if
(
ZXSW_Voltage
>=
10000
)
CHECK_Value
=
1
;
{
TFT_LCD_Draw_Bmp
(
51
,
261
,(
uint8_t
*
)
gImage_Alarm_11_Word0X51_Y261
);
CHECK_Value
=
1
;
}
TFT_LCD_Draw_Bmp
(
51
,
261
,(
uint8_t
*
)
gImage_Alarm_11_Word0X51_Y261
);
else
}
{
else
TFT_LCD_Draw_Box
(
0
,
261
,
239
,
319
,
TFT_LCD_FILL_FULL
,
TFT_LCD_TYPE_CLR
);
{
}
TFT_LCD_Draw_Box
(
0
,
261
,
239
,
319
,
TFT_LCD_FILL_FULL
,
TFT_LCD_TYPE_CLR
);
}
break
;
break
;
case
7
:
case
7
:
ZXSW_Voltage
=
ADC_Read_Signal
(
ADC_CH_ZXSW_VOLTAGE
);
ZXSW_Voltage
=
ADC_Read_Signal
(
ADC_CH_ZXSW_VOLTAGE
);
Voltage_left
=
ZXSW_Voltage
/
1000
;
Voltage_left
=
ZXSW_Voltage
/
1000
;
Voltage_right
=
(
ZXSW_Voltage
/
10
)
%
10
;
Voltage_right
=
(
ZXSW_Voltage
/
10
)
%
10
;
...
@@ -4555,28 +4492,29 @@ void Display_Send_Vspead(uint8_t menu)
...
@@ -4555,28 +4492,29 @@ void Display_Send_Vspead(uint8_t menu)
TFT_LCD_Draw_Box
(
0
,
261
,
239
,
319
,
TFT_LCD_FILL_FULL
,
TFT_LCD_TYPE_CLR
);
TFT_LCD_Draw_Box
(
0
,
261
,
239
,
319
,
TFT_LCD_FILL_FULL
,
TFT_LCD_TYPE_CLR
);
}
}
break
;
break
;
case
8
:
GKDD_Voltage
=
ADC_Read_Signal
(
ADC_CH_GKDD_VOLTAGE
);
Voltage_left
=
GKDD_Voltage
/
1000
;
Voltage_right
=
(
GKDD_Voltage
/
10
)
%
10
;
uint8_t
mLRbuff2
[]
=
{
0x2E
,
Voltage_right
,
0xff
};
General_Number_Disp
(
mLRbuff2
,
175
,
160
);
GUI_General_Digit_Display
(
Voltage_left
,
Num_15
,
2
,
1
,
ODODigitNum09PosX
,
160
);
TFT_LCD_Draw_Bmp
(
210
,
160
,
(
uint8_t
*
)
gImage_Dyy_words_19X224_Y166
);
//单位:V
if
(
GKDD_Voltage
>=
10000
)
{
CHECK_Value
=
1
;
TFT_LCD_Draw_Bmp
(
51
,
261
,(
uint8_t
*
)
gImage_Alarm_06_Word0X51_Y261
);
}
else
{
TFT_LCD_Draw_Box
(
0
,
261
,
239
,
319
,
TFT_LCD_FILL_FULL
,
TFT_LCD_TYPE_CLR
);
}
case
8
:
GKDD_Voltage
=
ADC_Read_Signal
(
ADC_CH_GKDD_VOLTAGE
);
Voltage_left
=
GKDD_Voltage
/
1000
;
Voltage_right
=
(
GKDD_Voltage
/
10
)
%
10
;
uint8_t
mLRbuff2
[]
=
{
0x2E
,
Voltage_right
,
0xff
};
General_Number_Disp
(
mLRbuff2
,
175
,
160
);
GUI_General_Digit_Display
(
Voltage_left
,
Num_15
,
2
,
1
,
ODODigitNum09PosX
,
160
);
TFT_LCD_Draw_Bmp
(
210
,
160
,
(
uint8_t
*
)
gImage_Dyy_words_19X224_Y166
);
//单位:V
if
(
GKDD_Voltage
>=
10000
)
{
CHECK_Value
=
1
;
TFT_LCD_Draw_Bmp
(
51
,
261
,(
uint8_t
*
)
gImage_Alarm_06_Word0X51_Y261
);
}
else
{
TFT_LCD_Draw_Box
(
0
,
261
,
239
,
319
,
TFT_LCD_FILL_FULL
,
TFT_LCD_TYPE_CLR
);
}
break
;
default:
MENU_CHECK_STEP
=
0
;
break
;
break
;
default:
MENU_CHECK_STEP
=
0
;
break
;
}
}
}
}
...
...
YueJin_test_bench/source/Appliciation/R485_Communication_Matrix.c
View file @
f3863877
...
@@ -1094,7 +1094,6 @@ uint32_t R485_SendMACaddress_0x42(void)
...
@@ -1094,7 +1094,6 @@ uint32_t R485_SendMACaddress_0x42(void)
R485_ID42h
.
Sig
.
BLE_MAC02
=
0
;
R485_ID42h
.
Sig
.
BLE_MAC02
=
0
;
u32sendendflag
=
R485_Send
(
0x42
,
R485_ID42h
.
Msg
,
sizeof
(
R485_ID42h
.
Msg
));
u32sendendflag
=
R485_Send
(
0x42
,
R485_ID42h
.
Msg
,
sizeof
(
R485_ID42h
.
Msg
));
RS485_send_time
=
0
;
RS485_send_time
=
0
;
}
}
RS485_TX_finish
=
1
;
RS485_TX_finish
=
1
;
return
u32sendendflag
;
return
u32sendendflag
;
...
@@ -1103,28 +1102,40 @@ uint32_t R485_SendMACaddress_0x42(void)
...
@@ -1103,28 +1102,40 @@ uint32_t R485_SendMACaddress_0x42(void)
uint32_t
R485_Send_test
(
void
)
uint32_t
R485_Send_test
(
void
)
{
{
uint32_t
u32sendendflag
=
0
;
uint32_t
u32sendendflag
=
0
;
memset
(
R485_ID42h
.
Msg
,
0x00
,
20
);
switch
(
MENU_CHECK_STEP
)
switch
(
MENU_CHECK_STEP
)
{
{
case
0
:
case
0
:
BCMLED
.
Sig
.
Lamp
=
0x01
;
//左转
BCMLED
.
Sig
.
FlickerFrequency
=
0x05
;
//频率
u32sendendflag
=
R485_Send
(
0x09
,
BCMLED
.
Msg
,
sizeof
(
BCMLED
.
Msg
));
// Dashboard.Sig.textbit2 = 0x0A; //车速
// Dashboard.Sig.textbit7 = 0x7F; //P档
// u32sendendflag = R485_Send(0x04, Dashboard.Msg, sizeof(Dashboard.Msg));
break
;
break
;
case
1
:
case
1
:
break
;
break
;
case
2
:
case
2
:
break
;
break
;
case
3
:
case
3
:
AIMAtest
.
Sig
.
PGear
=
0
;
// AIMAtest.Sig.PGear = 0;
u32sendendflag
=
R485_Send
(
0x05
,
AIMAtest
.
Msg
,
sizeof
(
AIMAtest
.
Msg
));
// u32sendendflag = R485_Send(0x05, AIMAtest.Msg, sizeof(AIMAtest.Msg));
break
;
break
;
case
4
:
case
4
:
AIMAtest
.
Sig
.
PGear
=
1
;
// AIMAtest.Sig.PGear = 1;
u32sendendflag
=
R485_Send
(
0x05
,
AIMAtest
.
Msg
,
sizeof
(
AIMAtest
.
Msg
));
// u32sendendflag = R485_Send(0x05, AIMAtest.Msg, sizeof(AIMAtest.Msg));
break
;
break
;
case
5
:
case
5
:
AIMAtest
.
Sig
.
PGear
=
0
;
// AIMAtest.Sig.PGear = 0;
u32sendendflag
=
R485_Send
(
0x05
,
AIMAtest
.
Msg
,
sizeof
(
AIMAtest
.
Msg
));
// u32sendendflag = R485_Send(0x05, AIMAtest.Msg, sizeof(AIMAtest.Msg));
break
;
break
;
case
6
:
case
6
:
break
;
break
;
...
...
YueJin_test_bench/source/Appliciation/R485_Communication_Matrix.h
View file @
f3863877
...
@@ -1104,44 +1104,51 @@ typedef union
...
@@ -1104,44 +1104,51 @@ typedef union
typedef
union
typedef
union
{
{
uint8_t
Msg
[
20
];
uint8_t
Msg
[
7
];
struct
struct
{
{
uint8_t
:
8
;
/* 0预留 */
uint8_t
text1
:
8
;
uint8_t
:
8
;
/* 1预留 */
uint8_t
text2
:
8
;
uint8_t
:
8
;
uint8_t
text3
:
8
;
uint8_t
text4
:
8
;
uint8_t
:
5
;
uint8_t
text5
:
8
;
uint8_t
PGear
:
1
;
uint8_t
:
2
;
uint8_t
:
8
;
/* 4预留 */
uint8_t
:
8
;
/* 5预留 */
uint8_t
:
8
;
/* 6预留 */
uint8_t
:
8
;
/* 7预留 */
uint8_t
:
8
;
/* 8预留 */
uint8_t
:
8
;
/* 9预留 */
uint8_t
:
8
;
/* 10预留 */
uint8_t
:
8
;
/* 11预留 */
uint8_t
:
8
;
/* 12预留 */
uint8_t
:
8
;
/* 13预留 */
uint8_t
:
8
;
/* 14预留 */
uint8_t
:
8
;
/* 15预留 */
uint8_t
:
8
;
/* 16预留 */
uint8_t
:
8
;
/* 17预留 */
uint8_t
:
8
;
/* 18预留 */
uint8_t
:
8
;
/* 19预留 */
uint8_t
:
8
;
/* 20预留 */
uint8_t
Lamp
:
4
;
uint8_t
FlickerFrequency
:
4
;
uint8_t
text7
:
8
;
}
Sig
;
}
Sig
;
}
_BCMLED
;
typedef
union
}
_AIMAtest
;
{
uint8_t
Msg
[
22
];
struct
{
uint8_t
textbit1
:
8
;
uint8_t
textbit2
:
8
;
//车速
uint8_t
textbit3
:
8
;
uint8_t
textbit4
:
8
;
uint8_t
textbit5
:
8
;
uint8_t
textbit6
:
8
;
uint8_t
textbit7
:
8
;
//车身状态
uint8_t
textbit8
:
8
;
uint8_t
textbit9
:
8
;
uint8_t
textbit10
:
8
;
uint8_t
textbit11
:
8
;
uint8_t
textbit12
:
8
;
uint8_t
textbit13
:
8
;
uint8_t
textbit14
:
8
;
uint8_t
textbit15
:
8
;
uint8_t
textbit16
:
8
;
uint8_t
textbit17
:
8
;
uint8_t
textbit18
:
8
;
uint8_t
textbit19
:
8
;
uint8_t
textbit20
:
8
;
uint8_t
textbit21
:
8
;
uint8_t
textbit22
:
8
;
}
Sig
;
}
_Dashboard
;
typedef
struct
typedef
struct
{
{
...
@@ -1154,7 +1161,8 @@ typedef struct
...
@@ -1154,7 +1161,8 @@ typedef struct
uint8_t
weizhilight1
;
uint8_t
weizhilight1
;
uint32_t
power1
;
uint32_t
power1
;
}
LineSta
;
}
LineSta
;
extern
_AIMAtest
AIMAtest
;
extern
_BCMLED
BCMLED
;
extern
_Dashboard
Dashboard
;
extern
LineSta
LineGetSta
;
extern
LineSta
LineGetSta
;
extern
_ID0X40h_Data
R485_ID40h
;
extern
_ID0X40h_Data
R485_ID40h
;
extern
_ID0X48h_Data
R485_ID48h
;
extern
_ID0X48h_Data
R485_ID48h
;
...
...
YueJin_test_bench/source/Appliciation/RTE_GPIO.h
View file @
f3863877
...
@@ -11,9 +11,9 @@
...
@@ -11,9 +11,9 @@
#define ABC_OUT GPIO_OUT_PORT00_PIN04 //ABC轮动报警输出
#define ABC_OUT GPIO_OUT_PORT00_PIN04 //ABC轮动报警输出
#define BCDD_MCU GPIO_OUT_PORT10_PIN00 //脚撑
#define BCDD_MCU GPIO_OUT_PORT10_PIN00 //脚撑
#define RELAY_VBAT_MCU GPIO_OUT_PORT10_PIN10
#define RELAY_VBAT_MCU GPIO_OUT_PORT10_PIN10
//VBAT
#define RELAY_DC12V_MCU GPIO_OUT_PORT10_PIN09
#define RELAY_DC12V_MCU GPIO_OUT_PORT10_PIN09
//12V一线通
#define RELAY_KEY_MCU GPIO_OUT_PORT10_PIN07
#define RELAY_KEY_MCU GPIO_OUT_PORT10_PIN07
//ACC
#define RELAY_LIGHTCONTROL_MCU GPIO_OUT_PORT10_PIN06 //光控大灯MCU
#define RELAY_LIGHTCONTROL_MCU GPIO_OUT_PORT10_PIN06 //光控大灯MCU
#define ZXSW_12V GPIO_OUT_PORT11_PIN05 //转向12V
#define ZXSW_12V GPIO_OUT_PORT11_PIN05 //转向12V
...
...
YueJin_test_bench/source/Appliciation/api_RS485.c
View file @
f3863877
...
@@ -32,7 +32,8 @@ _ID0X42h_Data R485_ID42h;
...
@@ -32,7 +32,8 @@ _ID0X42h_Data R485_ID42h;
_ID0X4Ah_Data
R485_ID4Ah
;
_ID0X4Ah_Data
R485_ID4Ah
;
_ID0X4Dh_Data
R485_ID4Dh
;
_ID0X4Dh_Data
R485_ID4Dh
;
LineSta
LineGetSta
;
LineSta
LineGetSta
;
_AIMAtest
AIMAtest
;
_BCMLED
BCMLED
;
_Dashboard
Dashboard
;
void
R485_TX_Init
(
void
)
void
R485_TX_Init
(
void
)
{
{
...
@@ -177,24 +178,16 @@ uint32_t R485_Send(const uint16_t cmdID, const uint8_t* pData, uint8_t len)
...
@@ -177,24 +178,16 @@ uint32_t R485_Send(const uint16_t cmdID, const uint8_t* pData, uint8_t len)
int
i
=
0
;
int
i
=
0
;
uint16_t
checksum
=
0
;
uint16_t
checksum
=
0
;
uint32_t
frameLen
;
uint32_t
frameLen
;
// if (len + R485_DATA_PACKAGE_MIN_LEN > 71)
// {
// return 0;
// }
// if (len != 64)
// {
// return 0;
// }
dataBuf
[
0
]
=
0xEF
;
/* 帧头 */
dataBuf
[
0
]
=
0xEF
;
/* 帧头 */
dataBuf
[
1
]
=
0xDD
;
/*
ID
*/
dataBuf
[
1
]
=
0xDD
;
/*
连续帧
*/
dataBuf
[
2
]
=
0x8D
;
/*
ID
*/
dataBuf
[
2
]
=
0x8D
;
/*
连续帧
*/
dataBuf
[
3
]
=
cmdID
;
/* 设备地址 */
dataBuf
[
3
]
=
cmdID
;
/* 设备地址 */
// dataBuf[3] = R485_DATA_LEN; /* 长度 固定64Byte */
dataBuf
[
4
]
=
0x80
;
/* 命令 */
dataBuf
[
4
]
=
0x80
;
/* 命令 */
dataBuf
[
5
]
=
len
;
dataBuf
[
5
]
=
len
+
1
;
frameLen
=
6
;
dataBuf
[
6
]
=
0x01
;
frameLen
=
7
;
// 数据 Data
// 数据 Data
for
(
i
=
0
;
i
<
len
;
++
i
)
for
(
i
=
0
;
i
<
len
;
++
i
)
{
{
...
@@ -202,9 +195,7 @@ uint32_t R485_Send(const uint16_t cmdID, const uint8_t* pData, uint8_t len)
...
@@ -202,9 +195,7 @@ uint32_t R485_Send(const uint16_t cmdID, const uint8_t* pData, uint8_t len)
frameLen
++
;
frameLen
++
;
}
}
// checksum = Yadi_CAL_Data_Sum(&dataBuf[2], R485_DATA_LEN + 2);
checksum
=
RS485_CRC16_Calc
(
&
dataBuf
[
0
],
len
+
7
);
checksum
=
RS485_CRC16_Calc
(
&
dataBuf
[
0
],
len
+
6
);
// checksum = 0;
dataBuf
[
frameLen
]
=
checksum
&
0xff
;
dataBuf
[
frameLen
]
=
checksum
&
0xff
;
frameLen
++
;
frameLen
++
;
...
@@ -212,29 +203,19 @@ uint32_t R485_Send(const uint16_t cmdID, const uint8_t* pData, uint8_t len)
...
@@ -212,29 +203,19 @@ uint32_t R485_Send(const uint16_t cmdID, const uint8_t* pData, uint8_t len)
frameLen
++
;
frameLen
++
;
dataBuf
[
frameLen
]
=
0xEE
;
dataBuf
[
frameLen
]
=
0xEE
;
frameLen
++
;
frameLen
++
;
// if (frameLen != 71)
// {
// return 0;
// }
uint8_t
sendresult
=
0
;
uint8_t
sendresult
=
0
;
sendresult
=
UART_Ch0_Send_Multiple_Byte
(
dataBuf
,
frameLen
);
sendresult
=
UART_Ch0_Send_Multiple_Byte
(
dataBuf
,
frameLen
);
RS485_TX_finish
=
1
;
RS485_TX_finish
=
1
;
// while(1)
if
(
sendresult
==
0
)
// {
{
if
(
sendresult
==
0
)
{
return
sendresult
;
}
else
{
sendresult
=
UART_Ch0_Send_Multiple_Byte
(
dataBuf
,
frameLen
);
}
return
sendresult
;
return
sendresult
;
// }
}
else
{
sendresult
=
UART_Ch0_Send_Multiple_Byte
(
dataBuf
,
frameLen
);
}
return
sendresult
;
}
}
uint32_t
R485_AIMA_Send
(
void
)
uint32_t
R485_AIMA_Send
(
void
)
{
{
uint8_t
dataBuf
[]
=
{
uint8_t
dataBuf
[]
=
{
...
@@ -267,150 +248,29 @@ uint8_t sendmsgAll[8];
...
@@ -267,150 +248,29 @@ uint8_t sendmsgAll[8];
uint32_t
sendnum
=
1
;
uint32_t
sendnum
=
1
;
void
RS485_User_Tx_Data
(
void
)
void
RS485_User_Tx_Data
(
void
)
{
{
uint8_t
flag
=
0
;
uint32_t
sendfinishflag
=
0
;
#if (0)
switch
(
RS485_send_num
)
uint8_t
flag
=
0
;
{
uint32_t
sendfinishflag
=
0
;
case
RS485_Tx_ID48_Idx
:
// if(firstflag = 0)
sendfinishflag
=
R485_Send_test
();
// {
RS485_TX_finish
=
1
;
memcpy
(
lastdata
,
nowdata
,
4
);
if
(
sendfinishflag
==
0
)
// }
{
// m
if
(
RS485_TX_finish
==
1
)
sendmsgAll
[
0
]
=
(
uint8_t
)
sendnum
&
0xFF
;
sendmsgAll
[
1
]
=
((
uint8_t
)(
sendnum
>>
8
))
&
0xFF
;
sendmsgAll
[
2
]
=
((
uint8_t
)(
sendnum
>>
16
))
&
0xFF
;
sendmsgAll
[
3
]
=
((
uint8_t
)(
sendnum
>>
24
))
&
0xFF
;
sendmsgAll
[
4
]
=
((
uint8_t
)(
sendnum
))
&
0xFF
;
sendmsgAll
[
5
]
=
((
uint8_t
)(
sendnum
>>
8
))
&
0xFF
;
sendmsgAll
[
6
]
=
((
uint8_t
)(
sendnum
>>
16
))
&
0xFF
;
sendmsgAll
[
7
]
=
((
uint8_t
)(
sendnum
>>
24
))
&
0xFF
;
if
(
RS485_TX_finish
==
0
)
{
{
// LINE_OUT_NEG_09 = 1;
RS485_send_time
=
0
;
switch
(
RS485_send_num
)
{
case
RS485_Tx_ID48_Idx
:
sendfinishflag
=
R485_Send
(
0x70
,
sendmsgAll
,
8
);
RS485_TX_finish
=
1
;
if
(
sendfinishflag
==
0
)
{
if
(
RS485_TX_finish
==
1
)
{
// RS485_send_num++;
// lastdata[0] = (uint8_t)sendnum & 0xFF;
// lastdata[1] = ((uint8_t)(sendnum >>8)) & 0xFF;
// lastdata[2] = ((uint8_t)(sendnum >>16)) & 0xFF;
// lastdata[3] = ((uint8_t)(sendnum >>24)) & 0xFF;
nowdata
[
0
]
=
(
uint8_t
)
sendnum
&
0xFF
;
nowdata
[
1
]
=
((
uint8_t
)(
sendnum
>>
8
))
&
0xFF
;
nowdata
[
2
]
=
((
uint8_t
)(
sendnum
>>
16
))
&
0xFF
;
nowdata
[
3
]
=
((
uint8_t
)(
sendnum
>>
24
))
&
0xFF
;
sendnum
++
;
}
}
break
;
case
RS485_Tx_ID49_Idx
:
sendfinishflag
=
R485_Send
(
0x71
,
sendmsgAll
,
8
);
RS485_TX_finish
=
1
;
if
(
sendfinishflag
==
0
)
{
if
(
RS485_TX_finish
==
1
)
{
// sendnum++;
RS485_send_num
++
;
}
}
// uart_wait_tx_done(R485_UART_PORT, 100);
break
;
case
RS485_Tx_ID4A_Idx
:
sendfinishflag
=
R485_Send
(
0x72
,
sendmsgAll
,
sizeof
(
sendmsgAll
));
RS485_TX_finish
=
1
;
if
(
sendfinishflag
==
0
)
{
RS485_TX_finish
=
1
;
if
(
RS485_TX_finish
==
1
)
{
RS485_send_num
++
;
}
}
break
;
case
3
:
sendfinishflag
=
R485_Send
(
0x73
,
sendmsgAll
,
sizeof
(
sendmsgAll
));
RS485_TX_finish
=
1
;
if
(
sendfinishflag
==
0
)
{
RS485_TX_finish
=
1
;
if
(
RS485_TX_finish
==
1
)
{
RS485_send_num
++
;
}
}
break
;
case
4
:
sendfinishflag
=
R485_Send
(
0x74
,
sendmsgAll
,
sizeof
(
sendmsgAll
));
RS485_TX_finish
=
1
;
if
(
sendfinishflag
==
0
)
{
RS485_TX_finish
=
1
;
if
(
RS485_TX_finish
==
1
)
{
RS485_send_num
++
;
}
}
break
;
default:
// sendnum++;
RS485_send_num
=
0
;
break
;
RS485_TX_finish
=
1
;
}
}
}
#endif
}
#if(1)
break
;
uint8_t
flag
=
0
;
uint32_t
sendfinishflag
=
0
;
default:
flag
=
1
;
// if(RS485_send_time > 3000)
RS485_send_time
=
0
;
// {
RS485_send_num
=
0
;
switch
(
RS485_send_num
)
break
;
{
}
case
RS485_Tx_ID48_Idx
:
sendfinishflag
=
R485_Send_test
();
RS485_TX_finish
=
1
;
if
(
sendfinishflag
==
0
)
{
if
(
RS485_TX_finish
==
1
)
{
// sendnum++;
RS485_send_time
=
0
;
// RS485_send_num ++;
}
}
break
;
default:
flag
=
1
;
RS485_send_time
=
0
;
RS485_send_num
=
0
;
break
;
}
#endif
}
}
void
backsend
(
void
)
void
backsend
(
void
)
{
{
...
...
YueJin_test_bench/source/Driver/Analog_Signals/Analog_Signals.c
View file @
f3863877
...
@@ -74,7 +74,7 @@ ADC_Data_st_t stADCData[ADC_SIGNAL_CH_NUMBER];
...
@@ -74,7 +74,7 @@ ADC_Data_st_t stADCData[ADC_SIGNAL_CH_NUMBER];
const
uint8_t
u8ADCChList
[
ADC_CONV_CH_NUMBER
]
=
const
uint8_t
u8ADCChList
[
ADC_CONV_CH_NUMBER
]
=
{
{
9U
,
15U
,
11U
,
8U
,
9U
,
15U
,
11U
,
8U
,
7U
,
};
};
const
ADC_Ch_Cfg_st_t
stADCChCfg
[
ADC_SIGNAL_CH_NUMBER
]
=
const
ADC_Ch_Cfg_st_t
stADCChCfg
[
ADC_SIGNAL_CH_NUMBER
]
=
...
@@ -83,6 +83,7 @@ const ADC_Ch_Cfg_st_t stADCChCfg[ADC_SIGNAL_CH_NUMBER] =
...
@@ -83,6 +83,7 @@ const ADC_Ch_Cfg_st_t stADCChCfg[ADC_SIGNAL_CH_NUMBER] =
{
1U
,
0U
,
0U
,
0U
,
0U
,
1U
,
ADC_Voltage_Calc_Circuit101
,},
{
1U
,
0U
,
0U
,
0U
,
0U
,
1U
,
ADC_Voltage_Calc_Circuit101
,},
{
2U
,
0U
,
0U
,
0U
,
0U
,
1U
,
ADC_Voltage_Calc_Circuit102
,},
{
2U
,
0U
,
0U
,
0U
,
0U
,
1U
,
ADC_Voltage_Calc_Circuit102
,},
{
3U
,
0U
,
0U
,
0U
,
0U
,
1U
,
ADC_Voltage_Calc_Circuit102
,},
{
3U
,
0U
,
0U
,
0U
,
0U
,
1U
,
ADC_Voltage_Calc_Circuit102
,},
{
4U
,
0U
,
0U
,
0U
,
0U
,
1U
,
ADC_Voltage_Calc_Circuit102
,},
};
};
const
ADC_Res_List_st_t
stADCResList
[
ADC_SIGNAL_CH_NUMBER
]
=
const
ADC_Res_List_st_t
stADCResList
[
ADC_SIGNAL_CH_NUMBER
]
=
...
@@ -91,6 +92,7 @@ const ADC_Res_List_st_t stADCResList[ADC_SIGNAL_CH_NUMBER] =
...
@@ -91,6 +92,7 @@ const ADC_Res_List_st_t stADCResList[ADC_SIGNAL_CH_NUMBER] =
{
0U
,
100000U
,
0U
,
0U
,},
{
0U
,
100000U
,
0U
,
0U
,},
{
3300000U
,
1000000U
,
0U
,
0U
,},
{
3300000U
,
1000000U
,
0U
,
0U
,},
{
3300000U
,
1000000U
,
0U
,
0U
,},
{
3300000U
,
1000000U
,
0U
,
0U
,},
{
3300000U
,
100000U
,
0U
,
0U
,},
};
};
/* Private function prototypes ----------------------------------------------*/
/* Private function prototypes ----------------------------------------------*/
...
...
YueJin_test_bench/source/Driver/Analog_Signals/Analog_Signals.h
View file @
f3863877
...
@@ -31,11 +31,12 @@ enum ADCChName
...
@@ -31,11 +31,12 @@ enum ADCChName
ADC_CH_KL30_VOLTAGE
,
ADC_CH_KL30_VOLTAGE
,
ADC_CH_GKDD_VOLTAGE
,
ADC_CH_GKDD_VOLTAGE
,
ADC_CH_ZXSW_VOLTAGE
,
ADC_CH_ZXSW_VOLTAGE
,
ADC_CH_ACC1_VOLTAGE
,
};
};
/* Exported macro ------------------------------------------------------------*/
/* Exported macro ------------------------------------------------------------*/
#define ADC_TOTAL_CH_NUMBER (
4
U)
#define ADC_TOTAL_CH_NUMBER (
5
U)
#define ADC_SIGNAL_CH_NUMBER (
4
U)
#define ADC_SIGNAL_CH_NUMBER (
5
U)
#define ADC_REF_VOLTAGE u16ADCRefVoltage
#define ADC_REF_VOLTAGE u16ADCRefVoltage
/* Exported variables --------------------------------------------------------*/
/* Exported variables --------------------------------------------------------*/
...
...
YueJin_test_bench/source/System/init.c
View file @
f3863877
...
@@ -114,6 +114,8 @@ void Sys_Startup_Init(void)
...
@@ -114,6 +114,8 @@ void Sys_Startup_Init(void)
// UART_Init(UART_RLIN31, &loc_config);
// UART_Init(UART_RLIN31, &loc_config);
// Auto_ONOFF = 1;
// Auto_ONOFF = 1;
// AutoFlag = 1;
// AutoFlag = 1;
RELAY_VBAT_MCU
=
1
;
RELAY_KEY_MCU
=
1
;
}
}
/***********************************************************************
/***********************************************************************
...
...
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