V1.21
This commit is contained in:
parent
8ac1ad5ec4
commit
e9421877a4
5
.gitignore
vendored
5
.gitignore
vendored
|
@ -216,3 +216,8 @@ GD32F103C8T6/Bootloader/Output/Debug/Obj/Bootloader/spi.o
|
||||||
GD32F103C8T6/Bootloader/Output/Debug/Obj/Bootloader/system.d
|
GD32F103C8T6/Bootloader/Output/Debug/Obj/Bootloader/system.d
|
||||||
GD32F103C8T6/Bootloader/Output/Debug/Obj/Bootloader/system.o
|
GD32F103C8T6/Bootloader/Output/Debug/Obj/Bootloader/system.o
|
||||||
GD32F103C8T6/GD32F10x.emSession
|
GD32F103C8T6/GD32F10x.emSession
|
||||||
|
GD32F103C8T6/._GD32F10x.emProject
|
||||||
|
GD32F103C8T6/App/Output/Debug/Obj/App/v58-e8e109c7.o.tmp
|
||||||
|
WpfApp1/.vs/WpfApp1/FileContentIndex/294201ea-13b4-4ce6-87c7-fe11eac372a1.vsidx
|
||||||
|
GD32F103C8T6/GD32F10x.emSession
|
||||||
|
协议文档/~$通信协议说明.docx
|
||||||
|
|
|
@ -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.20")
|
#define SOFTWARE_VERSION ("V1.21")
|
||||||
#define HARDWARE_VERSION ("V1.01")
|
#define HARDWARE_VERSION ("V1.01")
|
||||||
|
|
||||||
extern uint8_t api_upgrade_mode;
|
extern uint8_t api_upgrade_mode;
|
||||||
|
|
|
@ -49,30 +49,6 @@ void can_byd_02_parsing(uint32_t id, uint8_t *data, uint8_t *door_front, uint8_t
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void can_byd_03_parsing(uint32_t id, uint8_t *data, uint8_t *door_front, uint8_t *door_back, uint8_t *turn_left, uint8_t *turn_right, uint8_t *reversing)
|
|
||||||
{
|
|
||||||
switch (id)
|
|
||||||
{
|
|
||||||
case 0x18FDA589:
|
|
||||||
/* 前门 */
|
|
||||||
*door_front = (data[0] >> 4 & 0x03) == 0x01 ? 0 : 1;
|
|
||||||
/* 中门 */
|
|
||||||
*door_back = (data[0] >> 6 & 0x03) == 0x01 ? 0 : 1;
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 0x0CFE4199:
|
|
||||||
/* 左转向 */
|
|
||||||
*turn_left = (data[0] >> 6 & 0x03) == 0x01 ? 0 : 1;
|
|
||||||
/* 右转向 */
|
|
||||||
*turn_right = (data[1] & 0x03) == 0x01 ? 0 : 1;
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 0x18F00503:
|
|
||||||
/* 当前档位 */
|
|
||||||
*reversing = data[3] == 0x7C ? 0 : 1;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void can_yutong_parsing(uint32_t id, uint8_t *data, uint8_t *door_front, uint8_t *door_back, uint8_t *turn_left, uint8_t *turn_right, uint8_t *reversing)
|
void can_yutong_parsing(uint32_t id, uint8_t *data, uint8_t *door_front, uint8_t *door_back, uint8_t *turn_left, uint8_t *turn_right, uint8_t *reversing)
|
||||||
{
|
{
|
||||||
|
|
|
@ -7,8 +7,6 @@ void can_byd_01_parsing(uint32_t id, uint8_t *data, uint8_t *door_front, uint8_t
|
||||||
|
|
||||||
void can_byd_02_parsing(uint32_t id, uint8_t *data, uint8_t *door_front, uint8_t *door_back, uint8_t *turn_left, uint8_t *turn_right, uint8_t *reversing);
|
void can_byd_02_parsing(uint32_t id, uint8_t *data, uint8_t *door_front, uint8_t *door_back, uint8_t *turn_left, uint8_t *turn_right, uint8_t *reversing);
|
||||||
|
|
||||||
void can_byd_03_parsing(uint32_t id, uint8_t *data, uint8_t *door_front, uint8_t *door_back, uint8_t *turn_left, uint8_t *turn_right, uint8_t *reversing);
|
|
||||||
|
|
||||||
void can_yutong_parsing(uint32_t id, uint8_t *data, uint8_t *door_front, uint8_t *door_back, uint8_t *turn_left, uint8_t *turn_right, uint8_t *reversing);
|
void can_yutong_parsing(uint32_t id, uint8_t *data, uint8_t *door_front, uint8_t *door_back, uint8_t *turn_left, uint8_t *turn_right, uint8_t *reversing);
|
||||||
|
|
||||||
void can_jinlong_parsing(uint32_t id, uint8_t *data, uint8_t *door_front, uint8_t *door_back, uint8_t *turn_left, uint8_t *turn_right, uint8_t *reversing);
|
void can_jinlong_parsing(uint32_t id, uint8_t *data, uint8_t *door_front, uint8_t *door_back, uint8_t *turn_left, uint8_t *turn_right, uint8_t *reversing);
|
||||||
|
|
|
@ -7,11 +7,14 @@
|
||||||
#define STROBE_LIGHT_ENABLE_SETTING_INDEX (0x02)
|
#define STROBE_LIGHT_ENABLE_SETTING_INDEX (0x02)
|
||||||
#define VOLUME_LEVEL_SETTING_INDEX (0x03)
|
#define VOLUME_LEVEL_SETTING_INDEX (0x03)
|
||||||
|
|
||||||
static uint64_t led_rx_timestamp = 0, led_tx_timestamp = 0;
|
static uint64_t can_rx_led_timestamp = 0;
|
||||||
|
static uint64_t diaodu_rx_led_timestamp = 0;
|
||||||
|
static uint64_t run_led_timestamp = 0;
|
||||||
|
static uint64_t diaodu_status_rx_timestamp = 0;
|
||||||
|
|
||||||
static uint8_t door_front_status = 1, door_front_status_temporary = 1;
|
static uint8_t door_front_status = 1, door_front_status_temporary = 1;
|
||||||
static uint8_t door_back_status = 1, door_back_status_temporary = 1;
|
static uint8_t door_back_status = 1, door_back_status_temporary = 1;
|
||||||
static uint8_t door_status = 1, door_status_temporary = 1;
|
static uint8_t door_status = 1, door_status_temporary = 2;
|
||||||
static uint8_t turn_left_status = 1, turn_left_status_temporary = 1;
|
static uint8_t turn_left_status = 1, turn_left_status_temporary = 1;
|
||||||
static uint8_t turn_left_parsing_count = 0; /* 转向接收次数 */
|
static uint8_t turn_left_parsing_count = 0; /* 转向接收次数 */
|
||||||
static uint8_t turn_right_status = 1, turn_right_status_temporary = 1;
|
static uint8_t turn_right_status = 1, turn_right_status_temporary = 1;
|
||||||
|
@ -49,13 +52,10 @@ static void strobe_light_reset(void);
|
||||||
/* 频闪灯闪烁*/
|
/* 频闪灯闪烁*/
|
||||||
static void strobe_light_toggle(uint8_t count);
|
static void strobe_light_toggle(uint8_t count);
|
||||||
|
|
||||||
#ifdef USE_LED
|
|
||||||
/* LED 指示灯分析任务 */
|
|
||||||
static void led_parsing_task(uint8_t uuid);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* 设置音量级别 */
|
/* 设置音量级别 */
|
||||||
static void set_volume_level(uint8_t level);
|
static void set_volume_level(uint8_t level);
|
||||||
|
/* LED 指示灯分析任务 */
|
||||||
|
static void led_parsing_task(uint8_t uuid);
|
||||||
/* 音量级别控制按钮 分析任务 */
|
/* 音量级别控制按钮 分析任务 */
|
||||||
static void volume_io_control_parsing_task(uint8_t uuid);
|
static void volume_io_control_parsing_task(uint8_t uuid);
|
||||||
/* can 数据分析任务 */
|
/* can 数据分析任务 */
|
||||||
|
@ -144,8 +144,6 @@ void app_init(void)
|
||||||
|
|
||||||
m62429_init();
|
m62429_init();
|
||||||
|
|
||||||
ir_init();
|
|
||||||
|
|
||||||
/* 主动获取一次IO状态 */
|
/* 主动获取一次IO状态 */
|
||||||
door_front_status = door_front_status_temporary = gpio_input_bit_get(DOOR_FRONT_PERIPH, DOOR_FRONT_PIN);
|
door_front_status = door_front_status_temporary = gpio_input_bit_get(DOOR_FRONT_PERIPH, DOOR_FRONT_PIN);
|
||||||
door_back_status = door_back_status_temporary = gpio_input_bit_get(DOOR_BACK_PERIPH, DOOR_BACK_PIN);
|
door_back_status = door_back_status_temporary = gpio_input_bit_get(DOOR_BACK_PERIPH, DOOR_BACK_PIN);
|
||||||
|
@ -163,19 +161,14 @@ void app_init(void)
|
||||||
/* 创建 上位机数据检测任务 */
|
/* 创建 上位机数据检测任务 */
|
||||||
task_create((task_func)api_process, 0);
|
task_create((task_func)api_process, 0);
|
||||||
|
|
||||||
/* 创建 红外遥控器数据检测任务 */
|
|
||||||
task_create((task_func)ir_process, 0);
|
|
||||||
|
|
||||||
/* 创建 调度数据检测任务 */
|
/* 创建 调度数据检测任务 */
|
||||||
task_create((task_func)diaodu_process, 0);
|
task_create((task_func)diaodu_process, 0);
|
||||||
|
|
||||||
/* 创建 心跳发送任务 */
|
/* 创建 心跳发送任务 */
|
||||||
task_create((task_func)api_upload_heart_beat, 3000);
|
task_create((task_func)api_upload_heart_beat, 3000);
|
||||||
|
|
||||||
#ifdef USE_LED
|
|
||||||
/* 创建 LED 指示灯分析任务 */
|
/* 创建 LED 指示灯分析任务 */
|
||||||
task_create(led_parsing_task, 30);
|
task_create(led_parsing_task, 500);
|
||||||
#endif
|
|
||||||
|
|
||||||
/* 创建 CAN数据分析任务 */
|
/* 创建 CAN数据分析任务 */
|
||||||
task_create(can_parsing_task, 0);
|
task_create(can_parsing_task, 0);
|
||||||
|
@ -214,51 +207,56 @@ static void strobe_light_toggle(uint8_t count)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef USE_LED
|
|
||||||
static void led_parsing_task(uint8_t uuid)
|
static void led_parsing_task(uint8_t uuid)
|
||||||
{
|
{
|
||||||
/* 超过500ms钟未发送数据,熄灭发送指示灯 */
|
/* 超过 2s 未检测到CAN数据变化,熄灭发送指示灯 */
|
||||||
if (timestamp - led_rx_timestamp > 500)
|
if (timestamp - can_rx_led_timestamp > 2000)
|
||||||
{
|
{
|
||||||
gpio_bit_write(LED_RX_PERIPH, LED_RX_PIN, RESET);
|
gpio_bit_write(LED_CAN_PERIPH, LED_CAN_PIN, RESET);
|
||||||
led_rx_timestamp = timestamp;
|
can_rx_led_timestamp = timestamp;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 超过500ms钟未接收到数据,熄灭接收指示灯 */
|
/* 超过 2s 未检测到CAN数据变化,熄灭发送指示灯 */
|
||||||
if (timestamp - led_tx_timestamp > 500)
|
if (timestamp - diaodu_rx_led_timestamp > 2000)
|
||||||
{
|
{
|
||||||
gpio_bit_write(LED_TX_PERIPH, LED_TX_PIN, RESET);
|
gpio_bit_write(LED_DIAODU_PERIPH, LED_DIAODU_PIN, RESET);
|
||||||
led_tx_timestamp = timestamp;
|
diaodu_rx_led_timestamp = timestamp;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 1.5s 闪烁一次 */
|
||||||
|
if (timestamp - run_led_timestamp > 1000)
|
||||||
|
{
|
||||||
|
gpio_bit_toggle(LED_RUN_PERIPH, LED_RUN_PIN);
|
||||||
|
run_led_timestamp = timestamp;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
static void set_volume_level(uint8_t level)
|
static void set_volume_level(uint8_t level)
|
||||||
{
|
{
|
||||||
switch (level)
|
switch (level)
|
||||||
{
|
{
|
||||||
case 0x00:
|
case 0x00:
|
||||||
m62429_set_vol(0);
|
m62429_set_vol(11);
|
||||||
strobe_light_flashing_enable = 0x01;
|
strobe_light_flashing_enable = 0x00;
|
||||||
break;
|
break;
|
||||||
case 0x01:
|
case 0x01:
|
||||||
m62429_set_vol(8);
|
|
||||||
strobe_light_flashing_enable = 0x01;
|
|
||||||
break;
|
|
||||||
case 0x02:
|
|
||||||
m62429_set_vol(9);
|
m62429_set_vol(9);
|
||||||
strobe_light_flashing_enable = 0x01;
|
strobe_light_flashing_enable = 0x01;
|
||||||
break;
|
break;
|
||||||
|
case 0x02:
|
||||||
|
m62429_set_vol(8);
|
||||||
|
strobe_light_flashing_enable = 0x01;
|
||||||
|
break;
|
||||||
case 0x03:
|
case 0x03:
|
||||||
m62429_set_vol(11);
|
m62429_set_vol(0);
|
||||||
strobe_light_flashing_enable = 0x00;
|
strobe_light_flashing_enable = 0x01;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (level == 3)
|
if (level == 0)
|
||||||
gpio_bit_write(AMP_CTRL_PERIPH, AMP_CTRL_PIN, RESET); /* 停止功放 */
|
gpio_bit_write(AMP_CTRL_PERIPH, AMP_CTRL_PIN, RESET); /* 停止功放 */
|
||||||
else
|
else
|
||||||
gpio_bit_write(AMP_CTRL_PERIPH, AMP_CTRL_PIN, SET); /* 开启功放 */
|
gpio_bit_write(AMP_CTRL_PERIPH, AMP_CTRL_PIN, SET); /* 开启功放 */
|
||||||
|
@ -325,6 +323,8 @@ static void can_parsing_task(uint8_t uuid)
|
||||||
/* CAN 解析 */
|
/* CAN 解析 */
|
||||||
if (receive_message.rx_ff == CAN_FF_EXTENDED)
|
if (receive_message.rx_ff == CAN_FF_EXTENDED)
|
||||||
{
|
{
|
||||||
|
uint8_t can_channge_status = 0;
|
||||||
|
|
||||||
switch (can_type)
|
switch (can_type)
|
||||||
{
|
{
|
||||||
case 0x00:
|
case 0x00:
|
||||||
|
@ -334,34 +334,52 @@ static void can_parsing_task(uint8_t uuid)
|
||||||
can_byd_02_parsing(receive_message.rx_efid, receive_message.rx_data, &door_front_status_temporary, &door_back_status_temporary, &turn_left_status_temporary, &turn_right_status_temporary, &reversing_status_temporary);
|
can_byd_02_parsing(receive_message.rx_efid, receive_message.rx_data, &door_front_status_temporary, &door_back_status_temporary, &turn_left_status_temporary, &turn_right_status_temporary, &reversing_status_temporary);
|
||||||
break;
|
break;
|
||||||
case 0x02:
|
case 0x02:
|
||||||
can_byd_03_parsing(receive_message.rx_efid, receive_message.rx_data, &door_front_status_temporary, &door_back_status_temporary, &turn_left_status_temporary, &turn_right_status_temporary, &reversing_status_temporary);
|
|
||||||
break;
|
|
||||||
case 0x03:
|
|
||||||
can_yutong_parsing(receive_message.rx_efid, receive_message.rx_data, &door_front_status_temporary, &door_back_status_temporary, &turn_left_status_temporary, &turn_right_status_temporary, &reversing_status_temporary);
|
can_yutong_parsing(receive_message.rx_efid, receive_message.rx_data, &door_front_status_temporary, &door_back_status_temporary, &turn_left_status_temporary, &turn_right_status_temporary, &reversing_status_temporary);
|
||||||
break;
|
break;
|
||||||
case 0x04:
|
case 0x03:
|
||||||
can_jinlong_parsing(receive_message.rx_efid, receive_message.rx_data, &door_front_status_temporary, &door_back_status_temporary, &turn_left_status_temporary, &turn_right_status_temporary, &reversing_status_temporary);
|
can_jinlong_parsing(receive_message.rx_efid, receive_message.rx_data, &door_front_status_temporary, &door_back_status_temporary, &turn_left_status_temporary, &turn_right_status_temporary, &reversing_status_temporary);
|
||||||
break;
|
break;
|
||||||
case 0x05:
|
case 0x04:
|
||||||
can_ankai_parsing(receive_message.rx_efid, receive_message.rx_data, &door_front_status_temporary, &door_back_status_temporary, &turn_left_status_temporary, &turn_right_status_temporary, &reversing_status_temporary);
|
can_ankai_parsing(receive_message.rx_efid, receive_message.rx_data, &door_front_status_temporary, &door_back_status_temporary, &turn_left_status_temporary, &turn_right_status_temporary, &reversing_status_temporary);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (door_front_status_temporary != door_front_status)
|
if (door_front_status_temporary != door_front_status)
|
||||||
|
{
|
||||||
|
can_channge_status = 1;
|
||||||
door_front_upload_status = 0x01;
|
door_front_upload_status = 0x01;
|
||||||
|
}
|
||||||
|
|
||||||
if (door_back_status_temporary != door_back_status)
|
if (door_back_status_temporary != door_back_status)
|
||||||
|
{
|
||||||
|
can_channge_status = 1;
|
||||||
door_back_upload_status = 0x01;
|
door_back_upload_status = 0x01;
|
||||||
|
}
|
||||||
|
|
||||||
if (turn_left_status_temporary != turn_left_status)
|
if (turn_left_status_temporary != turn_left_status)
|
||||||
|
{
|
||||||
|
can_channge_status = 1;
|
||||||
turn_left_upload_status = 0x01;
|
turn_left_upload_status = 0x01;
|
||||||
|
}
|
||||||
|
|
||||||
if (turn_right_status_temporary != turn_right_status)
|
if (turn_right_status_temporary != turn_right_status)
|
||||||
|
{
|
||||||
|
can_channge_status = 1;
|
||||||
turn_right_upload_status = 0x01;
|
turn_right_upload_status = 0x01;
|
||||||
|
}
|
||||||
|
|
||||||
if (reversing_status_temporary != reversing_status)
|
if (reversing_status_temporary != reversing_status)
|
||||||
|
{
|
||||||
|
can_channge_status = 1;
|
||||||
reversing_upload_status = 0x01;
|
reversing_upload_status = 0x01;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(can_channge_status == 1)
|
||||||
|
{
|
||||||
|
gpio_bit_write(LED_CAN_PERIPH, LED_CAN_PIN, SET);
|
||||||
|
can_rx_led_timestamp = timestamp;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -450,9 +468,9 @@ static void vehicle_status_parsing_task(uint8_t uuid)
|
||||||
{
|
{
|
||||||
reversing_status = reversing_status_temporary;
|
reversing_status = reversing_status_temporary;
|
||||||
|
|
||||||
status_type = 3;
|
status = reversing_status == 0 ? 1 : 0;
|
||||||
|
|
||||||
status = reversing_status;
|
status_type = 3;
|
||||||
|
|
||||||
/* 优先级最高, 如果状态为触发, 关闭语音 */
|
/* 优先级最高, 如果状态为触发, 关闭语音 */
|
||||||
if (reversing_status == 0)
|
if (reversing_status == 0)
|
||||||
|
@ -468,62 +486,77 @@ static void vehicle_status_parsing_task(uint8_t uuid)
|
||||||
/* 进出站状态判断 */
|
/* 进出站状态判断 */
|
||||||
if (diaodu_status_temporry != 0 && diaodu_status != diaodu_status_temporry)
|
if (diaodu_status_temporry != 0 && diaodu_status != diaodu_status_temporry)
|
||||||
{
|
{
|
||||||
diaodu_status = diaodu_status_temporry;
|
/* 当前为出站状态, 如果之前是进站状态,则停止播报, 否则不处理 */
|
||||||
|
if(diaodu_status_temporry == 2)
|
||||||
/* 到站 */
|
{
|
||||||
if(diaodu_status == 1)
|
if(diaodu_status == 1)
|
||||||
{
|
{
|
||||||
status_type = 4;
|
|
||||||
|
|
||||||
status = 0x00;
|
status = 0x00;
|
||||||
|
status_type = 5;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/* 到站 */
|
||||||
|
else if (diaodu_status_temporry == 1)
|
||||||
|
{
|
||||||
|
status = 0x01;
|
||||||
|
status_type = 4;
|
||||||
|
|
||||||
/* 优先级最高,关闭语音 */
|
/* 优先级最高,关闭语音 */
|
||||||
v58_stop();
|
v58_stop();
|
||||||
}
|
}
|
||||||
///* 出站 */
|
|
||||||
// else if(diaodu_status == 2)
|
diaodu_status = diaodu_status_temporry;
|
||||||
// status_type = 5;
|
|
||||||
|
|
||||||
goto EXECUTE;
|
goto EXECUTE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* 如果一直处于进站状态, 超过 2 分钟, 则取消该状态, 并停止语音 */
|
||||||
|
if (diaodu_status == 1)
|
||||||
|
{
|
||||||
|
if(diaodu_status_rx_timestamp != 0 &&
|
||||||
|
timestamp - diaodu_status_rx_timestamp >= 120000)
|
||||||
|
{
|
||||||
|
/* 修改为出站状态 */
|
||||||
|
diaodu_arrival_or_departure_parsing(0x02);
|
||||||
|
|
||||||
|
goto EXECUTE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (door_front_status_temporary != door_front_status)
|
if (door_front_status_temporary != door_front_status)
|
||||||
door_front_status = door_front_status_temporary;
|
door_front_status = door_front_status_temporary;
|
||||||
|
|
||||||
if (door_back_status_temporary != door_back_status)
|
if (door_back_status_temporary != door_back_status)
|
||||||
door_back_status = door_back_status_temporary;
|
door_back_status = door_back_status_temporary;
|
||||||
|
|
||||||
|
//door_status_temporary = door_front_status_temporary + door_back_status_temporary;
|
||||||
door_status_temporary = door_front_status_temporary | door_back_status_temporary;
|
door_status_temporary = door_front_status_temporary | door_back_status_temporary;
|
||||||
|
|
||||||
if (door_status != door_status_temporary)
|
if (door_status != door_status_temporary)
|
||||||
{
|
{
|
||||||
door_status = door_status_temporary;
|
door_status = door_status_temporary;
|
||||||
|
|
||||||
status_type = 0;
|
status = door_status == 0 ? 1 : 0;
|
||||||
|
|
||||||
status = door_status;
|
status_type = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 进站状态, 不继续执行 */
|
|
||||||
if (diaodu_status == 1)
|
|
||||||
{
|
|
||||||
/* 当前后门开启后 */
|
/* 当前后门开启后 */
|
||||||
if(door_status == 0)
|
if(door_status == 0)
|
||||||
{
|
{
|
||||||
/* 重置进站状态 */
|
/* 进站状态, 不继续执行 */
|
||||||
diaodu_status = diaodu_status_temporry = 0;
|
if (diaodu_status == 1)
|
||||||
|
{
|
||||||
/* 关闭语音 */
|
/* 关闭语音 */
|
||||||
v58_stop();
|
v58_stop();
|
||||||
|
|
||||||
goto EXECUTE;
|
/* 重置进站状态 */
|
||||||
|
diaodu_status_temporry = diaodu_status = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
return;
|
/* 不处理其他数据 */
|
||||||
}
|
|
||||||
|
|
||||||
/* 当前后门开启后, 不处理其他数据 */
|
|
||||||
if (door_status == 0)
|
|
||||||
goto EXECUTE;
|
goto EXECUTE;
|
||||||
|
}
|
||||||
|
|
||||||
/* 左转弯状态判断 */
|
/* 左转弯状态判断 */
|
||||||
if (turn_left_status != turn_left_status_temporary)
|
if (turn_left_status != turn_left_status_temporary)
|
||||||
|
@ -539,15 +572,21 @@ static void vehicle_status_parsing_task(uint8_t uuid)
|
||||||
|
|
||||||
turn_left_parsing_count = 0;
|
turn_left_parsing_count = 0;
|
||||||
|
|
||||||
|
/* 屏蔽此时左转弯数据 */
|
||||||
|
if (turn_left_status_temporary == 0 && turn_right_status == 0)
|
||||||
|
status_type = 0xFF;
|
||||||
|
else
|
||||||
|
{
|
||||||
turn_left_status = turn_left_status_temporary;
|
turn_left_status = turn_left_status_temporary;
|
||||||
|
|
||||||
|
status = turn_left_status == 0 ? 1 : 0;
|
||||||
|
|
||||||
status_type = 1;
|
status_type = 1;
|
||||||
|
|
||||||
status = turn_left_status;
|
//printf("left status = %d \r\n", status);
|
||||||
|
|
||||||
/* 屏蔽此时左转弯数据 */
|
goto EXECUTE;
|
||||||
if (turn_left_status == 1 && turn_right_status == 0)
|
}
|
||||||
status_type = 0xFF;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
TURN_RIGHT_STATUS_TAG2:
|
TURN_RIGHT_STATUS_TAG2:
|
||||||
|
@ -565,15 +604,21 @@ TURN_RIGHT_STATUS_TAG2:
|
||||||
|
|
||||||
turn_right_parsing_count = 0;
|
turn_right_parsing_count = 0;
|
||||||
|
|
||||||
|
/* 屏蔽此时右转弯数据 */
|
||||||
|
if (turn_right_status_temporary == 0 && turn_left_status == 0)
|
||||||
|
status_type = 0xFF;
|
||||||
|
else
|
||||||
|
{
|
||||||
turn_right_status = turn_right_status_temporary;
|
turn_right_status = turn_right_status_temporary;
|
||||||
|
|
||||||
|
status = turn_right_status == 0 ? 1 : 0;
|
||||||
|
|
||||||
status_type = 2;
|
status_type = 2;
|
||||||
|
|
||||||
status = turn_right_status;
|
//printf("right status = %d \r\n", status);
|
||||||
|
|
||||||
/* 屏蔽此时右转弯数据 */
|
goto EXECUTE;
|
||||||
if (turn_right_status == 1 && turn_left_status == 0)
|
}
|
||||||
status_type = 0xFF;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#if 0
|
#if 0
|
||||||
|
@ -623,7 +668,7 @@ EXECUTE:
|
||||||
if (status_type == 0xFF || emergency_flashers_status_temporary == 0)
|
if (status_type == 0xFF || emergency_flashers_status_temporary == 0)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (status == 0x01)
|
if (status == 0x00)
|
||||||
{
|
{
|
||||||
/* 挂起 频闪灯控制任务 */
|
/* 挂起 频闪灯控制任务 */
|
||||||
task_suspend(strobe_light_task_uuid);
|
task_suspend(strobe_light_task_uuid);
|
||||||
|
@ -739,27 +784,30 @@ void diaodu_arrival_or_departure_parsing(uint8_t status)
|
||||||
{
|
{
|
||||||
diaodu_status_temporry = status;
|
diaodu_status_temporry = status;
|
||||||
diaodu_upload_status = 0x01;
|
diaodu_upload_status = 0x01;
|
||||||
|
|
||||||
|
diaodu_status_rx_timestamp = diaodu_rx_led_timestamp = timestamp;
|
||||||
|
gpio_bit_write(LED_DIAODU_PERIPH, LED_DIAODU_PIN, SET);
|
||||||
}
|
}
|
||||||
|
|
||||||
void ir_key_triggered(uint8_t key)
|
//void ir_key_triggered(uint8_t key)
|
||||||
{
|
//{
|
||||||
uint8_t level = 0x00;
|
// uint8_t level = 0x00;
|
||||||
|
|
||||||
if (key == 0x98) /* + */
|
// if (key == 0x98) /* + */
|
||||||
level = volume_level - 1;
|
// level = volume_level - 1;
|
||||||
else if (key == 0x68) /* - */
|
// else if (key == 0x68) /* - */
|
||||||
level = volume_level + 1;
|
// level = volume_level + 1;
|
||||||
else if(key == 0xA2)
|
// else if(key == 0xA2)
|
||||||
level = 3;
|
// level = 3;
|
||||||
else
|
// else
|
||||||
return;
|
// return;
|
||||||
|
|
||||||
strobe_light_toggle(2);
|
// strobe_light_toggle(2);
|
||||||
|
|
||||||
set_volume_level(level);
|
// set_volume_level(level);
|
||||||
|
|
||||||
api_upload_data_forwarding(0x06, level);
|
// api_upload_data_forwarding(0x06, level);
|
||||||
}
|
//}
|
||||||
|
|
||||||
void api_notify_data_upload(uint8_t *buffer, uint16_t length)
|
void api_notify_data_upload(uint8_t *buffer, uint16_t length)
|
||||||
{
|
{
|
||||||
|
@ -836,26 +884,32 @@ void api_notify_data_forwarding(uint8_t type, uint8_t value)
|
||||||
switch (type)
|
switch (type)
|
||||||
{
|
{
|
||||||
case 0x00:
|
case 0x00:
|
||||||
|
door_front_upload_status = 0x01;
|
||||||
door_front_status_temporary = value;
|
door_front_status_temporary = value;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 0x01:
|
case 0x01:
|
||||||
|
door_back_upload_status = 0x01;
|
||||||
door_back_status_temporary = value;
|
door_back_status_temporary = value;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 0x02:
|
case 0x02:
|
||||||
|
turn_left_upload_status = 0x01;
|
||||||
turn_left_status_temporary = value;
|
turn_left_status_temporary = value;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 0x03:
|
case 0x03:
|
||||||
|
turn_right_upload_status = 0x01;
|
||||||
turn_right_status_temporary = value;
|
turn_right_status_temporary = value;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 0x04:
|
case 0x04:
|
||||||
|
reversing_upload_status = 0x01;
|
||||||
reversing_status_temporary = value;
|
reversing_status_temporary = value;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 0x05:
|
case 0x05:
|
||||||
|
diaodu_upload_status = 0x01;
|
||||||
diaodu_status_temporry = value;
|
diaodu_status_temporry = value;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
|
@ -35,14 +35,6 @@ static void bsp_initialization(void)
|
||||||
/* RS485使能控制脚 初始化, 默认接收 */
|
/* RS485使能控制脚 初始化, 默认接收 */
|
||||||
gpio_config(RS485_CL_PERIPH, RS485_CL_PIN, GPIO_MODE_OUT_PP, GPIO_OSPEED_50MHZ, RESET);
|
gpio_config(RS485_CL_PERIPH, RS485_CL_PIN, GPIO_MODE_OUT_PP, GPIO_OSPEED_50MHZ, RESET);
|
||||||
|
|
||||||
#ifdef USE_LED
|
|
||||||
/* 接收指示灯 控制引脚初始化 */
|
|
||||||
gpio_config(LED_RX_PERIPH, LED_RX_PIN, GPIO_MODE_OUT_PP, GPIO_OSPEED_50MHZ, RESET);
|
|
||||||
|
|
||||||
/* 发送指示灯 控制引脚 初始化 */
|
|
||||||
gpio_config(LED_TX_PERIPH, LED_TX_PIN, GPIO_MODE_OUT_PP, GPIO_OSPEED_50MHZ, RESET);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* 频闪灯 控制引脚 初始化 */
|
/* 频闪灯 控制引脚 初始化 */
|
||||||
gpio_config(LED_STROBE_PERIPH, LED_STROBE_PIN, GPIO_MODE_OUT_PP, GPIO_OSPEED_50MHZ, RESET);
|
gpio_config(LED_STROBE_PERIPH, LED_STROBE_PIN, GPIO_MODE_OUT_PP, GPIO_OSPEED_50MHZ, RESET);
|
||||||
|
|
||||||
|
@ -77,4 +69,13 @@ static void bsp_initialization(void)
|
||||||
gpio_config(V58_STATUS_PERIPH, V58_STATUS_PIN, GPIO_MODE_IN_FLOATING, GPIO_OSPEED_50MHZ, nullptr);
|
gpio_config(V58_STATUS_PERIPH, V58_STATUS_PIN, GPIO_MODE_IN_FLOATING, GPIO_OSPEED_50MHZ, nullptr);
|
||||||
|
|
||||||
iic_config(M62429_SDA_PERIPH, M62429_SDA_PIN, M62429_SCL_PERIPH, M62429_SCL_PIN);
|
iic_config(M62429_SDA_PERIPH, M62429_SDA_PIN, M62429_SCL_PERIPH, M62429_SCL_PIN);
|
||||||
|
|
||||||
|
/* CAN指示灯 控制引脚 初始化 */
|
||||||
|
gpio_config(LED_CAN_PERIPH, LED_CAN_PIN, GPIO_MODE_OUT_PP, GPIO_OSPEED_50MHZ, RESET);
|
||||||
|
|
||||||
|
/* 485指示灯 控制引脚 初始化 */
|
||||||
|
gpio_config(LED_DIAODU_PERIPH, LED_DIAODU_PIN, GPIO_MODE_OUT_PP, GPIO_OSPEED_50MHZ, RESET);
|
||||||
|
|
||||||
|
/* 运行指示灯 控制引脚 初始化 */
|
||||||
|
gpio_config(LED_RUN_PERIPH, LED_RUN_PIN, GPIO_MODE_OUT_PP, GPIO_OSPEED_50MHZ, RESET);
|
||||||
}
|
}
|
|
@ -5,13 +5,10 @@
|
||||||
#define __weak __WEAK
|
#define __weak __WEAK
|
||||||
|
|
||||||
/* Flash容量 (单位KB) */
|
/* Flash容量 (单位KB) */
|
||||||
//#define FMC_CAPACITY_SIZE_64K
|
#define FMC_CAPACITY_SIZE_64K
|
||||||
#define FMC_CAPACITY_SIZE_128K
|
//#define FMC_CAPACITY_SIZE_128K
|
||||||
//#define FMC_CAPACITY_SIZE_512K
|
//#define FMC_CAPACITY_SIZE_512K
|
||||||
|
|
||||||
/* 是否适用LED状态灯 */
|
|
||||||
//#define USE_LED
|
|
||||||
|
|
||||||
#include "gd32f10x_libopt.h"
|
#include "gd32f10x_libopt.h"
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
@ -34,7 +31,6 @@
|
||||||
|
|
||||||
#include "api.h"
|
#include "api.h"
|
||||||
#include "app.h"
|
#include "app.h"
|
||||||
#include "ir.h"
|
|
||||||
#include "diaodu.h"
|
#include "diaodu.h"
|
||||||
#include "setting.h"
|
#include "setting.h"
|
||||||
#include "m62429.h"
|
#include "m62429.h"
|
||||||
|
@ -50,16 +46,6 @@
|
||||||
#define RS485_CL_PERIPH GPIOB
|
#define RS485_CL_PERIPH GPIOB
|
||||||
#define RS485_CL_PIN GPIO_PIN_1
|
#define RS485_CL_PIN GPIO_PIN_1
|
||||||
|
|
||||||
#ifdef USE_LED
|
|
||||||
/* 接收指示灯 控制引脚 */
|
|
||||||
#define LED_RX_PERIPH GPIOB
|
|
||||||
#define LED_RX_PIN GPIO_PIN_10
|
|
||||||
|
|
||||||
/* 发送指示灯 控制引脚 */
|
|
||||||
#define LED_TX_PERIPH GPIOB
|
|
||||||
#define LED_TX_PIN GPIO_PIN_11
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* 音量 Level 4 控制引脚 */
|
/* 音量 Level 4 控制引脚 */
|
||||||
#define VOLUME_4_PERIPH GPIOB
|
#define VOLUME_4_PERIPH GPIOB
|
||||||
#define VOLUME_4_PIN GPIO_PIN_12
|
#define VOLUME_4_PIN GPIO_PIN_12
|
||||||
|
@ -100,10 +86,6 @@
|
||||||
#define REVERSING_PERIPH GPIOB
|
#define REVERSING_PERIPH GPIOB
|
||||||
#define REVERSING_PIN GPIO_PIN_6
|
#define REVERSING_PIN GPIO_PIN_6
|
||||||
|
|
||||||
/* IR 检测引脚 */
|
|
||||||
#define IR_IN_PERIPH GPIOA
|
|
||||||
#define IR_IN_PIN GPIO_PIN_6
|
|
||||||
|
|
||||||
/* 功放控制脚,默认为低,高电平打开 */
|
/* 功放控制脚,默认为低,高电平打开 */
|
||||||
#define AMP_CTRL_PERIPH GPIOB
|
#define AMP_CTRL_PERIPH GPIOB
|
||||||
#define AMP_CTRL_PIN GPIO_PIN_5
|
#define AMP_CTRL_PIN GPIO_PIN_5
|
||||||
|
@ -122,4 +104,13 @@
|
||||||
#define M62429_SDA_PERIPH GPIOB
|
#define M62429_SDA_PERIPH GPIOB
|
||||||
#define M62429_SDA_PIN GPIO_PIN_11
|
#define M62429_SDA_PIN GPIO_PIN_11
|
||||||
|
|
||||||
|
#define LED_CAN_PERIPH GPIOA
|
||||||
|
#define LED_CAN_PIN GPIO_PIN_5
|
||||||
|
|
||||||
|
#define LED_DIAODU_PERIPH GPIOB
|
||||||
|
#define LED_DIAODU_PIN GPIO_PIN_0
|
||||||
|
|
||||||
|
#define LED_RUN_PERIPH GPIOB
|
||||||
|
#define LED_RUN_PIN GPIO_PIN_7
|
||||||
|
|
||||||
#endif
|
#endif
|
|
@ -5,8 +5,8 @@
|
||||||
#define __weak __WEAK
|
#define __weak __WEAK
|
||||||
|
|
||||||
/* Flash容量 (单位KB) */
|
/* Flash容量 (单位KB) */
|
||||||
//#define FMC_CAPACITY_SIZE_64K
|
#define FMC_CAPACITY_SIZE_64K
|
||||||
#define FMC_CAPACITY_SIZE_128K
|
//#define FMC_CAPACITY_SIZE_128K
|
||||||
|
|
||||||
#include "gd32f10x_libopt.h"
|
#include "gd32f10x_libopt.h"
|
||||||
|
|
||||||
|
|
|
@ -30,21 +30,21 @@
|
||||||
arm_rtl_variant="SEGGER"
|
arm_rtl_variant="SEGGER"
|
||||||
arm_simulator_memory_simulation_parameter="ROM;0x08000000;0x00020000;RAM;0x20000000;0x00005000"
|
arm_simulator_memory_simulation_parameter="ROM;0x08000000;0x00020000;RAM;0x20000000;0x00005000"
|
||||||
arm_target_debug_interface_type="ADIv5"
|
arm_target_debug_interface_type="ADIv5"
|
||||||
arm_target_device_name="GD32F103CB"
|
arm_target_device_name="CS32F103C8"
|
||||||
arm_target_interface_type="SWD"
|
arm_target_interface_type="SWD"
|
||||||
c_preprocessor_definitions="ARM_MATH_CM3;GD32F10X_MD;USE_STDPERIPH_DRIVER;__GD32F103_SUBFAMILY;__GD32F10X_FAMILY;__NO_FPU_ENABLE"
|
c_preprocessor_definitions="ARM_MATH_CM3;GD32F10X_MD;USE_STDPERIPH_DRIVER;__GD32F103_SUBFAMILY;__GD32F10X_FAMILY;__NO_FPU_ENABLE"
|
||||||
c_user_include_directories="$(ProjectDir);$(ProjectDir)/CMSIS_5/CMSIS/Core/Include;$(ProjectDir)/User;$(ProjectDir)/User/Api;$(ProjectDir)/User/Libs/Include;$(ProjectDir)/User/Peripheral/AK517;$(ProjectDir)/User/Peripheral/CAN;$(ProjectDir)/User/Peripheral/DiaoDu;$(ProjectDir)/User/Peripheral/IR;$(ProjectDir)/User/Peripheral/M62429;$(ProjectDir)/User/Peripheral/QGEL50X;$(ProjectDir)/User/Peripheral/V58;$(ProjectDir)/../../../../arm/GD32F10x/Driver/Include;$(ProjectDir)/../../../../arm/GD32F10x/System/Include;$(ProjectDir)/../../../../arm/GD32F10x/Utils/Byte"
|
c_user_include_directories="$(ProjectDir);$(ProjectDir)/CMSIS_5/CMSIS/Core/Include;$(ProjectDir)/User;$(ProjectDir)/User/Api;$(ProjectDir)/User/Libs/Include;$(ProjectDir)/User/Peripheral/AK517;$(ProjectDir)/User/Peripheral/CAN;$(ProjectDir)/User/Peripheral/DiaoDu;$(ProjectDir)/User/Peripheral/M62429;$(ProjectDir)/User/Peripheral/QGEL50X;$(ProjectDir)/User/Peripheral/V58;$(ProjectDir)/../../../../arm/GD32F10x/Driver/Include;$(ProjectDir)/../../../../arm/GD32F10x/System/Include;$(ProjectDir)/../../../../arm/GD32F10x/Utils/Byte"
|
||||||
debug_register_definition_file="$(ProjectDir)/GD32F10x_MD_Registers.xml"
|
debug_register_definition_file="$(ProjectDir)/GD32F10x_MD_Registers.xml"
|
||||||
debug_stack_pointer_start="__stack_end__"
|
debug_stack_pointer_start="__stack_end__"
|
||||||
debug_start_from_entry_point_symbol="Yes"
|
debug_start_from_entry_point_symbol="Yes"
|
||||||
debug_target_connection="J-Link"
|
debug_target_connection="J-Link"
|
||||||
gcc_entry_point="Reset_Handler"
|
gcc_entry_point="Reset_Handler"
|
||||||
link_linker_script_file="$(ProjectDir)/GD32F10x_Flash.icf"
|
link_linker_script_file="$(ProjectDir)/GD32F10x_Flash.icf"
|
||||||
linker_memory_map_file="$(ProjectDir)/GD32F103CB_MemoryMap.xml"
|
linker_memory_map_file="$(ProjectDir)/GD32F103C8_MemoryMap.xml"
|
||||||
linker_output_format="bin"
|
linker_output_format="bin"
|
||||||
linker_printf_fp_enabled="Float"
|
linker_printf_fp_enabled="Float"
|
||||||
linker_section_placements_segments="FLASH1 RX 0x08000000 0x00020000;RAM1 RWX 0x20000000 0x00005000;"
|
linker_section_placements_segments="FLASH1 RX 0x08000000 0x00020000;RAM1 RWX 0x20000000 0x00005000;"
|
||||||
macros="DeviceHeaderFile=$(PackagesDir)/GD32F10x/Device/Include/gd32f10x.h;DeviceSystemFile=$(PackagesDir)/GD32F10x/Device/Source/system_gd32f10x.c;DeviceVectorsFile=$(PackagesDir)/GD32F10x/Source/gd32f10x_md_Vectors.s;DeviceFamily=GD32F10x;DeviceSubFamily=GD32F103;Target=GD32F103CB"
|
macros="DeviceHeaderFile=$(PackagesDir)/GD32F10x/Device/Include/gd32f10x.h;DeviceSystemFile=$(PackagesDir)/GD32F10x/Device/Source/system_gd32f10x.c;DeviceVectorsFile=$(PackagesDir)/GD32F10x/Source/gd32f10x_md_Vectors.s;DeviceFamily=GD32F10x;DeviceSubFamily=GD32F103;Target=GD32F103C8"
|
||||||
project_directory="App"
|
project_directory="App"
|
||||||
project_type="Executable"
|
project_type="Executable"
|
||||||
target_reset_script="Reset();"
|
target_reset_script="Reset();"
|
||||||
|
@ -165,10 +165,6 @@
|
||||||
<file file_name="User/Peripheral/DiaoDu/diaodu.c" />
|
<file file_name="User/Peripheral/DiaoDu/diaodu.c" />
|
||||||
<file file_name="User/Peripheral/DiaoDu/diaodu.h" />
|
<file file_name="User/Peripheral/DiaoDu/diaodu.h" />
|
||||||
</folder>
|
</folder>
|
||||||
<folder Name="IR">
|
|
||||||
<file file_name="User/Peripheral/IR/ir.c" />
|
|
||||||
<file file_name="User/Peripheral/IR/ir.h" />
|
|
||||||
</folder>
|
|
||||||
<folder Name="M62429">
|
<folder Name="M62429">
|
||||||
<file file_name="User/Peripheral/M62429/m62429.c" />
|
<file file_name="User/Peripheral/M62429/m62429.c" />
|
||||||
<file file_name="User/Peripheral/M62429/m62429.h" />
|
<file file_name="User/Peripheral/M62429/m62429.h" />
|
||||||
|
@ -202,7 +198,7 @@
|
||||||
arm_rtl_variant="SEGGER"
|
arm_rtl_variant="SEGGER"
|
||||||
arm_simulator_memory_simulation_parameter="ROM;0x08000000;0x00020000;RAM;0x20000000;0x00005000"
|
arm_simulator_memory_simulation_parameter="ROM;0x08000000;0x00020000;RAM;0x20000000;0x00005000"
|
||||||
arm_target_debug_interface_type="ADIv5"
|
arm_target_debug_interface_type="ADIv5"
|
||||||
arm_target_device_name="GD32F103CB"
|
arm_target_device_name="GD32F103C8"
|
||||||
arm_target_interface_type="SWD"
|
arm_target_interface_type="SWD"
|
||||||
c_preprocessor_definitions="ARM_MATH_CM3;GD32F10X_MD;USE_STDPERIPH_DRIVER;__GD32F103_SUBFAMILY;__GD32F10X_FAMILY;__NO_FPU_ENABLE"
|
c_preprocessor_definitions="ARM_MATH_CM3;GD32F10X_MD;USE_STDPERIPH_DRIVER;__GD32F103_SUBFAMILY;__GD32F10X_FAMILY;__NO_FPU_ENABLE"
|
||||||
c_user_include_directories="$(ProjectDir);$(ProjectDir)/CMSIS_5/CMSIS/Core/Include;$(ProjectDir)/User;$(ProjectDir)/../../../../arm/GD32F10x/Driver/Include;$(ProjectDir)/../../../../arm/GD32F10x/System/Include;$(ProjectDir)/../../../../arm/GD32F10x/Utils/Byte"
|
c_user_include_directories="$(ProjectDir);$(ProjectDir)/CMSIS_5/CMSIS/Core/Include;$(ProjectDir)/User;$(ProjectDir)/../../../../arm/GD32F10x/Driver/Include;$(ProjectDir)/../../../../arm/GD32F10x/System/Include;$(ProjectDir)/../../../../arm/GD32F10x/Utils/Byte"
|
||||||
|
@ -212,10 +208,10 @@
|
||||||
debug_target_connection="J-Link"
|
debug_target_connection="J-Link"
|
||||||
gcc_entry_point="Reset_Handler"
|
gcc_entry_point="Reset_Handler"
|
||||||
link_linker_script_file="$(ProjectDir)/GD32F10x_Flash.icf"
|
link_linker_script_file="$(ProjectDir)/GD32F10x_Flash.icf"
|
||||||
linker_memory_map_file="$(ProjectDir)/GD32F103CB_MemoryMap.xml"
|
linker_memory_map_file="$(ProjectDir)/GD32F103C8_MemoryMap.xml"
|
||||||
linker_output_format="hex"
|
linker_output_format="hex"
|
||||||
linker_section_placements_segments="FLASH1 RX 0x08000000 0x00020000;RAM1 RWX 0x20000000 0x00005000;"
|
linker_section_placements_segments="FLASH1 RX 0x08000000 0x00010000;RAM1 RWX 0x20000000 0x00005000;"
|
||||||
macros="DeviceHeaderFile=$(PackagesDir)/GD32F10x/Device/Include/gd32f10x.h;DeviceSystemFile=$(PackagesDir)/GD32F10x/Device/Source/system_gd32f10x.c;DeviceVectorsFile=$(PackagesDir)/GD32F10x/Source/gd32f10x_md_Vectors.s;DeviceFamily=GD32F10x;DeviceSubFamily=GD32F103;Target=GD32F103CB"
|
macros="DeviceHeaderFile=$(PackagesDir)/GD32F10x/Device/Include/gd32f10x.h;DeviceSystemFile=$(PackagesDir)/GD32F10x/Device/Source/system_gd32f10x.c;DeviceVectorsFile=$(PackagesDir)/GD32F10x/Source/gd32f10x_md_Vectors.s;DeviceFamily=GD32F10x;DeviceSubFamily=GD32F103;Target=GD32F103C8"
|
||||||
project_directory="Bootloader"
|
project_directory="Bootloader"
|
||||||
project_type="Executable"
|
project_type="Executable"
|
||||||
target_reset_script="Reset();"
|
target_reset_script="Reset();"
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
<session>
|
<session>
|
||||||
<Bookmarks/>
|
<Bookmarks/>
|
||||||
<Breakpoints groups="Breakpoints" active_group="Breakpoints">
|
<Breakpoints groups="Breakpoints" active_group="Breakpoints">
|
||||||
|
<BreakpointListItem trigger="" line="218" counter="0" hardwareBreakpoint="" isFunctionBreakpoint="false" action="" expression="" group="Breakpoints" type="Breakpoint" state="2" filename="App/User/app.c" useHWbreakpoint="false"/>
|
||||||
<BreakpointListItem trigger="" line="92" counter="0" hardwareBreakpoint="" isFunctionBreakpoint="false" action="" expression="" group="Breakpoints" type="Breakpoint" state="2" filename="../../../arm/GD32F10x/System/Source/task.c" useHWbreakpoint="false"/>
|
<BreakpointListItem trigger="" line="92" counter="0" hardwareBreakpoint="" isFunctionBreakpoint="false" action="" expression="" group="Breakpoints" type="Breakpoint" state="2" filename="../../../arm/GD32F10x/System/Source/task.c" useHWbreakpoint="false"/>
|
||||||
</Breakpoints>
|
</Breakpoints>
|
||||||
<ExecutionProfileWindow/>
|
<ExecutionProfileWindow/>
|
||||||
|
@ -37,7 +38,6 @@
|
||||||
<ProjectSessionItem path="GD32F10x;App;User"/>
|
<ProjectSessionItem path="GD32F10x;App;User"/>
|
||||||
<ProjectSessionItem path="GD32F10x;App;User;Api"/>
|
<ProjectSessionItem path="GD32F10x;App;User;Api"/>
|
||||||
<ProjectSessionItem path="GD32F10x;App;User;Peripheral"/>
|
<ProjectSessionItem path="GD32F10x;App;User;Peripheral"/>
|
||||||
<ProjectSessionItem path="GD32F10x;App;User;Peripheral;IR"/>
|
|
||||||
<ProjectSessionItem path="GD32F10x;App;User;Peripheral;M62429"/>
|
<ProjectSessionItem path="GD32F10x;App;User;Peripheral;M62429"/>
|
||||||
<ProjectSessionItem path="GD32F10x;App;User;Peripheral;V58"/>
|
<ProjectSessionItem path="GD32F10x;App;User;Peripheral;V58"/>
|
||||||
<ProjectSessionItem path="GD32F10x;Bootloader"/>
|
<ProjectSessionItem path="GD32F10x;Bootloader"/>
|
||||||
|
@ -89,27 +89,26 @@
|
||||||
</Watch4>
|
</Watch4>
|
||||||
<Files>
|
<Files>
|
||||||
<SessionOpenFile windowGroup="DockEditLeft" x="0" y="5" useTextEdit="1" path="App/main.c" left="0" top="0" codecName="UTF-8"/>
|
<SessionOpenFile windowGroup="DockEditLeft" x="0" y="5" useTextEdit="1" path="App/main.c" left="0" top="0" codecName="UTF-8"/>
|
||||||
<SessionOpenFile windowGroup="DockEditLeft" x="2" y="7" useTextEdit="1" openedFrom="F:/Works/Tvis/AVS/GD32F103C8T6/App/User/app.c" path="App/main.h" left="0" top="7" codecName="UTF-8"/>
|
<SessionOpenFile windowGroup="DockEditLeft" x="22" y="111" useTextEdit="1" openedFrom="F:/Works/Tvis/AVS/GD32F103C8T6/App/User/app.c" path="App/main.h" left="0" top="61" codecName="UTF-8"/>
|
||||||
<SessionOpenFile windowGroup="DockEditLeft" x="0" y="747" useTextEdit="1" openedFrom="X:/Works/Tvis/AVS/V1.20/App/User/Peripheral/IR/ir.c" path="App/User/app.c" left="0" top="732" codecName="UTF-8"/>
|
<SessionOpenFile windowGroup="DockEditLeft" x="19" y="695" useTextEdit="1" openedFrom="X:/Works/Tvis/AVS/V1.20/App/User/Peripheral/IR/ir.c" path="App/User/app.c" left="0" selected="1" top="662" codecName="UTF-8"/>
|
||||||
<SessionOpenFile windowGroup="DockEditLeft" x="0" y="56" useTextEdit="1" openedFrom="X:/Works/Tvis/AVS/GD32F103C8T6/App/User/app.c" path="App/User/Peripheral/V58/v58.c" left="0" top="56" codecName="UTF-8"/>
|
<SessionOpenFile windowGroup="DockEditLeft" x="52" y="24" useTextEdit="1" path="App/User/Api/api.h" left="0" top="18" codecName="UTF-8"/>
|
||||||
<SessionOpenFile windowGroup="DockEditLeft" x="49" y="38" useTextEdit="1" path="App/User/Api/api.h" left="0" selected="1" top="18" codecName="UTF-8"/>
|
<SessionOpenFile windowGroup="DockEditLeft" x="38" y="199" useTextEdit="1" openedFrom="X:/Works/Tvis/AVS/GD32F103C8T6/App/User/Api/api.h" path="App/User/Api/api.c" left="0" top="187" codecName="UTF-8"/>
|
||||||
<SessionOpenFile windowGroup="DockEditLeft" x="38" y="199" useTextEdit="1" openedFrom="X:/Works/Tvis/AVS/GD32F103C8T6/App/User/Api/api.h" path="App/User/Api/api.c" left="0" top="170" codecName="UTF-8"/>
|
<SessionOpenFile windowGroup="DockEditLeft" x="0" y="56" useTextEdit="1" openedFrom="F:/Works/Tvis/AVS/GD32F103C8T6(1.1)/App/main.c" path="../../../arm/GD32F10x/System/Source/task.c" left="0" top="34" codecName="UTF-8"/>
|
||||||
<SessionOpenFile windowGroup="DockEditLeft" x="0" y="56" useTextEdit="1" openedFrom="F:/Works/Tvis/AVS/GD32F103C8T6(1.1)/App/main.c" path="../../../arm/GD32F10x/System/Source/task.c" left="0" top="55" codecName="UTF-8"/>
|
|
||||||
<SessionOpenFile windowGroup="DockEditLeft" x="24" y="4" useTextEdit="1" openedFrom="F:/Works/Tvis/AVS/GD32F103C8T6/App/User/Api/api.c" path="../../../arm/GD32F10x/System/Source/setting.c" left="9" top="1" codecName="UTF-8"/>
|
<SessionOpenFile windowGroup="DockEditLeft" x="24" y="4" useTextEdit="1" openedFrom="F:/Works/Tvis/AVS/GD32F103C8T6/App/User/Api/api.c" path="../../../arm/GD32F10x/System/Source/setting.c" left="9" top="1" codecName="UTF-8"/>
|
||||||
<SessionOpenFile windowGroup="DockEditLeft" x="8" y="5" useTextEdit="1" openedFrom="F:/Works/arm/GD32F10x/System/Source/setting.c" path="../../../arm/GD32F10x/System/Include/setting.h" left="0" top="1" codecName="UTF-8"/>
|
<SessionOpenFile windowGroup="DockEditLeft" x="8" y="5" useTextEdit="1" openedFrom="F:/Works/arm/GD32F10x/System/Source/setting.c" path="../../../arm/GD32F10x/System/Include/setting.h" left="0" top="1" codecName="UTF-8"/>
|
||||||
<SessionOpenFile windowGroup="DockEditLeft" x="26" y="20" useTextEdit="1" path="App/User/Peripheral/CAN/can_parsing.c" left="11" top="17" codecName="UTF-8"/>
|
<SessionOpenFile windowGroup="DockEditLeft" x="26" y="20" useTextEdit="1" path="App/User/Peripheral/CAN/can_parsing.c" left="11" top="17" codecName="UTF-8"/>
|
||||||
<SessionOpenFile windowGroup="DockEditLeft" x="0" y="0" useTextEdit="1" path="App/User/Peripheral/DiaoDu/diaodu.c" left="0" top="0" codecName="UTF-8"/>
|
<SessionOpenFile windowGroup="DockEditLeft" x="0" y="0" useTextEdit="1" path="App/User/Peripheral/DiaoDu/diaodu.c" left="0" top="0" codecName="UTF-8"/>
|
||||||
<SessionOpenFile windowGroup="DockEditLeft" x="5" y="99" useTextEdit="1" path="App/User/Peripheral/M62429/m62429.c" left="0" top="85" codecName="UTF-8"/>
|
<SessionOpenFile windowGroup="DockEditLeft" x="5" y="99" useTextEdit="1" path="App/User/Peripheral/M62429/m62429.c" left="0" top="55" codecName="UTF-8"/>
|
||||||
<SessionOpenFile windowGroup="DockEditLeft" x="0" y="0" useTextEdit="1" path="App/User/Peripheral/IR/ir.h" left="0" top="0" codecName="UTF-8"/>
|
<SessionOpenFile windowGroup="DockEditLeft" x="0" y="0" useTextEdit="1" path="App/User/Peripheral/IR/ir.h" left="0" top="0" codecName="UTF-8"/>
|
||||||
<SessionOpenFile windowGroup="DockEditLeft" x="55" y="72" useTextEdit="1" path="App/User/Peripheral/IR/ir.c" left="0" top="64" codecName="UTF-8"/>
|
<SessionOpenFile windowGroup="DockEditLeft" x="55" y="72" useTextEdit="1" path="App/User/Peripheral/IR/ir.c" left="0" top="64" codecName="UTF-8"/>
|
||||||
<SessionOpenFile windowGroup="DockEditLeft" x="35" y="6" useTextEdit="1" path="App/User/Peripheral/M62429/m62429.h" left="20" top="3" codecName="UTF-8"/>
|
<SessionOpenFile windowGroup="DockEditLeft" x="35" y="6" useTextEdit="1" path="App/User/Peripheral/M62429/m62429.h" left="20" top="3" codecName="UTF-8"/>
|
||||||
<SessionOpenFile windowGroup="DockEditLeft" x="32" y="16" useTextEdit="1" path="App/User/Peripheral/V58/v58.h" left="17" top="13" codecName="UTF-8"/>
|
<SessionOpenFile windowGroup="DockEditLeft" x="32" y="16" useTextEdit="1" path="App/User/Peripheral/V58/v58.h" left="17" top="13" codecName="UTF-8"/>
|
||||||
<SessionOpenFile windowGroup="DockEditLeft" x="23" y="198" useTextEdit="1" openedFrom="F:/Works/Tvis/AVS/GD32F103C8T6(1.1)/App/main.c" path="../../../arm/GD32F10x/System/Source/can.c" left="0" top="177" codecName="UTF-8"/>
|
<SessionOpenFile windowGroup="DockEditLeft" x="23" y="198" useTextEdit="1" openedFrom="F:/Works/Tvis/AVS/GD32F103C8T6(1.1)/App/main.c" path="../../../arm/GD32F10x/System/Source/can.c" left="0" top="173" codecName="UTF-8"/>
|
||||||
<SessionOpenFile windowGroup="DockEditLeft" x="0" y="122" useTextEdit="1" openedFrom="F:/Works/arm/GD32F10x/System/Source/can.c" path="../../../arm/GD32F10x/Driver/Source/gd32f10x_rcu.c" left="0" top="119" codecName="UTF-8"/>
|
<SessionOpenFile windowGroup="DockEditLeft" x="0" y="122" useTextEdit="1" openedFrom="F:/Works/arm/GD32F10x/System/Source/can.c" path="../../../arm/GD32F10x/Driver/Source/gd32f10x_rcu.c" left="0" top="119" codecName="UTF-8"/>
|
||||||
<SessionOpenFile windowGroup="DockEditLeft" x="41" y="36" useTextEdit="1" path="Bootloader/main.h" left="0" top="10" codecName="Default"/>
|
<SessionOpenFile windowGroup="DockEditLeft" x="41" y="36" useTextEdit="1" path="Bootloader/main.h" left="0" top="2" codecName="UTF-8"/>
|
||||||
<SessionOpenFile windowGroup="DockEditLeft" x="8" y="32" useTextEdit="1" path="Bootloader/main.c" left="0" top="14" codecName="Default"/>
|
<SessionOpenFile windowGroup="DockEditLeft" x="8" y="32" useTextEdit="1" path="Bootloader/main.c" left="0" top="14" codecName="UTF-8"/>
|
||||||
<SessionOpenFile windowGroup="DockEditLeft" x="73" y="117" useTextEdit="1" path="GD32F10x.emProject" left="0" top="110" codecName="Default"/>
|
<SessionOpenFile windowGroup="DockEditLeft" x="73" y="117" useTextEdit="1" path="GD32F10x.emProject" left="0" top="110" codecName="UTF-8"/>
|
||||||
<SessionOpenFile windowGroup="DockEditLeft" x="9" y="6" useTextEdit="1" path="../../../arm/GD32F10x/System/Include/system.h" left="0" top="0" codecName="Default"/>
|
<SessionOpenFile windowGroup="DockEditLeft" x="9" y="6" useTextEdit="1" path="../../../arm/GD32F10x/System/Include/system.h" left="0" top="0" codecName="UTF-8"/>
|
||||||
</Files>
|
</Files>
|
||||||
<EMStudioWindow activeProject="App" fileDialogDefaultFilter="*" autoConnectTarget="J-Link" buildConfiguration="Debug" sessionSettings="" debugSearchFileMap="/Volumes/HIKVISION/Works/Tvis/AVS/GD32F103C8T6/App/SEGGER_THUMB_Startup.s
F:/Works/Tvis/AVS/GD32F103C8T6/App/SEGGER_THUMB_Startup.s
CMSIS_5/CMSIS/Core/Include/cmsis_gcc.h
/Volumes/HIKVISION/Works/Tvis/AVS/GD32F103C8T6/App/User/Peripheral/AK517/ak517.h
CMSIS_5/CMSIS/Core/Include/core_cm3.h
/Volumes/HIKVISION/Works/Tvis/AVS/GD32F103C8T6/App/User/Peripheral/AK517/ak517.c" fileDialogInitialDirectory="/Volumes/HIKVISION/Works/Tvis/AVS/GD32F103C8T6/App/User/Peripheral/QGEL50X" debugSearchPath="" autoConnectCapabilities="3711"/>
|
<EMStudioWindow activeProject="App" fileDialogDefaultFilter="*.c" autoConnectTarget="J-Link" buildConfiguration="Debug" sessionSettings="" debugSearchFileMap="/Volumes/HIKVISION/Works/Tvis/AVS/GD32F103C8T6/App/SEGGER_THUMB_Startup.s
F:/Works/Tvis/AVS/GD32F103C8T6/App/SEGGER_THUMB_Startup.s
CMSIS_5/CMSIS/Core/Include/cmsis_gcc.h
/Volumes/HIKVISION/Works/Tvis/AVS/GD32F103C8T6/App/User/Peripheral/AK517/ak517.h
CMSIS_5/CMSIS/Core/Include/core_cm3.h
/Volumes/HIKVISION/Works/Tvis/AVS/GD32F103C8T6/App/User/Peripheral/AK517/ak517.c
User\Peripheral\V58/v58.c
/Volumes/HIKVISION/Works/Tvis/AVS/GD32F103C8T6/App/User/Peripheral/V58/v58.c" fileDialogInitialDirectory="/Volumes/HIKVISION/Works/Tvis/AVS/GD32F103C8T6/App/User/Peripheral/V58" debugSearchPath="" autoConnectCapabilities="3199"/>
|
||||||
</session>
|
</session>
|
||||||
|
|
|
@ -77,7 +77,6 @@
|
||||||
<ComboBox Name="m_can_type" Width="Auto">
|
<ComboBox Name="m_can_type" Width="Auto">
|
||||||
<ComboBoxItem Content="BYD一代"/>
|
<ComboBoxItem Content="BYD一代"/>
|
||||||
<ComboBoxItem Content="BYD二代"/>
|
<ComboBoxItem Content="BYD二代"/>
|
||||||
<ComboBoxItem Content="BYD三代"/>
|
|
||||||
<ComboBoxItem Content="宇通"/>
|
<ComboBoxItem Content="宇通"/>
|
||||||
<ComboBoxItem Content="金龙"/>
|
<ComboBoxItem Content="金龙"/>
|
||||||
<ComboBoxItem Content="安凯"/>
|
<ComboBoxItem Content="安凯"/>
|
||||||
|
|
BIN
协议文档/通信协议说明.docx
BIN
协议文档/通信协议说明.docx
Binary file not shown.
Loading…
Reference in New Issue
Block a user