transmit-receive data working correct now. Fix bug with port set settings
This commit is contained in:
parent
aa75967bdf
commit
45f145ca2f
23
src/main.rs
23
src/main.rs
@ -204,15 +204,22 @@ pub mod uart_transact {
|
|||||||
filename = format!("../log/commands_{}.log", Perf::cur_time("%Y%m%d"));
|
filename = format!("../log/commands_{}.log", Perf::cur_time("%Y%m%d"));
|
||||||
let cmd_writer = Logger::new(filename.clone(), save_data_flag)?;
|
let cmd_writer = Logger::new(filename.clone(), save_data_flag)?;
|
||||||
|
|
||||||
let port = serialport::new(port_name, port_settings.baud_rate)
|
let mut port = Self::set_port_settings(port_name,
|
||||||
.timeout(Duration::from_millis(port_settings.timeout_msec)).open().unwrap();
|
port_settings.clone()).unwrap();
|
||||||
|
|
||||||
let tx_packet = String::new();
|
let tx_packet = String::new();
|
||||||
let rx_packet = String::new();
|
let rx_packet = String::new();
|
||||||
|
|
||||||
Ok( Self { type_, port_name: port_name.to_string(), port_settings, save_data_flag, save_cmd_flag,
|
Ok( Self { type_,
|
||||||
data_writer, cmd_writer,
|
port_name: port_name.to_string(),
|
||||||
port, tx_packet, rx_packet,
|
port_settings,
|
||||||
|
save_data_flag,
|
||||||
|
save_cmd_flag,
|
||||||
|
data_writer,
|
||||||
|
cmd_writer,
|
||||||
|
port,
|
||||||
|
tx_packet,
|
||||||
|
rx_packet,
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -231,13 +238,13 @@ pub mod uart_transact {
|
|||||||
if self.type_ == TypeEn::TxRx {
|
if self.type_ == TypeEn::TxRx {
|
||||||
self.cmd_writer.log(&self.tx_packet).unwrap();
|
self.cmd_writer.log(&self.tx_packet).unwrap();
|
||||||
|
|
||||||
// self.tx_packet.push_str(std::str::from_utf8(b"\x0D\x0A").unwrap()); // CR + LF
|
match self.port.write(&self.tx_packet.as_bytes()) {
|
||||||
println!("write to port: ({:?})", self.tx_packet.as_bytes());
|
|
||||||
match self.port.write_all(&self.tx_packet.as_bytes()) {
|
|
||||||
Ok(_) => {},
|
Ok(_) => {},
|
||||||
Err(e) => eprintln!("Error sending data: {}", e),
|
Err(e) => eprintln!("Error sending data: {}", e),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
self.port.flush().unwrap();
|
||||||
|
|
||||||
// let mut buffer = [0u8; 4096];
|
// let mut buffer = [0u8; 4096];
|
||||||
// self.port.read(&mut buffer);
|
// self.port.read(&mut buffer);
|
||||||
// let s = std::str::from_utf8(&buffer).unwrap().to_string();
|
// let s = std::str::from_utf8(&buffer).unwrap().to_string();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user