Skip to content

Commit c854a4b

Browse files
committed
Fix spi delay units
1 parent fbd0e8f commit c854a4b

File tree

1 file changed

+13
-2
lines changed

1 file changed

+13
-2
lines changed

src/spi.rs

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -221,8 +221,19 @@ mod embedded_hal_impl {
221221
transfers.push(SpidevTransfer::read_write(tx, buf));
222222
}
223223
SpiOperation::DelayNs(ns) => {
224-
let ns = (*ns).try_into().unwrap_or(u16::MAX);
225-
transfers.push(SpidevTransfer::delay(ns));
224+
let us = {
225+
if *ns == 0 {
226+
0
227+
} else {
228+
let us = *ns / 1000;
229+
if us == 0 {
230+
1
231+
} else {
232+
(us).try_into().unwrap_or(u16::MAX)
233+
}
234+
}
235+
};
236+
transfers.push(SpidevTransfer::delay(us));
226237
}
227238
}
228239
}

0 commit comments

Comments
 (0)