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
67f2a9c0
Commit
67f2a9c0
authored
Jul 24, 2024
by
王雅楠
🍎
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'zhengping' of
http://tyw-server.synology.me:12345/shihao/haojin750tft
into zhengping
parents
4ded9752
ff712839
Changes
17
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
17 changed files
with
947 additions
and
53604 deletions
+947
-53604
.gitignore
.gitignore
+1
-0
JLinkLog.txt
Firmware/Project/Cmsemicon/BAT32A279/MDK_ARM/JLinkLog.txt
+0
-52962
CAN_CH0_CAN_Communication_Matrix.c
...are/Source/Application/CAN_CH0_CAN_Communication_Matrix.c
+1
-1
CAN_CH0_CAN_Communication_Matrix.h
...are/Source/Application/CAN_CH0_CAN_Communication_Matrix.h
+1
-3
Can_User.c
Firmware/Source/Application/Can_User.c
+239
-185
Can_User.h
Firmware/Source/Application/Can_User.h
+33
-33
CommonInterface.c
Firmware/Source/Application/CommonInterface.c
+1
-1
Data_VSpeed.c
Firmware/Source/Application/Data_VSpeed.c
+1
-2
Components.h
Firmware/Source/Component/Components.h
+2
-0
Line_In_user.c
Firmware/Source/Component/Line_In/Line_In_user.c
+114
-21
Line_In_user.h
Firmware/Source/Component/Line_In/Line_In_user.h
+21
-9
PowerManag_user.c
Firmware/Source/Component/PowerManagement/PowerManag_user.c
+8
-6
Telltales_user.c
Firmware/Source/Component/Telltales/Telltales_user.c
+459
-334
Telltales_user.h
Firmware/Source/Component/Telltales/Telltales_user.h
+28
-23
rte_can.c
Firmware/Source/Device/Cmsemicon/BAT32A279/RTE/CAN/rte_can.c
+23
-10
RTE_CLOCK_Select_BAT32A279.c
...n/BAT32A279/RTE/CLOCK_Select/RTE_CLOCK_Select_BAT32A279.c
+11
-14
Sys_Task_List.c
Firmware/Source/System/Sys_Task_List.c
+4
-0
No files found.
.gitignore
View file @
67f2a9c0
...
...
@@ -22,3 +22,4 @@ Firmware/Project/Cmsemicon/BAT32A279/MDK_ARM/Listings/HaoJin750TFT.map
/Firmware/Project/Cmsemicon/BAT32A279/MDK_ARM/Listings/HaoJin750TFT.map
/Firmware/Project/Cmsemicon/BAT32A279/MDK_ARM/*.uvoptx
/Firmware/Project/Cmsemicon/BAT32A279/MDK_ARM/JLinkLog.txt
/Firmware/Project/Cmsemicon/BAT32A279/MDK_ARM/JLinkLog.txt
Firmware/Project/Cmsemicon/BAT32A279/MDK_ARM/JLinkLog.txt
deleted
100644 → 0
View file @
4ded9752
This diff is collapsed.
Click to expand it.
Firmware/Source/Application/CAN_CH0_CAN_Communication_Matrix.c
View file @
67f2a9c0
...
...
@@ -6,7 +6,7 @@ st_CanMsgTxOp CAN_CH0_CanMsgTxOp;
const
st_CAN_SendAttribute
CAN_CH0_CANSendAttr
[
CAN_CH0_ID_SEND_TOTAL
]
=
{
{
0
}
{
0
}
};
const
st_CANMsgAttribute
CAN_CH0_CAN_MSG_CONST_ARRAY
[
CAN_CH0_ID_TOTAL_MAX
]
=
...
...
Firmware/Source/Application/CAN_CH0_CAN_Communication_Matrix.h
View file @
67f2a9c0
...
...
@@ -3,9 +3,7 @@
#include "Components.h"
#include "CAN_Signal\CAN_Lib.h"
extern
st_CanMsgOp
CAN_CH0_CanMsgOp
;
extern
st_CanMsgTxOp
CAN_CH0_CanMsgTxOp
;
typedef
enum
...
...
@@ -23,7 +21,7 @@ typedef enum
typedef
enum
{
TEST
,
TEST
,
CAN_CH0_ID_SEND_TOTAL
,
}
CAN_CH0_CAN_MSG_SEND_ID_t
;
...
...
Firmware/Source/Application/Can_User.c
View file @
67f2a9c0
This diff is collapsed.
Click to expand it.
Firmware/Source/Application/Can_User.h
View file @
67f2a9c0
//
#ifndef _CAN_USER_H_
//
#define _CAN_USER_H_
//
#include "RTE.h"
//
#include "Components.h"
#ifndef _CAN_USER_H_
#define _CAN_USER_H_
#include "RTE.h"
#include "Components.h"
/
/ /
******************************************************************************
//
Bus-off
//
******************************************************************************/
//
#define RSCAN0_BUS_STABLE 0x00U
//
#define RSCAN0_BUS_OFF_LV1 0x01U
//
#define RSCAN0_BUS_OFF_LV2 0x02U
//
#define RSCAN00_BUS_LIMP 0x03U
/
/ /
******************************************************************************
//
Bus-off
//
******************************************************************************/
/******************************************************************************
Bus-off
******************************************************************************/
#define RSCAN0_BUS_STABLE 0x00U
#define RSCAN0_BUS_OFF_LV1 0x01U
#define RSCAN0_BUS_OFF_LV2 0x02U
#define RSCAN00_BUS_LIMP 0x03U
/******************************************************************************
Bus-off
******************************************************************************/
//
#define RSCAN0_BUS_OFF_LV1_RECOVERY_TIME 90U
//
#define RSCAN0_BUS_OFF_LV2_RECOVERY_TIME 1000U
#define RSCAN0_BUS_OFF_LV1_RECOVERY_TIME 90U
#define RSCAN0_BUS_OFF_LV2_RECOVERY_TIME 1000U
//
typedef struct
//
{
//
uint8_t Status;
//
uint8_t Timer;
//
uint8_t Cnt;
//
uint8_t ReportDTCCnt;
//
} RSCAN0BusoffMonitorStruct;
typedef
struct
{
uint8_t
Status
;
uint8_t
Timer
;
uint8_t
Cnt
;
uint8_t
ReportDTCCnt
;
}
RSCAN0BusoffMonitorStruct
;
//
extern void Can_Tx_Apply_Buff(void);
//
extern void Can_RX_Apply_Buff(void);
//
extern void Can_BusOff_Recover(uint8_t deltaTime);
//
extern void COM_CAN_Init(void);
//
extern void Can_Init(void);
//
extern void Can_Rx_Cak(CanTxRxMsg *Msg);
//
extern void Busoff(void);
//
extern uint8_t COM_APP_Process(st_CAN_Msg *Msg);
//
extern void Can_Write(st_CAN_Msg *Msg);
extern
void
Can_Tx_Apply_Buff
(
void
);
extern
void
Can_RX_Apply_Buff
(
void
);
extern
void
Can_BusOff_Recover
(
uint8_t
deltaTime
);
extern
void
COM_CAN_Init
(
void
);
extern
void
Can_Init
(
void
);
extern
void
Can_Rx_Cak
(
CanTxRxMsg
*
Msg
);
extern
void
Busoff
(
void
);
extern
uint8_t
COM_APP_Process
(
st_CAN_Msg
*
Msg
);
extern
void
Can_Write
(
st_CAN_Msg
*
Msg
);
//
#endif
#endif
Firmware/Source/Application/CommonInterface.c
View file @
67f2a9c0
...
...
@@ -4,7 +4,7 @@
uint32_t
PowerIgnOnTimeLine
;
uint32_t
PowerIgnOffTimeLine
;
uint32_t
PowerIgnOffTimeLine
;
static
uint32_t
PowerSocTimeLine
;
...
...
Firmware/Source/Application/Data_VSpeed.c
View file @
67f2a9c0
...
...
@@ -82,8 +82,7 @@ void Data_Vehicle_Speed_Processing_Service(void)
if
((
CAN_MSG_Status
(
&
CAN_CH0_CanMsgOp
,
CAN_CH0_ID_CH0_101_Msg_Count
)
==
CAN_SIG_LOST
)
||
(
Vehicle_Speed
>
0XFF
))
{
/* 先判断掉线 */
//if (CAN_MSG_Status(&CAN_CH0_CanMsgOp, CAN_CH0_ID_CAN_0x101_Msg_Count) == CAN_SIG_LOST)
if
(
1
)
if
(
CAN_MSG_Status
(
&
CAN_CH0_CanMsgOp
,
CAN_CH0_ID_CH0_101_Msg_Count
)
==
CAN_SIG_LOST
)
{
DataVSpeedValid
=
0
;
DataVSpeedActual
=
0
;
...
...
Firmware/Source/Component/Components.h
View file @
67f2a9c0
...
...
@@ -28,5 +28,7 @@
#include "Data_VSpeed.h"
#include "BackLight.h"
#include "RTC\RTE_RTC.h"
#include "CAN_Signal\CAN_Lib.h"
#include "CAN_CH0_CAN_Communication_Matrix.h"
#endif
Firmware/Source/Component/Line_In/Line_In_user.c
View file @
67f2a9c0
...
...
@@ -5,63 +5,156 @@
const
Line_In_Attribute_st
g_stLineInAttribute
[
LINE_IN_MAX
]
=
{
{
LEVEL_LOW
,
LEVEL_HIGH
,
LINE_IN_IG_ON
,
20U
,
20U
,
Get_LINE_IN_TurnLeft
,
},
{
LEVEL_LOW
,
LEVEL_HIGH
,
LINE_IN_IG_ON
,
20U
,
20U
,
Get_LINE_IN_TurnRight
,
},
{
LEVEL_HIGH
,
LEVEL_LOW
,
LINE_IN_IG_ON
,
60U
,
20U
,
Get_LINE_IN_HighBeam
,
},
{
LEVEL_HIGH
,
LEVEL_LOW
,
LINE_IN_IG_ON
,
100U
,
20U
,
Get_LINE_IN_Auto_Start_Stop
,
},
{
LEVEL_HIGH
,
LEVEL_LOW
,
LINE_IN_IG_ON
,
20U
,
20U
,
Get_LINE_IN_Turn_Left
,
},
{
LEVEL_HIGH
,
LEVEL_LOW
,
LINE_IN_IG_ON
,
20U
,
20U
,
Get_LINE_IN_Turn_Right
,
},
{
LEVEL_HIGH
,
LEVEL_LOW
,
LINE_IN_IG_ON
,
60U
,
20U
,
Get_LINE_IN_High_Beam
,
},
{
LEVEL_LOW
,
LEVEL_HIGH
,
LINE_IN_IG_ON
,
100U
,
20U
,
Get_LINE_IN_Efi_Fault
,
},
{
LEVEL_HIGH
,
LEVEL_LOW
,
LINE_IN_IG_ON
,
20U
,
20U
,
Get_LINE_IN_ABS
,
},
{
LEVEL_LOW
,
LEVEL_HIGH
,
LINE_IN_IG_ON
,
20U
,
20U
,
Get_LINE_IN_Auto_Start_Stop
,
},
{
LEVEL_LOW
,
LEVEL_HIGH
,
LINE_IN_IG_ON
,
20U
,
20U
,
Get_LINE_IN_Oil_Pressure_Alert
,
},
{
LEVEL_LOW
,
LEVEL_HIGH
,
LINE_IN_IG_ON
,
20U
,
20U
,
Get_LINE_IN_Voltage
,
},
{
LEVEL_LOW
,
LEVEL_HIGH
,
LINE_IN_IG_ON
,
20U
,
20U
,
Get_LINE_IN_Fuel_Level_Low
,
},
{
LEVEL_LOW
,
LEVEL_HIGH
,
LINE_IN_IG_ON
,
20U
,
20U
,
Get_LINE_IN_E
,
},
{
LEVEL_LOW
,
LEVEL_HIGH
,
LINE_IN_IG_ON
,
20U
,
20U
,
Get_LINE_IN_S
,
},
};
Linelib_uint8_t
Get_LINE_IN_TurnLeft
(
void
)
Linelib_uint8_t
Get_LINE_IN_Turn_Left
(
void
)
{
Linelib_uint8_t
ret
=
0U
;
//if (RTE_GPIO_Get_Level(LeftTurn_P_In
))
if
(
RTE_GPIO_Get_Level
(
LeftTurn_MUC_OUT
))
{
ret
=
1u
;
}
//
else
else
{
ret
=
0UL
;
}
return
ret
;
}
Linelib_uint8_t
Get_LINE_IN_TurnRight
(
void
)
Linelib_uint8_t
Get_LINE_IN_Turn_Right
(
void
)
{
Linelib_uint8_t
ret
=
0U
;
//if (RTE_GPIO_Get_Level(RightTurn_P_In
))
if
(
RTE_GPIO_Get_Level
(
LeftTurn_MUC_OUT
))
{
ret
=
1u
;
}
//
else
else
{
ret
=
0UL
;
}
return
ret
;
}
Linelib_uint8_t
Get_LINE_IN_HighBeam
(
void
)
Linelib_uint8_t
Get_LINE_IN_High_Beam
(
void
)
{
Linelib_uint8_t
ret
=
0U
;
//if (RTE_GPIO_Get_Level(HighBeam_P_In
))
if
(
RTE_GPIO_Get_Level
(
LeftTurn_MUC_OUT
))
{
ret
=
1u
;
}
//else
else
{
ret
=
0UL
;
}
return
ret
;
}
Linelib_uint8_t
Get_LINE_IN_Efi_Fault
(
void
)
{
Linelib_uint8_t
ret
=
0U
;
if
(
RTE_GPIO_Get_Level
(
LeftTurn_MUC_OUT
))
{
ret
=
1u
;
}
else
{
ret
=
0UL
;
}
return
ret
;
}
Linelib_uint8_t
Get_LINE_IN_ABS
(
void
)
{
Linelib_uint8_t
ret
=
0U
;
if
(
RTE_GPIO_Get_Level
(
LeftTurn_MUC_OUT
))
{
ret
=
1u
;
}
else
{
ret
=
0UL
;
}
return
ret
;
}
Linelib_uint8_t
Get_LINE_IN_Auto_Start_Stop
(
void
)
{
Linelib_uint8_t
ret
=
0U
;
//if (RTE_GPIO_Get_Level(START_STOP_P_IN))
if
(
RTE_GPIO_Get_Level
(
LeftTurn_MUC_OUT
))
{
ret
=
1u
;
}
else
{
ret
=
0UL
;
}
return
ret
;
}
Linelib_uint8_t
Get_LINE_IN_Oil_Pressure_Alert
(
void
)
{
Linelib_uint8_t
ret
=
0U
;
if
(
RTE_GPIO_Get_Level
(
LeftTurn_MUC_OUT
))
{
ret
=
1u
;
}
else
{
ret
=
0UL
;
}
return
ret
;
}
Linelib_uint8_t
Get_LINE_IN_Voltage
(
void
)
{
Linelib_uint8_t
ret
=
0U
;
if
(
RTE_GPIO_Get_Level
(
LeftTurn_MUC_OUT
))
{
ret
=
1u
;
}
else
{
ret
=
0UL
;
}
return
ret
;
}
Linelib_uint8_t
Get_LINE_IN_Fuel_Level_Low
(
void
)
{
Linelib_uint8_t
ret
=
0U
;
if
(
RTE_GPIO_Get_Level
(
LeftTurn_MUC_OUT
))
{
ret
=
1u
;
}
else
{
ret
=
0UL
;
}
return
ret
;
}
Linelib_uint8_t
Get_LINE_IN_E
(
void
)
{
Linelib_uint8_t
ret
=
0U
;
if
(
RTE_GPIO_Get_Level
(
LeftTurn_MUC_OUT
))
{
ret
=
1u
;
}
else
{
ret
=
0UL
;
}
return
ret
;
}
Linelib_uint8_t
Get_LINE_IN_S
(
void
)
{
Linelib_uint8_t
ret
=
0U
;
if
(
RTE_GPIO_Get_Level
(
LeftTurn_MUC_OUT
))
{
ret
=
1u
;
}
//
else
else
{
ret
=
0UL
;
}
...
...
@@ -74,7 +167,7 @@ Linelib_uint8_t LINE_IN_Men[LINE_IN_MAX * LINE_IN_BLOCK_SIZE];
static
Linelib_uint16_t
LINE_GET_PWR
(
void
)
{
Linelib_uint16_t
Res
;
//
Res = Common_Get_IG_Sts() & 0x00FFu;
Res
=
Common_Get_IG_Sts
()
&
0x00FFu
;
return
Res
;
}
...
...
Firmware/Source/Component/Line_In/Line_In_user.h
View file @
67f2a9c0
...
...
@@ -5,19 +5,31 @@
typedef
enum
{
LINE_IN_TurnLeft
=
0
,
LINE_IN_TurnRight
,
LINE_IN_HighBeam
,
LINE_IN_Auto_Start_Stop
,
LINE_IN_Turn_Left
,
LINE_IN_Turn_Right
,
LINE_IN_High_Beam
,
LINE_IN_Efi_Fault
,
LINE_IN_ABS
,
LINE_IN_Auto_Start_Stop
,
LINE_IN_Oil_Pressure_Alert
,
LINE_IN_Voltage
,
LINE_IN_Fuel_Level_Low
,
LINE_IN_E
,
LINE_IN_S
,
LINE_IN_MAX
,
}
LINE_IN_Enum_t
;
extern
void
LINE_IN_Init
(
void
);
Linelib_uint8_t
Get_LINE_IN_TurnLeft
(
void
);
Linelib_uint8_t
Get_LINE_IN_TurnRight
(
void
);
Linelib_uint8_t
Get_LINE_IN_HighBeam
(
void
);
Linelib_uint8_t
Get_LINE_IN_Turn_Left
(
void
);
Linelib_uint8_t
Get_LINE_IN_Turn_Right
(
void
);
Linelib_uint8_t
Get_LINE_IN_High_Beam
(
void
);
Linelib_uint8_t
Get_LINE_IN_Efi_Fault
(
void
);
Linelib_uint8_t
Get_LINE_IN_ABS
(
void
);
Linelib_uint8_t
Get_LINE_IN_Auto_Start_Stop
(
void
);
Linelib_uint8_t
Get_LINE_IN_Oil_Pressure_Alert
(
void
);
Linelib_uint8_t
Get_LINE_IN_Voltage
(
void
);
Linelib_uint8_t
Get_LINE_IN_Fuel_Level_Low
(
void
);
Linelib_uint8_t
Get_LINE_IN_E
(
void
);
Linelib_uint8_t
Get_LINE_IN_S
(
void
);
#endif
Firmware/Source/Component/PowerManagement/PowerManag_user.c
View file @
67f2a9c0
...
...
@@ -53,7 +53,7 @@ static void Power_KL30_Init(void)
Data_User_Mileage_KL30Init
();
Fuel_KL30_Init
();
Amt630hInit
();
//
Telltales_Init();
Telltales_Init
();
TimerM_PWM_counter_Output_Init
(
TIMERM_COUNTER1
,
400
,
64000000
);
TimerM_PWM_CH_Output_init
(
TIMERM_COUNTER1
,
TIMERM_CHB
,
ActiveLevel_High
);
g_stRTCInformation
.
u8RTCSecond
=
0
;
...
...
@@ -62,16 +62,15 @@ static void Power_KL30_Init(void)
g_stRTCInformation
.
u8RTCDayOfMonth
=
1
;
g_stRTCInformation
.
u8RTCMonth
=
1
;
g_stRTCInformation
.
u8RTCYear
=
20
;
//
RTE_RTC_Init(g_stRTCInformation);
RTE_RTC_Init
(
g_stRTCInformation
);
Menu_User_Init
();
Can_Init
();
Protocol_KL30_Wakeup_Init
();
RTE_DEEPSLEEP_GPIO_Interrupt_Enable
(
KL15_AD_IN
,
Trigger_Rising
);
}
//extern uint32_t PowerIgnOffTimeLine;
static
void
Power_Wakeup_Init
(
void
)
{
// PowerIgnOffTimeLine = 0;
Gpio_Init
(
Gpio_WakeUp_Init
);
eeprom_StoreInfo_Init
();
Analog_Signal_Conv_Init
();
...
...
@@ -86,9 +85,10 @@ static void Power_Wakeup_Init(void)
Amt630hInit
();
TimerM_PWM_counter_Output_Init
(
TIMERM_COUNTER1
,
400
,
64000000
);
TimerM_PWM_CH_Output_init
(
TIMERM_COUNTER1
,
TIMERM_CHB
,
ActiveLevel_High
);
//
Telltales_Init();
Telltales_Init
();
Key_KL30_Init_EXample
();
Menu_User_WAKEUP
();
Can_Init
();
Protocol_KL30_Wakeup_Init
();
RTE_DEEPSLEEP_GPIO_Interrupt_Enable
(
KL15_AD_IN
,
Trigger_Rising
);
}
...
...
@@ -184,6 +184,7 @@ static Power_Status_em Power_Stay_Protect(void)
/* 关闭所有外设,坪保留AD采集,电溝状思切�? */
{
TimerM_PWM_set_duty
(
TIMERM_COUNTER1
,
TIMERM_CHB
,
0
);
CAN_TX_SetEnable
(
&
CAN_CH0_CanMsgTxOp
,
CAN_N_TX_Disable
);
}
u8PowerSts
=
EM_IGN_OFF_Init
;
/* 电溝模弝正常 */
...
...
@@ -196,6 +197,7 @@ static Power_Status_em Power_Stay_Protect(void)
if
(
SYS_OPR_STAT_RUN
)
{
CAN_TX_SetEnable
(
&
CAN_CH0_CanMsgTxOp
,
CAN_N_TX_Enable
);
return
u8PowerSts
;
}
...
...
Firmware/Source/Component/Telltales/Telltales_user.c
View file @
67f2a9c0
This diff is collapsed.
Click to expand it.
Firmware/Source/Component/Telltales/Telltales_user.h
View file @
67f2a9c0
//#ifndef TELLTALES_USER_H
//#define TELLTALES_USER_H
//typedef enum
//{
// em_LED_High_Beam,
// em_LED_Efi_Fault,
// em_LED_Auto_Start_Stop,
// em_LED_Voltage,
// em_LED_Fuel,
// em_LED_Atmosphere,
//
// LED_Max ,
//} LED_Idx_t;
//extern Tellib_uint8_t Auto_Start_Stop ;
//void Telltales_Init(void);
//Tellib_uint8_t Telltales_Voltage_Date(void);
//#endif
#ifndef TELLTALES_USER_H
#define TELLTALES_USER_H
typedef
enum
{
em_LED_Turn_Left
,
em_LED_Turn_Right
,
em_LED_High_Beam
,
em_LED_Efi_Fault
,
em_LED_ABS
,
em_LED_Auto_Start_Stop
,
em_LED_Oil_Pressure_Alert
,
em_LED_TCS
,
em_LED_HEV
,
em_LED_Voltage
,
em_LED_Fuel_Level_Low
,
em_LED_Coolant_Temperature
,
em_LED_WIFI
,
em_LED_Bluetooth
,
em_LED_E
,
em_LED_S
,
LED_Max
,
}
LED_Idx_t
;
extern
Tellib_uint8_t
Auto_Start_Stop
;
void
Telltales_Init
(
void
);
Tellib_uint8_t
Telltales_Voltage_Date
(
void
);
#endif
Firmware/Source/Device/Cmsemicon/BAT32A279/RTE/CAN/rte_can.c
View file @
67f2a9c0
...
...
@@ -6,8 +6,21 @@
CANMSG_Type
*
CANMSG
;
CanTxRxMsg
CAN_RecvMsg
;
CANBuffList_t
CanBufList
=
{
0
};
can_rx_callback
can_rx_handler
=
NULL
;
uint8_t
Read_RingBuff
(
CanTxRxMsg
*
data
)
{
if
(
CanBufList
.
length
==
0
)
{
return
0
;
}
*
data
=
CanBufList
.
data
[
CanBufList
.
Head
];
CanBufList
.
Head
=
(
CanBufList
.
Head
+
1
)
%
LIST_BUF_MAX_NUM
;
CanBufList
.
length
--
;
return
1
;
}
/**
* @brief CAN就收完成回调
*
...
...
@@ -20,8 +33,8 @@ static void can_recv_handler(void *msg)
if
(
CAN_GetFlagStatus
(
CAN0
,
CAN_FLAG_REC
)
!=
RESET
)
{
CAN_ClearFlag
(
CAN0
,
CAN_FLAG_REC
);
// CANMSG = CAN_Get_CANxMSGy(CAN0
);
// CAN_Receive_IT(CAN0,
&CAN_RecvMsg);
CAN_Receive_IT
(
CAN0
,
&
CanBufList
);
Read_RingBuff
(
&
CAN_RecvMsg
);
if
(
can_rx_handler
!=
NULL
)
{
...
...
@@ -31,9 +44,9 @@ static void can_recv_handler(void *msg)
}
/**
* @brief CAN初始?
* @brief CAN初始
�
?
*
* @param config CAN初始结构体指?
* @param config CAN初始结构体指
�
?
* @return uint8_t 0成功 1失败
*/
uint8_t
rte_can_init
(
can_config_st_t
*
config
)
...
...
@@ -98,7 +111,7 @@ uint8_t rte_can_init(can_config_st_t *config)
/**
* @brief can反初始化
* @param CANx CAN0 ? CAN1
* @param CANx CAN0
�
? CAN1
*
* @return uint8_t 0成功 1失败
*/
...
...
@@ -124,10 +137,10 @@ uint8_t rte_can_deinit(CAN_CH ch)
/**
* @brief 获取CAN是否BusOff
* @param CANx CAN0 ? CAN1
* @param CANx CAN0
�
? CAN1
*
* @return uint8_t 0 没有busoff
* 1 错误的操? 2 busoff
* 1 错误的操
�
? 2 busoff
*/
uint8_t
get_can_busoff
(
CAN_CH
ch
)
{
...
...
@@ -151,9 +164,9 @@ uint8_t get_can_busoff(CAN_CH ch)
}
/**
* @brief 从busoff状态恢?
* @brief 从busoff状态恢
�
?
*
* @param CANx CAN0 ? CAN1
* @param CANx CAN0
�
? CAN1
* @return uint8_t 0成功 1失败
*/
uint8_t
reset_busoff
(
CAN_CH
ch
)
...
...
@@ -189,7 +202,7 @@ uint8_t reset_busoff(CAN_CH ch)
return
0
;
}
/* 下面是一些例
? 自己
?
/* 下面是一些例
�? 自己�
?
CAN_SendMsg.Id = 0x00aa0432;
CAN_SendMsg.IDE = CAN_Id_Extended;
CAN_SendMsg.CacheType = CAN_CacheType_Tx;
...
...
Firmware/Source/Device/Cmsemicon/BAT32A279/RTE/CLOCK_Select/RTE_CLOCK_Select_BAT32A279.c
View file @
67f2a9c0
...
...
@@ -11,24 +11,21 @@ uint32_t RTE_SystemCoreClock;
extern
uint32_t
SystemCoreClock
;
void
RTE_CLOCK_Select_Start
(
void
)
{
////uint32_t msCnt;
#ifdef USED_FX_FCLK
/* config clock */
CGC_HSEConfig
(
OSC_OSCILLATOR
,
OSC_UNDER_10M
);
CGC_PLL_Setting
(
PLL_SR_fMX
,
PLL_DIV_2
,
PLL_MUL_16
);
CGC_PLL_CFG_AS_FCLK
();
SystemCoreClockUpdate
();
RTE_SystemCoreClock
=
SystemCoreClock
;
delay_init
(
64000000
);
SystemCoreClock
=
64000000UL
;
CGC_Osc_Setting
(
OSC_OSCILLATOR
,
OSC_UNDER_10M
,
OSC_OSCILLATOR
,
OSC_NORMAL_POWER
);
CGC_PLL_Setting
(
PLL_SR_fMX
,
PLL_DIV_2
,
PLL_MUL_16
);
CGC_PLL_CFG_AS_FCLK
();
delay_init
(
64000000
);
SystemCoreClock
=
64000000UL
;
#endif
#ifdef USED_FHOCO_FCLK
SystemCoreClockUpdate
();
msCnt
=
SystemCoreClock
/
1000
;
SysTick_Config
(
msCnt
);
delay_init
(
SystemCoreClock
);
#ifdef USED_FHOCO_FCLK
SystemCoreClockUpdate
();
msCnt
=
SystemCoreClock
/
1000
;
SysTick_Config
(
msCnt
);
delay_init
(
SystemCoreClock
);
#endif
}
...
...
Firmware/Source/System/Sys_Task_List.c
View file @
67f2a9c0
...
...
@@ -15,6 +15,8 @@ void Sys_2ms_Tasks(void)
Sys_Status_Update_Service
();
Analog_Signal_Conv_Service
();
AMT630H_Main
();
//Can_Write_Fun(&CAN_CH0_CanMsgTxOp, 2000u);无外发
CanMSg_XMS_Analysis
(
&
CAN_CH0_CanMsgOp
,
2u
);
}
void
Sys_5ms_Tasks
(
void
)
...
...
@@ -24,6 +26,7 @@ void Sys_5ms_Tasks(void)
void
Sys_10ms_Tasks
(
void
)
{
Line_In_Debounce_Service
(
10u
);
Key_Service
();
Key_Clear_Time
();
Key_TimeOut_Service
();
...
...
@@ -38,6 +41,7 @@ void Sys_20ms_Tasks(void)
void
Sys_50ms_Tasks
(
void
)
{
Telltales_Management
();
g_u8Cursor_Posittion
=
Menu_Get_Current_Cursor_Information
();
}
...
...
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