diff options
| author | xoviat <[email protected]> | 2023-06-20 17:45:28 -0500 |
|---|---|---|
| committer | GitHub <[email protected]> | 2023-06-20 17:45:28 -0500 |
| commit | ca21027eea1565b6d6fce631533943c3da7f56f0 (patch) | |
| tree | 26a34589b4e8ddb0495a5a26d9ba5fdf7fd9bc59 | |
| parent | 0a551eb7c6646af1b5c7e79849594fafe877e99a (diff) | |
| parent | f6c1108bdf444ba9aef1113ec39c7fc814dab85e (diff) | |
Merge pull request #3 from schphil/can
fix extended can id
| -rw-r--r-- | embassy-stm32/src/can/bxcan.rs | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/embassy-stm32/src/can/bxcan.rs b/embassy-stm32/src/can/bxcan.rs index 224c39ea3..88eef528f 100644 --- a/embassy-stm32/src/can/bxcan.rs +++ b/embassy-stm32/src/can/bxcan.rs | |||
| @@ -229,7 +229,10 @@ impl<'d, T: Instance> Can<'d, T> { | |||
| 229 | let id = if rir.ide() == RirIde::STANDARD { | 229 | let id = if rir.ide() == RirIde::STANDARD { |
| 230 | Id::from(StandardId::new_unchecked(rir.stid())) | 230 | Id::from(StandardId::new_unchecked(rir.stid())) |
| 231 | } else { | 231 | } else { |
| 232 | Id::from(ExtendedId::new_unchecked(rir.exid())) | 232 | let stid = (rir.stid() & 0x7FF) as u32; |
| 233 | let exid = rir.exid() & 0x3FFFF; | ||
| 234 | let id = (stid << 18) | (exid as u32); | ||
| 235 | Id::from(ExtendedId::new_unchecked(id)) | ||
| 233 | }; | 236 | }; |
| 234 | let data_len = fifo.rdtr().read().dlc() as usize; | 237 | let data_len = fifo.rdtr().read().dlc() as usize; |
| 235 | let mut data: [u8; 8] = [0; 8]; | 238 | let mut data: [u8; 8] = [0; 8]; |
