ESP_ERROR_CHECK(uart_driver_install(ECHO_UART_PORT_NUM, BUF_SIZE * 2, 0, 0, NULL, intr_alloc_flags)); //安装 UART 驱动程序并将 UART 设置为默认配置 ESP_ERROR_CHECK(uart_param_config(ECHO_UART_PORT_NUM, &uart_config)); //设置 UART 配置参数 ESP_ERROR_CHECK(uart_set_pin(ECHO_UART...
44 case UART_FRAME_ERR: 45 ESP_LOGI(TAG, "uart frame error\n"); 46 break; 47 //UART_PATTERN_DET 48 case UART_PATTERN_DET: 49 ESP_LOGI(TAG, "uart pattern detected\n"); 50 break; 51 //Others 52 default: 53 ESP_LOGI(TAG, "uart event type: %d\n", event.type); 54 break; ...
UART_AT_CMD_CHAR_DET_INT: 接收到at_cmd字符时触发;UART_RS485_CLASH_INT: RS-485 模式下检测到发送、接收有冲突时触发;UART_RS485_FRM_ERR_INT: RS-485检测到数据帧错误;UART_RS485_PARITY_ERR_INT: RS-485 模式下检测到奇偶校验错误;UART_TX_DONE_INT: 发送完FIFO数据时触发;UART_TX_BRK_IDLE...
xQueueReset(QueueHandle_t_uart1);break;caseUART_BREAK://检测到接收数据中断break;caseUART_PARITY_ERR://数据校验错误break;caseUART_FRAME_ERR://数据帧错误break;caseUART_PATTERN_DET://接收到相匹配的字符(没用到)break;default:break; } } } free(data); data=NULL; vTaskDelete(NULL); }voidapp...
22 uart_enable_pattern_det_intr(uart_num, '+', 3, 10000, 10, 10); 23 //Create a task to handler UART event from ISR 24 xTaskCreate(uart_task, "uart_task", 2048, (void*)uart_num, 12, NULL); 25 //process data 26 uint8_t* data = (uint8_t*) malloc(BUF_SIZE); 27 do {...
//接收缓存满(建议加大缓存BUF_SIZE)uart_flush_input(UART_NUM_1);xQueueReset(QueueHandle_t_uart1);break;caseUART_BREAK://检测到接收数据中断break;caseUART_PARITY_ERR://数据校验错误break;caseUART_FRAME_ERR://数据帧错误break;caseUART_PATTERN_DET://接收到相匹配的字符(没用到)break;default:...
UART_PIN_NO_CHANGE, UART_PIN_NO_CHANGE, UART_PIN_NO_CHANGE); uart_driver_install(EX_UART_NUM, BUF_SIZE * 2, BUF_SIZE * 2, 20, &uart0_queue, 0); uart_enable_pattern_det_intr(EX_UART_NUM, '+', PATTERN_CHR_NUM, 10000, 10, 10); uart_pattern_queue_reset(EX_UART_NUM, 20)...
< UART RX buffer full event*/UART_FIFO_OVF,/*!< UART FIFO overflow event*/UART_FRAME_ERR,/*!< UART RX frame error event*/UART_PARITY_ERR,/*!< UART RX parity event*/UART_DATA_BREAK,/*!< UART TX data and break event*/UART_PATTERN_DET,/*!< UART pattern detected */UART_EVENT_...
UART_PIN_NO_CHANGE,UART_PIN_NO_CHANGE,UART_PIN_NO_CHANGE);//Set uart pattern detect function.uart_enable_pattern_det_baud_intr(EX_UART_NUM,'+',PATTERN_CHR_NUM,9,0,0);//Reset the pattern queue length to record at most 20 pattern positions.uart_pattern_queue_reset(EX_UART_NUM,20);...
uart_enable_pattern_det_baud_intr(uart_port, '\n', 1, 9, 0, 0); 代码中Pattern Queue Size是20, RING_BUFFER_SIZE是2048, 但是一直显示以下warning,会丢失数据 Code:Select all W(8464)uart1:RingBufferFullW(8514)uart1:PatternQueueSizetoosmallW(8614)uart1:pos:83W(8714)uart1:pos:147W(8814...