V1.22 南京金龙CAN数据调整

This commit is contained in:
hehaoyang 2023-11-20 10:20:45 +08:00
parent 67935cf022
commit f2e8c43e2e
3 changed files with 256 additions and 241 deletions

1
.gitignore vendored
View File

@ -219,5 +219,4 @@ GD32F103C8T6/GD32F10x.emSession
GD32F103C8T6/._GD32F10x.emProject GD32F103C8T6/._GD32F10x.emProject
GD32F103C8T6/App/Output/Debug/Obj/App/v58-e8e109c7.o.tmp GD32F103C8T6/App/Output/Debug/Obj/App/v58-e8e109c7.o.tmp
WpfApp1/.vs/WpfApp1/FileContentIndex/294201ea-13b4-4ce6-87c7-fe11eac372a1.vsidx WpfApp1/.vs/WpfApp1/FileContentIndex/294201ea-13b4-4ce6-87c7-fe11eac372a1.vsidx
GD32F103C8T6/GD32F10x.emSession
协议文档/~$通信协议说明.docx 协议文档/~$通信协议说明.docx

View File

@ -22,7 +22,7 @@
#define API_FRAME_RESPONSE (0x01) /* 响应帧 */ #define API_FRAME_RESPONSE (0x01) /* 响应帧 */
#define API_FRAME_NOTIFICATION (0x02) /* 通知帧 */ #define API_FRAME_NOTIFICATION (0x02) /* 通知帧 */
#define SOFTWARE_VERSION ("V1.21") #define SOFTWARE_VERSION ("V1.22")
#define HARDWARE_VERSION ("V1.01") #define HARDWARE_VERSION ("V1.01")
extern uint8_t api_upgrade_mode; extern uint8_t api_upgrade_mode;

View File

@ -73,28 +73,44 @@ void can_jinlong_parsing(uint32_t id, uint8_t *data, uint8_t *door_front, uint8_
{ {
switch (id) switch (id)
{ {
case 0x18F0B117: //case 0x18F0B117:
// /* 左转向 */
// *turn_left = (data[1] & 0x01) == 0x01 ? 0 : 1;
// /* 右转向 */
// *turn_right = (data[1] >> 1 & 0x01) == 0x01 ? 0 : 1;
// /* 前门 */
// if ((data[2] & 0x01) == 0x01)
// *door_front = 0;
// if ((data[2] >> 1 & 0x01) == 0x01)
// *door_front = 1;
// /* 中门 */
// if ((data[2] >> 2 & 0x01) == 0x01)
// *door_back = 0;
// if ((data[2] >> 3 & 0x01) == 0x01)
// *door_back = 1;
// break;
//case 0x18F0BA17:
// /* 倒车 */
// *reversing = data[7] == 0xDF ? 0 : 1;
// break;
case 0x18F40117:
/* 左转向 */ /* 左转向 */
*turn_left = (data[1] & 0x01) == 0x01 ? 0 : 1; *turn_left = (data[1] >> 6 & 0x01) == 0x01 ? 0 : 1;
/* 右转向 */ /* 右转向 */
*turn_right = (data[1] >> 1 & 0x01) == 0x01 ? 0 : 1; *turn_right = (data[1] >> 7 & 0x01) == 0x01 ? 0 : 1;
/* 前门 */ /* 前门 */
if ((data[2] & 0x01) == 0x01) *door_front = (data[0] >> 1 & 0x01) == 0x01 ? 0 : 1;
*door_front = 0; /* 后门 */
if ((data[2] >> 1 & 0x01) == 0x01) *door_back = (data[0] & 0x01) == 0x01 ? 0 : 1;
*door_front = 1;
/* 中门 */
if ((data[2] >> 2 & 0x01) == 0x01)
*door_back = 0;
if ((data[2] >> 3 & 0x01) == 0x01)
*door_back = 1;
break; break;
case 0x18F0BA17: case 0x18F101D0:
/* 倒车 */ /* 倒车 */
*reversing = data[7] == 0xDF ? 0 : 1; *reversing = data[3] & 0x07 ? 0 : 1;
break; break;
} }
} }