mirror of
https://codeberg.org/icewind/pms700x.git
synced 2026-06-03 18:14:11 +02:00
validate active data
This commit is contained in:
parent
53064a4e47
commit
ab3f100e42
1 changed files with 2 additions and 3 deletions
|
|
@ -1,4 +1,4 @@
|
||||||
#![no_std]
|
//#![no_std]
|
||||||
|
|
||||||
use core::marker::PhantomData;
|
use core::marker::PhantomData;
|
||||||
use embedded_hal::serial::{Read, Write};
|
use embedded_hal::serial::{Read, Write};
|
||||||
|
|
@ -176,7 +176,7 @@ impl<Error, Serial: Read<u8, Error = Error> + Write<u8, Error = Error>>
|
||||||
{
|
{
|
||||||
pub fn read(&mut self) -> nb::Result<SensorData, Error> {
|
pub fn read(&mut self) -> nb::Result<SensorData, Error> {
|
||||||
self.reader.fill_data(&mut self.serial)?;
|
self.reader.fill_data(&mut self.serial)?;
|
||||||
if self.reader.length == 0x1c {
|
if self.reader.validate_data() {
|
||||||
Ok(SensorData::from_raw(&self.reader.data))
|
Ok(SensorData::from_raw(&self.reader.data))
|
||||||
} else {
|
} else {
|
||||||
Err(nb::Error::WouldBlock)
|
Err(nb::Error::WouldBlock)
|
||||||
|
|
@ -234,7 +234,6 @@ impl SensorReader {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[allow(dead_code)]
|
|
||||||
fn validate_data(&self) -> bool {
|
fn validate_data(&self) -> bool {
|
||||||
let mut sum = 0;
|
let mut sum = 0;
|
||||||
for byte in self.data.iter().take(self.length as usize + 2) {
|
for byte in self.data.iter().take(self.length as usize + 2) {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue