fix: send only bytes written to the buffer instead of the entire buffer
This commit is contained in:
parent
f069c3b4b2
commit
e915deb1d5
|
@ -109,14 +109,14 @@ where
|
||||||
crate::_priv_write_bytes::<P>(data);
|
crate::_priv_write_bytes::<P>(data);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[inline(never)]
|
||||||
fn write_bytes(&self, transmit_data: &mut RingBuffer<N>) {
|
fn write_bytes(&self, transmit_data: &mut RingBuffer<N>) {
|
||||||
<Self as SoftSerialWriter<P, &mut RingBuffer<N>>>::write_byte(
|
<Self as SoftSerialWriter<P, &mut RingBuffer<N>>>::write_byte(
|
||||||
self,
|
self,
|
||||||
transmit_data.len() as u8,
|
transmit_data.len() as u8,
|
||||||
);
|
);
|
||||||
|
|
||||||
for _ in 0..N {
|
for byte in transmit_data {
|
||||||
let byte = transmit_data.pop().unwrap_or(0);
|
|
||||||
self.sync_transmitter();
|
self.sync_transmitter();
|
||||||
<Self as SoftSerialWriter<P, &mut RingBuffer<N>>>::write_byte(self, byte);
|
<Self as SoftSerialWriter<P, &mut RingBuffer<N>>>::write_byte(self, byte);
|
||||||
}
|
}
|
||||||
|
@ -132,6 +132,7 @@ where
|
||||||
crate::_priv_read_byte::<P>()
|
crate::_priv_read_byte::<P>()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[inline(never)]
|
||||||
fn read_bytes(&self, recieve_data: &mut RingBuffer<N>) {
|
fn read_bytes(&self, recieve_data: &mut RingBuffer<N>) {
|
||||||
let byte = <Self as SoftSerialReader<P, &mut RingBuffer<N>>>::read_byte(self);
|
let byte = <Self as SoftSerialReader<P, &mut RingBuffer<N>>>::read_byte(self);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue