Pārlūkot izejas kodu

change: 调整uart适配,禁用tx缓冲区,读数据改成非阻塞,有多少读多少,不等待

Wendal Chen 1 gadu atpakaļ
vecāks
revīzija
3e32fb7494
1 mainītis faili ar 4 papildinājumiem un 4 dzēšanām
  1. 4 4
      luatos/components/luat/port/luat_uart_idf5.c

+ 4 - 4
luatos/components/luat/port/luat_uart_idf5.c

@@ -151,7 +151,7 @@ int luat_uart_setup(luat_uart_t *uart){
         }
 #endif
         if (uart_port[id].xHandle==NULL){
-            uart_driver_install(0, uart->bufsz * 2, uart->bufsz * 2, LUAT_UART_QUEUE_SIZE, &(uart_port[0].xQueue), 0);
+            uart_driver_install(0, uart->bufsz * 2, 0, LUAT_UART_QUEUE_SIZE, &(uart_port[0].xQueue), 0);
             uart_set_pin(0, UART_PIN_NO_CHANGE, UART_PIN_NO_CHANGE, UART_PIN_NO_CHANGE, UART_PIN_NO_CHANGE);
             uart_pattern_queue_reset(id, LUAT_UART_QUEUE_SIZE);
             xTaskCreate(uart0_irq_task, "uart0_irq_task", 4096, NULL, 12, &uart_port[id].xHandle);
@@ -160,7 +160,7 @@ int luat_uart_setup(luat_uart_t *uart){
         break;
     case 1:
         if (uart_port[id].xHandle==NULL){
-            uart_driver_install(1, uart->bufsz * 2, uart->bufsz * 2, LUAT_UART_QUEUE_SIZE, &(uart_port[1].xQueue), 0);
+            uart_driver_install(1, uart->bufsz * 2, 0, LUAT_UART_QUEUE_SIZE, &(uart_port[1].xQueue), 0);
             uart_set_pin(1, UART1_TX_IO_NUM, UART1_RX_IO_NUM, UART_PIN_NO_CHANGE, UART_PIN_NO_CHANGE);
             uart_pattern_queue_reset(id, LUAT_UART_QUEUE_SIZE);
             xTaskCreate(uart1_irq_task, "uart1_irq_task", 4096, NULL, 12, &uart_port[id].xHandle);
@@ -170,7 +170,7 @@ int luat_uart_setup(luat_uart_t *uart){
 #if SOC_UART_NUM > 2
     case 2:
         if (uart_port[id].xHandle==NULL){
-            uart_driver_install(2, uart->bufsz * 2, uart->bufsz * 2, LUAT_UART_QUEUE_SIZE, &(uart_port[2].xQueue), 0);
+            uart_driver_install(2, uart->bufsz * 2, 0, LUAT_UART_QUEUE_SIZE, &(uart_port[2].xQueue), 0);
             uart_set_pin(2, UART2_TX_IO_NUM, UART2_RX_IO_NUM, UART_PIN_NO_CHANGE, UART_PIN_NO_CHANGE);
             uart_pattern_queue_reset(id, LUAT_UART_QUEUE_SIZE);
             xTaskCreate(uart2_irq_task, "uart2_irq_task", 2048, NULL, 12, &uart_port[id].xHandle);
@@ -196,7 +196,7 @@ int luat_uart_read(int uartid, void *buffer, size_t length){
     if (UART_CHECK(uartid)){
         return -1;
     }
-    return uart_read_bytes(uartid, buffer, length, 100 / portTICK_PERIOD_MS);
+    return uart_read_bytes(uartid, buffer, length, 0);
 }
 
 int luat_uart_close(int uartid){