diff --git a/interface_can.c b/interface_can.c index 9c835a2..5c78e5d 100644 --- a/interface_can.c +++ b/interface_can.c @@ -12,37 +12,37 @@ -uint32_t OTA_CANTxID = 0x02;//ĬÈÏ·¢ËÍIDΪ0x02 -uint32_t OTA_CANRxID = 0x01;//ĬÈϽÓÊÕIDΪ0x01 -uint32_t WDT_CANRxID = 0x03;//ĬÈϽÓÊÕIDΪ0x03 +uint32_t OTA_CANTxID = 0x02;//Ĭ�Ϸ���IDΪ0x02 +uint32_t OTA_CANRxID = 0x01;//Ĭ�Ͻ���IDΪ0x01 +uint32_t WDT_CANRxID = 0x03;//Ĭ�Ͻ���IDΪ0x03 Timer can_timer_interface1; Timer can_timer_interface2; -bool ecu_online = 0;//0µôÏߣ¬1ÔÚÏß +bool ecu_online = 0;//0���ߣ�1���� UnCanFault can_fault_info = { - .bit_data.navigator_count = 0, //µ¼º½ÒǼÆÊýÆ÷ - .bit_data.motor1_count = 0, //ÊÖ¶¯Êý¾Ý¼ÆÊýÆ÷ - .bit_data.motor2_count = 0, //ÊÖ¶¯Êý¾Ý¼ÆÊýÆ÷ - .bit_data.bms_count = 0, //ÊÖ¶¯Êý¾Ý¼ÆÊýÆ÷ - .bit_data.temperature_count = 0, //ζȼÆÊýÆ÷ - .bit_data.remote_count = 0, //Ò£¿Ø¼ÆÊýÆ÷ + .bit_data.navigator_count = 0, //�����Ǽ����� + .bit_data.motor1_count = 0, //�ֶ����ݼ����� + .bit_data.motor2_count = 0, //�ֶ����ݼ����� + .bit_data.bms_count = 0, //�ֶ����ݼ����� + .bit_data.temperature_count = 0, //�¶ȼ����� + .bit_data.remote_count = 0, //ң�ؼ����� - .bit_data.navigator_state = 0, //×Ô¶¯Êý¾Ý¼ÆÊýÆ÷ - .bit_data.motor1_state = 0, //ÊÖ¶¯Êý¾Ý¼ÆÊýÆ÷ - .bit_data.motor2_state = 0, //ÊÖ¶¯Êý¾Ý¼ÆÊýÆ÷ - .bit_data.bms_state = 0, //ÊÖ¶¯Êý¾Ý¼ÆÊýÆ÷ - .bit_data.temperature_state = 0, //ζÈ״̬ - .bit_data.remote_state = 0, //Ò£¿Ø×´Ì¬ + .bit_data.navigator_state = 0, //�Զ����ݼ����� + .bit_data.motor1_state = 0, //�ֶ����ݼ����� + .bit_data.motor2_state = 0, //�ֶ����ݼ����� + .bit_data.bms_state = 0, //�ֶ����ݼ����� + .bit_data.temperature_state = 0, //�¶�״̬ + .bit_data.remote_state = 0, //ң��״̬ }; // -//StrCanFifoQueue can0_Queue;//8Ö¡can»º´æ£¬·¢ËͶÓÁÐ +//StrCanFifoQueue can0_Queue;//8Ö¡can���棬���Ͷ��� //StrCanFifoQueue can1_Queue; //StrCanFifoQueue can2_Queue; //StrCanFifoQueue can3_Queue; @@ -52,19 +52,19 @@ UnCanFault can_fault_info = { //StrCanFifoQueue can7_Queue; -//bool busoff_occur_flag = false;//busoff±êÖ¾ +//bool busoff_occur_flag = false;//busoff��־ -bool can_0_busoff_flag = false;//busoff±êÖ¾ -bool can_1_busoff_flag = false;//busoff±êÖ¾ -bool can_2_busoff_flag = false;//busoff±êÖ¾ -bool can_3_busoff_flag = false;//busoff±êÖ¾ -bool can_4_busoff_flag = false;//busoff±êÖ¾ -bool can_5_busoff_flag = false;//busoff±êÖ¾ -bool can_6_busoff_flag = false;//busoff±êÖ¾ -bool can_7_busoff_flag = false;//busoff±êÖ¾ +bool can_0_busoff_flag = false;//busoff��־ +bool can_1_busoff_flag = false;//busoff��־ +bool can_2_busoff_flag = false;//busoff��־ +bool can_3_busoff_flag = false;//busoff��־ +bool can_4_busoff_flag = false;//busoff��־ +bool can_5_busoff_flag = false;//busoff��־ +bool can_6_busoff_flag = false;//busoff��־ +bool can_7_busoff_flag = false;//busoff��־ -flexcan_handle_t can_handle_0;//can³õʼ»¯½á¹¹Ìå +flexcan_handle_t can_handle_0;//can��ʼ���ṹ�� flexcan_handle_t can_handle_1; flexcan_handle_t can_handle_2; flexcan_handle_t can_handle_3; @@ -105,7 +105,7 @@ uint8_t flexcan_config_rx_fifo(flexcan_handle_t *handle, { flexcan_frame_t *rx_fifo_frame; //------------------------------------------------------------------------------ - if(CAN_INDEX_0 == (handle->controller_id))//¸ù¾ÝË÷ÒýÑ¡Ôñ²»Í¬µÄÖжϺÅÒÔ¼°»ùµØÖ· + if(CAN_INDEX_0 == (handle->controller_id))//��������ѡ��ͬ���жϺ��Լ�����ַ { rx_fifo_frame = &fifo_Buf_0; rx_fifo_frame->dataBuffer = &fifo_Data_0[0]; @@ -150,7 +150,7 @@ uint8_t flexcan_config_rx_fifo(flexcan_handle_t *handle, return 0; } - flexcan_set_rx_fifo_config(handle, config);//ÅäÖÃfifo½ÓÊÕ + flexcan_set_rx_fifo_config(handle, config);//����fifo���� for (uint8_t i = 0; i < USED_MB_FOR_FIFO; i++) { @@ -235,14 +235,14 @@ void flexcan_Receive_callback_0(flexcan_handle_t *handle, case FLEXCAN_RX_FIFO_IDLE: - if(TEMP_MODULE_INPUT_ID_1 == (buf->id))//ÎÂ¶È + if(TEMP_MODULE_INPUT_ID_1 == (buf->id))//�¶� { for(i = 0; i < (buf->length); i++) { un_sw_sample.arr[i] = buf->dataBuffer[i]; } - //·¢ÉäÐźŠ- publishMessage(&un_sw_sample, 1);//·¢ÉäÐźŠ+ //�����ź� + publishMessage(&un_sw_sample, 1);//�����ź� } break; @@ -303,7 +303,7 @@ void flexcan_Receive_callback_1(flexcan_handle_t *handle, { un_motor_input1.arr[i] = buf->dataBuffer[i]; } - //·¢ÉäÐźŠ+ //�����ź� publishMessage(&un_motor_input1, 1); } else if( LEFT_FRONT_MOTOR_INPUT2 == (buf->id) ) @@ -312,8 +312,8 @@ void flexcan_Receive_callback_1(flexcan_handle_t *handle, { un_motor_temp1.arr[i] = buf->dataBuffer[i]; } - //·¢ÉäÐźŠ- publishMessage(&un_motor_temp1, 1);//·¢ÉäÐźŠ+ //�����ź� + publishMessage(&un_motor_temp1, 1);//�����ź� } else if( LEFT_REAR_MOTOR2_INPUT1 == (buf->id) )// { @@ -322,8 +322,8 @@ void flexcan_Receive_callback_1(flexcan_handle_t *handle, { un_motor_input3.arr[i] = buf->dataBuffer[i]; } - //·¢ÉäÐźŠ-// publishMessage(&un_motor_input3, 1); //ÐÞ¸ÄΪ + //�����ź� +// publishMessage(&un_motor_input3, 1); //�޸�Ϊ } else if( LEFT_REAR_MOTOR2_INPUT2 == (buf->id) ) { @@ -331,8 +331,8 @@ void flexcan_Receive_callback_1(flexcan_handle_t *handle, { un_motor_temp3.arr[i] = buf->dataBuffer[i]; } - //·¢ÉäÐźŠ- publishMessage(&un_motor_temp3, 1);//·¢ÉäÐźŠ+ //�����ź� + publishMessage(&un_motor_temp3, 1);//�����ź� } else{} break; @@ -387,7 +387,7 @@ void flexcan_Receive_callback_2(flexcan_handle_t *handle, { un_motor_input2.arr[i] = buf->dataBuffer[i]; } - //·¢ÉäÐźŠ+ //�����ź� publishMessage(&un_motor_input2, 1); } else if( RIGHT_FRONT_MOTOR_INPUT2 == (buf->id) ) @@ -396,8 +396,8 @@ void flexcan_Receive_callback_2(flexcan_handle_t *handle, { un_motor_temp2.arr[i] = buf->dataBuffer[i]; } - //·¢ÉäÐźŠ- publishMessage(&un_motor_temp2, 1);//·¢ÉäÐźŠ+ //�����ź� + publishMessage(&un_motor_temp2, 1);//�����ź� } else if( RIGHT_REAR_MOTOR_INPUT1 == (buf->id) )// { @@ -406,7 +406,7 @@ void flexcan_Receive_callback_2(flexcan_handle_t *handle, { un_motor_input4.arr[i] = buf->dataBuffer[i]; } - //·¢ÉäÐźŠ+ //�����ź� publishMessage(&un_motor_input4, 1); } else if( RIGHT_REAR_MOTOR_INPUT2 == (buf->id) ) @@ -415,8 +415,8 @@ void flexcan_Receive_callback_2(flexcan_handle_t *handle, { un_motor_temp4.arr[i] = buf->dataBuffer[i]; } - //·¢ÉäÐźŠ- publishMessage(&un_motor_temp4, 1);//·¢ÉäÐźŠ+ //�����ź� + publishMessage(&un_motor_temp4, 1);//�����ź� } else{} break; @@ -480,7 +480,7 @@ void flexcan_Receive_callback_3(flexcan_handle_t *handle, { un_bms_input.arr[i+8] = buf->dataBuffer[i]; } - //·¢ÉäÐźŠ+ //�����ź� publishMessage(&un_bms_input, 1); } else{} @@ -612,16 +612,16 @@ void flexcan_Receive_callback_6(flexcan_handle_t *handle, break; case FLEXCAN_RX_FIFO_IDLE: - if(OTA_CANRxID == (buf->id))//IDΪ1£¬ bootÏÂÔØÅäÖà + if(OTA_CANRxID == (buf->id))//IDΪ1�� boot�������� { boot_can_flag = true; FrameHeader = ( (buf->dataBuffer[0] << 8) | (buf->dataBuffer[1]) ); } - else if(WDT_CANRxID == (buf->id))//½ÓÊÕµ½Î¹¹·ID + else if(WDT_CANRxID == (buf->id))//���յ�ι��ID { if(FEEDDOG_HEADER == ( (buf->dataBuffer[0] << 8) | (buf->dataBuffer[1]) )) { - WDTReFresh_flag = true;//¸üÐÂι¹·±êÖ¾ + WDTReFresh_flag = true;//����ι����־ printf("Feed dog flag received %d\n",getCurrentTime()); } } @@ -680,14 +680,14 @@ void flexcan_Receive_callback_7(flexcan_handle_t *handle, break; case FLEXCAN_RX_FIFO_IDLE: - if(REMOTE_ID == (buf->id))//Ò£¿ØÆ÷CAN + if(REMOTE_ID == (buf->id))//ң����CAN { can_fault_info.bit_data.remote_count ++; for(i = 0; i < (buf->length); i++) { un_remote_control_input.arr[i] = buf->dataBuffer[i]; } - //·¢ÉäÐźŠ+ //�����ź� publishMessage(&un_remote_control_input, 1); // printf("ori_remote_stop: %d\n", un_remote_control_input.bit_data.switch_b); @@ -716,16 +716,16 @@ void flexcan_Receive_callback_7(flexcan_handle_t *handle, } -//fifo_config Â˲¨ÉèÖà -//can_config ²¨ÌØÂÊÒÔ¼°ÆäËûÉèÖà -//call_back Öжϻص÷º¯Êý +//fifo_config �˲����� +//can_config �������Լ��������� +//call_back �жϻص����� uint8_t initialization_Flexcan(uint8_t can_index, const flexcan_config_t *can_config, flexcan_rx_fifo_config_t *fifo_config, flexcan_transfer_callback_t call_back) { flexcan_handle_t *handle; uint8_t can_irq_num = 0; uint32_t can_reg_base = 0; //------------------------------------------------------------------ - if(FLEXCAN7 == can_index)//¸ù¾ÝË÷ÒýÑ¡Ôñ²»Í¬µÄÖжϺÅÒÔ¼°»ùµØÖ· + if(FLEXCAN7 == can_index)//��������ѡ��ͬ���жϺ��Լ�����ַ { handle = &can_handle_0; can_irq_num = CANFD7_CANFD_INTR_NUM; @@ -896,7 +896,7 @@ void flexcan_Busoff_Recovery(void) /* initialization_all_flexcan. */ void initialization_All_Flexcan(void) { - sdrv_gpio_set_pin_output_level(GPIO_H12, 0); //CANʹÄÜ + sdrv_gpio_set_pin_output_level(GPIO_H12, 0); //CANʹ�� initialization_Flexcan(CAN_INDEX_0, &can_0_config, &can_0_fifo_config, flexcan_Receive_callback_0);//250k @@ -920,26 +920,26 @@ void initialization_All_Flexcan(void) -//100ms µ÷ÓÃÒ»´Î +//100ms ����һ�� void canTimerProcess(void *signal_id) { static uint8_t can_timer[5] = {0,0,0,0,0}; - static uint8_t can_temp[10] = {0,0,0,0,0,0,0,0,0,0};//ÖмäÅжÏÖµ + static uint8_t can_temp[10] = {0,0,0,0,0,0,0,0,0,0};//�м��ж�ֵ uint8_t temp = 0; can_timer[0] ++; - if(can_timer[0] >= 1)//100msÅжÏÒ»´Î + if(can_timer[0] >= 1)//100ms�ж�һ�� { can_timer[0] = 0; - if(can_fault_info.bit_data.motor1_count == can_temp[0])//Êý¾ÝÒ»Ñù±íʾ¹ÊÕÏ + if(can_fault_info.bit_data.motor1_count == can_temp[0])//����һ����ʾ���� { can_fault_info.bit_data.motor1_state = FAULT; } else { can_fault_info.bit_data.motor1_state = NORMAL; - can_temp[0] = can_fault_info.bit_data.motor1_count;//Êý¾Ý¸üР+ can_temp[0] = can_fault_info.bit_data.motor1_count;//���ݸ��� } if(can_fault_info.bit_data.motor1_state != can_temp[1]) @@ -949,14 +949,14 @@ void canTimerProcess(void *signal_id) } - if(can_fault_info.bit_data.motor2_count == can_temp[2])//Êý¾ÝÒ»Ñù±íʾ¹ÊÕÏ + if(can_fault_info.bit_data.motor2_count == can_temp[2])//����һ����ʾ���� { can_fault_info.bit_data.motor2_state = FAULT; } else { can_fault_info.bit_data.motor2_state = NORMAL; - can_temp[2] = can_fault_info.bit_data.motor2_count;//Êý¾Ý¸üР+ can_temp[2] = can_fault_info.bit_data.motor2_count;//���ݸ��� } if(can_fault_info.bit_data.motor2_state != can_temp[3]) @@ -966,19 +966,19 @@ void canTimerProcess(void *signal_id) } } - can_timer[1] ++;//BMSÅÐ¶Ï - if(can_timer[1] >= 20)//2sÅжÏÒ»´Î + can_timer[1] ++;//BMS�ж� + if(can_timer[1] >= 20)//2s�ж�һ�� { can_timer[1] = 0; //BMS - if(can_fault_info.bit_data.bms_count == can_temp[4])//Êý¾ÝÒ»Ñù±íʾ¹ÊÕÏ + if(can_fault_info.bit_data.bms_count == can_temp[4])//����һ����ʾ���� { can_fault_info.bit_data.bms_state = FAULT; } else { can_fault_info.bit_data.bms_state = NORMAL; - can_temp[4] = can_fault_info.bit_data.bms_count;//Êý¾Ý¸üР+ can_temp[4] = can_fault_info.bit_data.bms_count;//���ݸ��� } if(can_fault_info.bit_data.bms_state != can_temp[5]) { @@ -986,15 +986,15 @@ void canTimerProcess(void *signal_id) temp ++; } - //ζÈÄ£¿é - if(can_fault_info.bit_data.temperature_count == can_temp[6])//Êý¾ÝÒ»Ñù±íʾ¹ÊÕÏ + //�¶�ģ�� + if(can_fault_info.bit_data.temperature_count == can_temp[6])//����һ����ʾ���� { can_fault_info.bit_data.temperature_state = FAULT; } else { can_fault_info.bit_data.temperature_state = NORMAL; - can_temp[6] = can_fault_info.bit_data.temperature_count;//Êý¾Ý¸üР+ can_temp[6] = can_fault_info.bit_data.temperature_count;//���ݸ��� } if(can_fault_info.bit_data.temperature_state != can_temp[7]) { @@ -1003,19 +1003,19 @@ void canTimerProcess(void *signal_id) } } - can_timer[2] ++;//Ò£¿ØÆ÷ÅÐ¶Ï - if(can_timer[2] >= 5)//500msÅжÏÒ»´Î + can_timer[2] ++;//ң�����ж� + if(can_timer[2] >= 5)//500ms�ж�һ�� { can_timer[2] = 0; - //Ò£¿ØÆ÷ - if(can_fault_info.bit_data.remote_count == can_temp[8])//Êý¾ÝÒ»Ñù±íʾ¹ÊÕÏ + //ң���� + if(can_fault_info.bit_data.remote_count == can_temp[8])//����һ����ʾ���� { can_fault_info.bit_data.remote_state = FAULT; } else { can_fault_info.bit_data.remote_state = NORMAL; - can_temp[8] = can_fault_info.bit_data.remote_count;//Êý¾Ý¸üР+ can_temp[8] = can_fault_info.bit_data.remote_count;//���ݸ��� } if(can_fault_info.bit_data.remote_state != can_temp[9]) { @@ -1024,58 +1024,58 @@ void canTimerProcess(void *signal_id) } } - can_timer[4] ++;//¹ÊÕÏÖÜÆÚ·¢ËÍÐźŠ- if( (0 != temp) || (can_timer[4] >= 5) )//¹ÊÕÏÖÜÆÚ500·¢ËÍÐźţ¬·¢Éú±ä»¯Á¢Âí·¢ËÍ + can_timer[4] ++;//�������ڷ����ź� + if( (0 != temp) || (can_timer[4] >= 5) )//��������500�����źţ������仯�������� { can_timer[4] = 0; publishMessage(&can_fault_info, 1);// } - //busoffÅÐ¶Ï + //busoff�ж� can_timer[3] ++; - if(can_timer[3] >= 10)//100*100*10 = 1s´¦ÀíÒ»´Î + if(can_timer[3] >= 10)//100*100*10 = 1s����һ�� { can_timer[3] = 0; - flexcan_Busoff_Recovery();//BUSS OFF´¦Àí + flexcan_Busoff_Recovery();//BUSS OFF���� } } //static void processSdoOutput1(void *signal_id) //{ -// (void)signal_id; // ±ê¼Ç±äÁ¿ÎªÒÑʹÓ㬱ÜÃâ±àÒëÆ÷¾¯¸æ +// (void)signal_id; // ��DZ���Ϊ��ʹ�ã�������������� // CAN_Send_Msg(&can_handle_3, 0x601, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_sdo_output1, 8, 15);// //} // //static void processSdoOutput2(void *signal_id) //{ -// (void)signal_id; // ±ê¼Ç±äÁ¿ÎªÒÑʹÓ㬱ÜÃâ±àÒëÆ÷¾¯¸æ +// (void)signal_id; // ��DZ���Ϊ��ʹ�ã�������������� // CAN_Send_Msg(&can_handle_3, 0x601, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_sdo_output2, 8, 16); //} // //static void processSdoOutput3(void *signal_id) //{ -// (void)signal_id; // ±ê¼Ç±äÁ¿ÎªÒÑʹÓ㬱ÜÃâ±àÒëÆ÷¾¯¸æ +// (void)signal_id; // ��DZ���Ϊ��ʹ�ã�������������� // CAN_Send_Msg(&can_handle_3, 0x601, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_sdo_output3, 8, 17); //} // //static void processSdoOutput4(void *signal_id) //{ -// (void)signal_id; // ±ê¼Ç±äÁ¿ÎªÒÑʹÓ㬱ÜÃâ±àÒëÆ÷¾¯¸æ +// (void)signal_id; // ��DZ���Ϊ��ʹ�ã�������������� // CAN_Send_Msg(&can_handle_3, 0x601, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_sdo_output4, 8, 18); //} // //static void processSdoOutput5(void *signal_id) //{ -// (void)signal_id; // ±ê¼Ç±äÁ¿ÎªÒÑʹÓ㬱ÜÃâ±àÒëÆ÷¾¯¸æ +// (void)signal_id; // ��DZ���Ϊ��ʹ�ã�������������� // CAN_Send_Msg(&can_handle_3, 0x601, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_sdo_output5, 8, 19); //} // // //static void processSdoOutput7(void *signal_id) //{ -// (void)signal_id; // ±ê¼Ç±äÁ¿ÎªÒÑʹÓ㬱ÜÃâ±àÒëÆ÷¾¯¸æ +// (void)signal_id; // ��DZ���Ϊ��ʹ�ã�������������� // CAN_Send_Msg(&can_handle_3, 0x601, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_sdo_output7, 8, 20); //} @@ -1083,39 +1083,39 @@ void canTimerProcess(void *signal_id) static void processMotorOutput1(void *signal_id) { - (void)signal_id; // ±ê¼Ç±äÁ¿ÎªÒÑʹÓ㬱ÜÃâ±àÒëÆ÷¾¯¸æ - CAN_Send_Msg(&can_handle_1, LEFT_FRONT_MOTOR_OUTPUT1, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_motor_output1, 8, 15);//µç»ú1Ť¾ØºÍתËÙÊä³ö - CAN_Send_Msg(&can_handle_1, LEFT_REAR_MOTOR_OUTPUT1, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_motor_output3, 8, 16);//µç»ú1Ť¾ØºÍתËÙÊä³ö + (void)signal_id; // ��DZ���Ϊ��ʹ�ã�������������� + CAN_Send_Msg(&can_handle_1, LEFT_FRONT_MOTOR_OUTPUT1, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_motor_output1, 8, 15);//���1Ť�غ�ת����� + CAN_Send_Msg(&can_handle_1, LEFT_REAR_MOTOR_OUTPUT1, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_motor_output3, 8, 16);//���1Ť�غ�ת����� } static void processMotorOutput2(void *signal_id) { - (void)signal_id; // ±ê¼Ç±äÁ¿ÎªÒÑʹÓ㬱ÜÃâ±àÒëÆ÷¾¯¸æ - CAN_Send_Msg(&can_handle_2, RIGHT_FRONT_MOTOR_OUTPUT1, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_motor_output2, 8, 15);//µç»ú2Ť¾ØºÍתËÙÊä³ö - CAN_Send_Msg(&can_handle_2, RIGHT_REAR_MOTOR_OUTPUT1, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_motor_output4, 8, 16);//µç»ú2Ť¾ØºÍתËÙÊä³ö + (void)signal_id; // ��DZ���Ϊ��ʹ�ã�������������� + CAN_Send_Msg(&can_handle_2, RIGHT_FRONT_MOTOR_OUTPUT1, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_motor_output2, 8, 15);//���2Ť�غ�ת����� + CAN_Send_Msg(&can_handle_2, RIGHT_REAR_MOTOR_OUTPUT1, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_motor_output4, 8, 16);//���2Ť�غ�ת����� } static void processMotorOutput3(void *signal_id) { - (void)signal_id; // ±ê¼Ç±äÁ¿ÎªÒÑʹÓ㬱ÜÃâ±àÒëÆ÷¾¯¸æ + (void)signal_id; // ��DZ���Ϊ��ʹ�ã�������������� - CAN_Send_Msg(&can_handle_1, LEFT_FRONT_MOTOR_OUTPUT2, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_motor_output1.arr[8], 8, 17);//µç»ú1¹¦ÂÊÊä³ö - CAN_Send_Msg(&can_handle_1, LEFT_REAR_MOTOR_OUTPUT2, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_motor_output3.arr[8], 8, 18);//µç»ú1¹¦ÂÊÊä³ö + CAN_Send_Msg(&can_handle_1, LEFT_FRONT_MOTOR_OUTPUT2, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_motor_output1.arr[8], 8, 17);//���1������� + CAN_Send_Msg(&can_handle_1, LEFT_REAR_MOTOR_OUTPUT2, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_motor_output3.arr[8], 8, 18);//���1������� } static void processMotorOutput4(void *signal_id) { - (void)signal_id; // ±ê¼Ç±äÁ¿ÎªÒÑʹÓ㬱ÜÃâ±àÒëÆ÷¾¯¸æ - CAN_Send_Msg(&can_handle_2, RIGHT_FRONT_MOTOR_OUTPUT2, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_motor_output2.arr[8], 8, 17);//µç»ú2¹¦ÂÊÊä³ö - CAN_Send_Msg(&can_handle_2, RIGHT_REAR_MOTOR_OUTPUT2, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_motor_output4.arr[8], 8, 18);//µç»ú2¹¦ÂÊÊä³ö + (void)signal_id; // ��DZ���Ϊ��ʹ�ã�������������� + CAN_Send_Msg(&can_handle_2, RIGHT_FRONT_MOTOR_OUTPUT2, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_motor_output2.arr[8], 8, 17);//���2������� + CAN_Send_Msg(&can_handle_2, RIGHT_REAR_MOTOR_OUTPUT2, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_motor_output4.arr[8], 8, 18);//���2������� } static void processKgfOutput1(void *signal_id) { - (void)signal_id; // ±ê¼Ç±äÁ¿ÎªÒÑʹÓ㬱ÜÃâ±àÒëÆ÷¾¯¸æ + (void)signal_id; // ��DZ���Ϊ��ʹ�ã�������������� - if(1 == ecu_online)//20250318 ÐÞ¸ÄΪÔÚÏß²ÅÄÜ·¢ËÍ£¬±ÜÃâ²É¼¯Ä£¿éºÍE3ͬʱ·¢ËÍ + if(1 == ecu_online)//20250318 �޸�Ϊ���߲��ܷ��ͣ�����ɼ�ģ���E3ͬʱ���� { un_inf_can_kgf_output1.bit_data.can_rx5 = 0xE3; CAN_Send_Msg(&can_handle_0, 0x11000002, FLEXCAN_EXTEND_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_inf_can_kgf_output1, 8, 15);//KGF1 @@ -1124,8 +1124,8 @@ static void processKgfOutput1(void *signal_id) static void processKgfOutput2(void *signal_id) { - (void)signal_id; // ±ê¼Ç±äÁ¿ÎªÒÑʹÓ㬱ÜÃâ±àÒëÆ÷¾¯¸æ - if(1 == ecu_online)//20250318 ÐÞ¸ÄΪÔÚÏß²ÅÄÜ·¢ËÍ£¬±ÜÃâ²É¼¯Ä£¿éºÍE3ͬʱ·¢ËÍ + (void)signal_id; // ��DZ���Ϊ��ʹ�ã�������������� + if(1 == ecu_online)//20250318 �޸�Ϊ���߲��ܷ��ͣ�����ɼ�ģ���E3ͬʱ���� { un_inf_can_kgf_output2.bit_data.can_rx5 = 0xE3; CAN_Send_Msg(&can_handle_0, 0x14000002, FLEXCAN_EXTEND_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_inf_can_kgf_output2, 8, 16);//KGF2 @@ -1135,8 +1135,8 @@ static void processKgfOutput2(void *signal_id) //static void processKgfOutput2(void *signal_id) //{ -// (void)signal_id; // ±ê¼Ç±äÁ¿ÎªÒÑʹÓ㬱ÜÃâ±àÒëÆ÷¾¯¸æ -// if(1 == ecu_online)//20250318 ÐÞ¸ÄΪÔÚÏß²ÅÄÜ·¢ËÍ£¬±ÜÃâ²É¼¯Ä£¿éºÍE3ͬʱ·¢ËÍ +// (void)signal_id; // ��DZ���Ϊ��ʹ�ã�������������� +// if(1 == ecu_online)//20250318 �޸�Ϊ���߲��ܷ��ͣ�����ɼ�ģ���E3ͬʱ���� // { // un_inf_can_kgf_output2.bit_data.can_rx5 = 0xE3; // CAN_Send_Msg(&can_handle_0, 0x14000002, FLEXCAN_EXTEND_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_inf_can_kgf_output2, 8, 16);//KGF2 @@ -1148,60 +1148,60 @@ static void processKgfOutput2(void *signal_id) static void processWheelSpeedOutput(void *signal_id) { - float CANPressSpeedTemp = 0.0;//ËٶȼÆËãÖмäÖµ - (void)signal_id; // ±ê¼Ç±äÁ¿ÎªÒÑʹÓ㬱ÜÃâ±àÒëÆ÷¾¯¸æ + float CANPressSpeedTemp = 0.0;//�ٶȼ����м�ֵ + (void)signal_id; // ��DZ���Ϊ��ʹ�ã�������������� - CANPressSpeedTemp = (diff_data.left_motor_speed*(float)getParam("whl_dia") * M_PI*60)/1000.0/(float)getParam("gRatio");// ת/·ÖÖÓ¡ª¡ª¡·km/h һȦ1.8Ã× 20241016 ³ýÒÔ¼õËÙ±È - CANPressSpeedTemp = CANPressSpeedTemp*100;//,×îºóÐèÒªÀ©´ó100±¶ ,ϵÊý0.01 - un_wheel_wpeed_output.bit_data.left_front = (uint16_t)((int16_t)(CANPressSpeedTemp));//תËÙ*1.8*60*100/1000/ ת/·ÖÖÓ¡ª¡ª¡·km/h һȦ1.8Ã×,×îºóÐèÒªÀ©´ó100±¶£¬ÏµÊýΪ0.01×îºóת»»ÎªÎÞ·ûºÅÐÍ£¬ 20240629 ¼õËٱȲ»ÐèÒª¿¼ÂÇÒѾ­ - un_wheel_wpeed_output.bit_data.left_rear = (uint16_t)((int16_t)(CANPressSpeedTemp));//ÏÈת»»Îªint£¬ÔÙת»»ÎªÎÞ·ûºÅ + CANPressSpeedTemp = (diff_data.left_motor_speed*(float)getParam("whl_dia") * M_PI*60)/1000.0/(float)getParam("gRatio");// ת/���ӡ�����km/h һȦ1.8�� 20241016 ���Լ��ٱ� + CANPressSpeedTemp = CANPressSpeedTemp*100;//,�����Ҫ����100�� ,ϵ��0.01 + un_wheel_wpeed_output.bit_data.left_front = (uint16_t)((int16_t)(CANPressSpeedTemp));//ת��*1.8*60*100/1000/ ת/���ӡ�����km/h һȦ1.8��,�����Ҫ����100����ϵ��Ϊ0.01���ת��Ϊ�޷����ͣ� 20240629 ���ٱȲ���Ҫ�����Ѿ� + un_wheel_wpeed_output.bit_data.left_rear = (uint16_t)((int16_t)(CANPressSpeedTemp));//��ת��Ϊint����ת��Ϊ�޷��� - CANPressSpeedTemp = (diff_data.right_motor_speed*(float)getParam("whl_dia") * M_PI*60)/1000.0/(float)getParam("gRatio");// ת/·ÖÖÓ¡ª¡ª¡·km/h һȦ1.8Ã× - CANPressSpeedTemp = CANPressSpeedTemp*100;//,×îºóÐèÒªÀ©´ó100±¶ ,ϵÊý0.01 - un_wheel_wpeed_output.bit_data.right_front = (uint16_t)((int16_t)(CANPressSpeedTemp));//תËÙ*1.8*60*100/1000/ ת/·ÖÖÓ¡ª¡ª¡·km/h һȦ1.8Ã×,×îºóÐèÒªÀ©´ó100±¶£¬ÏµÊýΪ0.01×îºóת»»ÎªÎÞ·ûºÅÐÍ£¬ 20240629 ¼õËٱȲ»ÐèÒª¿¼ÂÇÒѾ­ - un_wheel_wpeed_output.bit_data.right_rear = (uint16_t)((int16_t)(CANPressSpeedTemp));//ÏÈת»»Îªint£¬ÔÙת»»ÎªÎÞ·ûºÅ + CANPressSpeedTemp = (diff_data.right_motor_speed*(float)getParam("whl_dia") * M_PI*60)/1000.0/(float)getParam("gRatio");// ת/���ӡ�����km/h һȦ1.8�� + CANPressSpeedTemp = CANPressSpeedTemp*100;//,�����Ҫ����100�� ,ϵ��0.01 + un_wheel_wpeed_output.bit_data.right_front = (uint16_t)((int16_t)(CANPressSpeedTemp));//ת��*1.8*60*100/1000/ ת/���ӡ�����km/h һȦ1.8��,�����Ҫ����100����ϵ��Ϊ0.01���ת��Ϊ�޷����ͣ� 20240629 ���ٱȲ���Ҫ�����Ѿ� + un_wheel_wpeed_output.bit_data.right_rear = (uint16_t)((int16_t)(CANPressSpeedTemp));//��ת��Ϊint����ת��Ϊ�޷��� - CAN_Send_Msg(&can_handle_4, 0x98, FLEXCAN_EXTEND_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_wheel_wpeed_output, 8, 15);//µ¼º½ÒÇ + CAN_Send_Msg(&can_handle_4, 0x98, FLEXCAN_EXTEND_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_wheel_wpeed_output, 8, 15);//������ } static void processHBridgeOutput(void *signal_id) { - (void)signal_id; // ±ê¼Ç±äÁ¿ÎªÒÑʹÓ㬱ÜÃâ±àÒëÆ÷¾¯¸æ - CAN_Send_Msg(&can_handle_5, 0x7F2, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_h_bridge_output, 8, 17);//HÇÅÊä³ö - CAN_Send_Msg(&can_handle_5, 0x722, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_h_bridge_output1, 8, 19);//HÇÅÊä³ö + (void)signal_id; // ��DZ���Ϊ��ʹ�ã�������������� + CAN_Send_Msg(&can_handle_5, 0x7F2, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_h_bridge_output, 8, 17);//H����� + CAN_Send_Msg(&can_handle_5, 0x722, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_h_bridge_output1, 8, 19);//H����� } static void processUnGatherOutput(void *signal_id) { - (void)signal_id; // ±ê¼Ç±äÁ¿ÎªÒÑʹÓ㬱ÜÃâ±àÒëÆ÷¾¯¸æ - CAN_Send_Msg(&can_handle_0, 0x15000002, FLEXCAN_EXTEND_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_gather_output, 8, 18);//²É¼¯Êä³ö + (void)signal_id; // ��DZ���Ϊ��ʹ�ã�������������� + CAN_Send_Msg(&can_handle_0, 0x15000002, FLEXCAN_EXTEND_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_gather_output, 8, 18);//�ɼ���� } static void processUltrasonicOutput(void *signal_id) { - (void)signal_id; // ±ê¼Ç±äÁ¿ÎªÒÑʹÓ㬱ÜÃâ±àÒëÆ÷¾¯¸æ - CAN_Send_Msg(&can_handle_6, ULTRASONIC_ID_1, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_ultrasonic_output1, 8, 15);//³¬Éù²¨Êä³ö + (void)signal_id; // ��DZ���Ϊ��ʹ�ã�������������� + CAN_Send_Msg(&can_handle_6, ULTRASONIC_ID_1, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_ultrasonic_output1, 8, 15);//��������� } //static void processHBridgeOutput2(void *signal_id) //{ -// (void)signal_id; // ±ê¼Ç±äÁ¿ÎªÒÑʹÓ㬱ÜÃâ±àÒëÆ÷¾¯¸æ -// CAN_Send_Msg(&can_handle_5, 0x722, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_h_bridge_output2, 8, 16);//HÇÅÊä³ö +// (void)signal_id; // ��DZ���Ϊ��ʹ�ã�������������� +// CAN_Send_Msg(&can_handle_5, 0x722, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_h_bridge_output2, 8, 16);//H����� //} //static void processLifterOutput(void *signal_id) //{ -// (void)signal_id; // ±ê¼Ç±äÁ¿ÎªÒÑʹÓ㬱ÜÃâ±àÒëÆ÷¾¯¸æ -// CAN_Send_Msg(&can_handle_5, 0x6F2, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_lifter_output, 8, 17);//ÍÆ¸ËÊä³ö +// (void)signal_id; // ��DZ���Ϊ��ʹ�ã�������������� +// CAN_Send_Msg(&can_handle_5, 0x6F2, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, (uint8_t *)&un_lifter_output, 8, 17);//�Ƹ���� //} -//can ·¢ËÍ 100msµ÷ÓÃÒ»´Î +//can ���� 100ms����һ�� void canSendAll(void *signal_id) { static uint16_t wheel_speed_cnt = 0; @@ -1213,7 +1213,7 @@ void canSendAll(void *signal_id) // static uint8_t h_bridge_cnt = 0; uint8_t CanData[8] = {0,0,0,0,0,0,0,0}; //------------------------------------------------------------------------- - (void)signal_id; // ±ê¼Ç±äÁ¿ÎªÒÑʹÓ㬱ÜÃâ±àÒëÆ÷¾¯¸æ + (void)signal_id; // ��DZ���Ϊ��ʹ�ã�������������� bms_cnt1 ++; if(bms_cnt1 >= 1000)//1s @@ -1222,7 +1222,7 @@ void canSendAll(void *signal_id) CanData[0] = 0x5A; - CAN_Send_Msg(&can_handle_3, 0x100, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, CanData, 1, 15);//BMSÇëÇóÊý¾Ý + CAN_Send_Msg(&can_handle_3, 0x100, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, CanData, 1, 15);//BMS�������� } bms_cnt2 ++; @@ -1232,12 +1232,12 @@ void canSendAll(void *signal_id) CanData[0] = 0x5A; - CAN_Send_Msg(&can_handle_3, 0x101, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, CanData, 1, 16);//BMSÇëÇóÊý¾Ý + CAN_Send_Msg(&can_handle_3, 0x101, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, CanData, 1, 16);//BMS�������� } motor_power_cnt ++; - if(motor_power_cnt >= 1000)//1s·¢ËÍÒ»´Î + if(motor_power_cnt >= 1000)//1s����һ�� { motor_power_cnt = 0; processMotorOutput3(CanData); @@ -1245,7 +1245,7 @@ void canSendAll(void *signal_id) } // motor_power_cnt ++; -// if(motor_power_cnt >= 10)//¶ÁȡתËÙ 20ms·¢ËÍ +// if(motor_power_cnt >= 10)//��ȡת�� 20ms���� // { // motor_power_cnt = 0; // @@ -1259,7 +1259,7 @@ void canSendAll(void *signal_id) // } // kgf_cnt ++; -// if(kgf_cnt >= 5)//20210312 ¿ØÖÆCANͨѶģ¿éÊä³ö 20210710ÐÞ¸ÄΪ50ms·¢ËÍ +// if(kgf_cnt >= 5)//20210312 ����CANͨѶģ����� 20210710�޸�Ϊ50ms���� // { // kgf_cnt = 0; // @@ -1267,7 +1267,7 @@ void canSendAll(void *signal_id) // processKgfOutput2(CanData); // } // - //ÂÖËÙ·¢ËÍ + //���ٷ��� wheel_speed_cnt ++; if(wheel_speed_cnt >= 100) { @@ -1275,18 +1275,18 @@ void canSendAll(void *signal_id) processWheelSpeedOutput(CanData); -// CAN_Send_Msg(&can_handle_0, 0x120, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, CanData, 8, 16);//BMSÇëÇóÊý¾Ý -// CAN_Send_Msg(&can_handle_1, 0x121, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, CanData, 8, 17);//BMSÇëÇóÊý¾Ý -// CAN_Send_Msg(&can_handle_2, 0x122, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, CanData, 8, 17);//BMSÇëÇóÊý¾Ý -// CAN_Send_Msg(&can_handle_3, 0x123, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, CanData, 8, 16);//BMSÇëÇóÊý¾Ý -// CAN_Send_Msg(&can_handle_4, 0x124, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, CanData, 8, 16);//BMSÇëÇóÊý¾Ý -// CAN_Send_Msg(&can_handle_5, 0x125, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, CanData, 8, 16);//BMSÇëÇóÊý¾Ý - CAN_Send_Msg(&can_handle_6, 0x126, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, &un_can_debug_output.arr[0], 8, 16);//BMSÇëÇóÊý¾Ý -// CAN_Send_Msg(&can_handle_7, 0x127, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, CanData, 8, 16);//BMSÇëÇóÊý¾Ý + CAN_Send_Msg(&can_handle_0, 0x120, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, CanData, 8, 16);//BMS�������� + CAN_Send_Msg(&can_handle_1, 0x121, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, CanData, 8, 17);//BMS�������� + CAN_Send_Msg(&can_handle_2, 0x122, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, CanData, 8, 17);//BMS�������� + CAN_Send_Msg(&can_handle_3, 0x123, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, CanData, 8, 16);//BMS�������� + CAN_Send_Msg(&can_handle_4, 0x124, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, CanData, 8, 16);//BMS�������� + CAN_Send_Msg(&can_handle_5, 0x125, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, CanData, 8, 16);//BMS�������� + CAN_Send_Msg(&can_handle_6, 0x126, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, &un_can_debug_output.arr[0], 8, 16);//BMS�������� +// CAN_Send_Msg(&can_handle_7, 0x127, FLEXCAN_STANDARD_FRAME, FLEXCAN_FrameTypeData, CanData, 8, 16);//BMS�������� } // - //HÇÅÊý¾Ý·¢ËÍ + //H�����ݷ��� // h_bridge_cnt ++; // if(h_bridge_cnt >= 5) // { @@ -1295,25 +1295,25 @@ void canSendAll(void *signal_id) // processHBridgeOutput(CanData); // } - timerStart(&can_timer_interface1,1,1);//1msµ÷ÓÃÒ»´Î + timerStart(&can_timer_interface1,1,1);//1ms����һ�� } -// can¶¨Ê±Æ÷ÐźŴ¦Àíº¯Êý +// can��ʱ���źŴ������� static void canInterfaceTimerProcess(void *signal_id) { - (void)signal_id; // ±ê¼Ç±äÁ¿ÎªÒÑʹÓ㬱ÜÃâ±àÒëÆ÷¾¯¸æ -// uint32_t time_boot = getCurrentTime();//¼Ç¼µ±Ç°Ê±¼ä + (void)signal_id; // ��DZ���Ϊ��ʹ�ã�������������� +// uint32_t time_boot = getCurrentTime();//��¼��ǰʱ�� canTimerProcess(signal_id); -// printf("motor1 interval:%d,motor2 interval:%d\n",time_elapsed,time_elapsed1);//´òÓ¡µç»ú¿ØÖÆÆ÷1£¬2½ÓÊÕ¼ä¸ô +// printf("motor1 interval:%d,motor2 interval:%d\n",time_elapsed,time_elapsed1);//��ӡ���������1��2���ռ�� - timerStart(&can_timer_interface2,100,1);//100msµ÷ÓÃÒ»´Î + timerStart(&can_timer_interface2,100,1);//100ms����һ�� -// printf("canInterface spend time:%d\n",getCurrentTime() - time_boot);//¼ì²éappÓÃÁ˶೤ʱ¼ä +// printf("canInterface spend time:%d\n",getCurrentTime() - time_boot);//���app���˶೤ʱ�� } static void canInterfaceInput(void *signal_id) @@ -1326,7 +1326,7 @@ static void canInterfaceInput(void *signal_id) -// APPÄ£¿éµÄ³õʼ»¯ +// APPģ��ij�ʼ�� void canInterfaceInit(void) { memset(&un_motor_input1, 0, sizeof(UnMotorInput)); @@ -1367,7 +1367,7 @@ void canInterfaceInit(void) -// un_motor_output1.bit_data.set_torque = 30000;//°´ÕÕÆ«ÒÆÁ¿³õʼ»¯ +// un_motor_output1.bit_data.set_torque = 30000;//����ƫ������ʼ�� // un_motor_output1.bit_data.set_rotation_speed = 30000; // un_motor_output1.bit_data.mode = 0; // un_motor_output2.bit_data.set_torque = 30000; @@ -1381,10 +1381,10 @@ void canInterfaceInit(void) memset(&un_wheel_wpeed_output, 0, sizeof(UnWheelSpeedOutput)); memset(&un_remote_control_input, 0, sizeof(UnRemoteControlInput)); - un_inf_can_kgf_output2.bit_data.KGF04 = 1;//²»ÄÜ×Ôɱ£¬Õâ¸öÊÇ¿ØÖÆ×Ô¼ºÉϵçµÄͨµÀ + un_inf_can_kgf_output2.bit_data.KGF04 = 1;//������ɱ������ǿ����Լ��ϵ��ͨ�� - // ³õʼ»¯¶¨Ê±Æ÷£¬Ê¹Óà brake_timer µÄµØÖ·×÷ΪÐźÅID + // ��ʼ����ʱ����ʹ�� brake_timer �ĵ�ַ��Ϊ�ź�ID timerInit(&can_timer_interface1); timerInit(&can_timer_interface2); @@ -1399,8 +1399,8 @@ void canInterfaceInit(void) subscribe(&un_wheel_wpeed_output, processWheelSpeedOutput); subscribe(&un_h_bridge_output, processHBridgeOutput); subscribe(&un_gather_output, processUnGatherOutput); - subscribe(&un_sw_sample, canInterfaceInput); // ¼±Í£¿ª¹Ø¡¢¸ßѹ¿ª¹Ø £¬»½ÐѱêÖ¾ - subscribe(&un_ultrasonic_output1, processUltrasonicOutput); // Êä³ö³¬Éù²¨´«¸ÐÆ÷ + subscribe(&un_sw_sample, canInterfaceInput); // ��ͣ���ء���ѹ���� �����ѱ�־ + subscribe(&un_ultrasonic_output1, processUltrasonicOutput); // ��������������� @@ -1419,9 +1419,9 @@ void canInterfaceInit(void) // subscribe(&un_sdo_output5, processSdoOutput5); // subscribe(&un_sdo_output7, processSdoOutput7); - timerStart(&can_timer_interface1,1,1);//1msµ÷ÓÃÒ»´Î + timerStart(&can_timer_interface1,1,1);//1ms����һ�� - timerStart(&can_timer_interface2,100,1);//100msµ÷ÓÃÒ»´Î + timerStart(&can_timer_interface2,100,1);//100ms����һ�� printf( "canInterface: initial OK %d\n",getCurrentTime()); }