@@ -33,10 +33,30 @@ public Uart()
3333 /// </summary>
3434 private void refreshSerialDevice ( )
3535 {
36+ try
37+ {
38+ lastPortBaseStream ? . Dispose ( ) ;
39+ }
40+ catch ( Exception e )
41+ {
42+ Console . WriteLine ( $ "portBaseStream?.Dispose error:{ e . Message } ") ;
43+ }
44+ try
45+ {
46+ serial . BaseStream . Dispose ( ) ;
47+ }
48+ catch ( Exception e )
49+ {
50+ Console . WriteLine ( $ "serial.BaseStream.Dispose error:{ e . Message } ") ;
51+ }
3652 serial . Dispose ( ) ;
3753 serial = new SerialPort ( ) ;
3854 //声明接收到事件
3955 serial . DataReceived += Serial_DataReceived ;
56+ serial . BaudRate = Tools . Global . setting . baudRate ;
57+ serial . Parity = ( Parity ) Tools . Global . setting . parity ;
58+ serial . DataBits = Tools . Global . setting . dataBits ;
59+ serial . StopBits = ( StopBits ) Tools . Global . setting . stopBit ;
4060 }
4161
4262 /// <summary>
@@ -72,22 +92,6 @@ public bool IsOpen()
7292 public void Open ( )
7393 {
7494 string temp = serial . PortName ;
75- try
76- {
77- lastPortBaseStream ? . Dispose ( ) ;
78- }
79- catch ( Exception e )
80- {
81- Console . WriteLine ( $ "portBaseStream?.Dispose error:{ e . Message } ") ;
82- }
83- try
84- {
85- serial . BaseStream . Dispose ( ) ;
86- }
87- catch ( Exception e )
88- {
89- Console . WriteLine ( $ "serial.BaseStream.Dispose error:{ e . Message } ") ;
90- }
9195 refreshSerialDevice ( ) ;
9296 serial . PortName = temp ;
9397 serial . Open ( ) ;
@@ -99,22 +103,6 @@ public void Open()
99103 /// </summary>
100104 public void Close ( )
101105 {
102- try
103- {
104- lastPortBaseStream ? . Dispose ( ) ;
105- }
106- catch ( Exception e )
107- {
108- Console . WriteLine ( $ "portBaseStream?.Dispose error:{ e . Message } ") ;
109- }
110- try
111- {
112- serial . BaseStream . Dispose ( ) ;
113- }
114- catch ( Exception e )
115- {
116- Console . WriteLine ( $ "serial.BaseStream.Dispose error:{ e . Message } ") ;
117- }
118106 refreshSerialDevice ( ) ;
119107 serial . Close ( ) ;
120108 }
0 commit comments