Browse Source

fix_serial_baudrate_set

Signed-off-by: geniusgogo <xpxyr@sina.com>
geniusgogo 1 year ago
parent
commit
02e0334ac3
1 changed files with 3 additions and 1 deletions
  1. 3 1
      components/drivers/serial/serial.c

+ 3 - 1
components/drivers/serial/serial.c

@@ -1148,6 +1148,8 @@ static rt_err_t rt_serial_control(struct rt_device *dev,
                 {
                     _termios_to_termio(tio, args);
                 }
+
+                tio->__c_ispeed = tio->__c_ospeed = cfgetospeed(tio);
             }
             break;
         case TCSETAW:
@@ -1174,7 +1176,7 @@ static rt_err_t rt_serial_control(struct rt_device *dev,
                 if (tio == RT_NULL) return -RT_EINVAL;
 
                 config = serial->config;
-
+                tio->__c_ispeed = tio->__c_ospeed = cfgetospeed(tio);
                 baudrate = _get_baudrate(tio->__c_ispeed);
                 config.baud_rate = baudrate;