1
0
mirror of https://github.com/google/comprehensive-rust.git synced 2025-06-16 14:17:34 +02:00

Update to embedded-hal 1.0 (#1723)

Now that the new version of `microbit-v2` and friends are finally
released, we can use `embedded-hal` 1.0 for the bare metal morning.
This commit is contained in:
Andrew Walbran
2024-04-19 12:52:50 +01:00
committed by GitHub
parent c9e08fae60
commit 45aa43f406
7 changed files with 85 additions and 171 deletions

View File

@ -17,12 +17,6 @@ dependencies = [
"rustc_version",
]
[[package]]
name = "bare-metal"
version = "1.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f8fe8f5a8a398345e52358e18ff07cc17a568fbca5c6f73873d3a62056309603"
[[package]]
name = "bitfield"
version = "0.13.2"
@ -70,7 +64,7 @@ version = "0.7.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8ec610d8f49840a5b376c69663b6369e71f4b34484b9b2eb29fb918d92516cb9"
dependencies = [
"bare-metal 0.2.5",
"bare-metal",
"bitfield",
"embedded-hal 0.2.7",
"volatile-register",
@ -96,16 +90,6 @@ dependencies = [
"syn",
]
[[package]]
name = "critical-section"
version = "0.2.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c1706d332edc22aef4d9f23a6bb1c92360a403013c291af51247a737472dcae6"
dependencies = [
"bare-metal 1.0.0",
"critical-section 1.1.2",
]
[[package]]
name = "critical-section"
version = "1.1.2"
@ -120,9 +104,9 @@ checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7"
[[package]]
name = "embedded-dma"
version = "0.1.2"
version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "46c8c02e4347a0267ca60813c952017f4c5948c232474c6010a381a337f1bda4"
checksum = "994f7e5b5cb23521c22304927195f236813053eb9c065dd2226a32ba64695446"
dependencies = [
"stable_deref_trait",
]
@ -144,16 +128,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "361a90feb7004eca4019fb28352a9465666b24f840f5c3cddf0ff13920590b89"
[[package]]
name = "embedded-storage"
version = "0.2.0"
name = "embedded-io"
version = "0.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "723dce4e9f25b6e6c5f35628e144794e5b459216ed7da97b7c4b66cdb3fa82ca"
checksum = "edd0f118536f44f5ccd48bcb8b111bdc3de888b58c74639dfb034a357d0f206d"
[[package]]
name = "embedded-storage"
version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a21dea9854beb860f3062d10228ce9b976da520a73474aed3171ec276bc0c032"
[[package]]
name = "fixed"
version = "1.24.0"
version = "1.27.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "02c69ce7e7c0f17aa18fdd9d0de39727adb9c6281f2ad12f57cbe54ae6e76e7d"
checksum = "2fc715d38bea7b5bf487fcd79bcf8c209f0b58014f3018a7a19c2b855f472048"
dependencies = [
"az",
"bytemuck",
@ -173,31 +163,31 @@ dependencies = [
[[package]]
name = "lsm303agr"
version = "0.3.0"
version = "1.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "82d672443f0535384ea86fff40c50156c5fae3fe0446242edeb9ff993b63e0dc"
checksum = "d4a03acd01d27c9ca96ba8205760673a23ba1914d85cc00e92a6a05963d5fe9b"
dependencies = [
"bitflags",
"embedded-hal 0.2.7",
"embedded-hal 1.0.0",
"nb 1.1.0",
]
[[package]]
name = "microbit-common"
version = "0.13.0"
version = "0.14.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "45651d001be4281a6f4536c30f3d8522f231bc56fd58d5baf2c630f565d31256"
checksum = "37409f40befaa165d8a94255955475337422f5fe2fecaeeeedde170562ee114b"
dependencies = [
"embedded-hal 0.2.7",
"embedded-hal 1.0.0",
"nrf52833-hal",
"tiny-led-matrix",
]
[[package]]
name = "microbit-v2"
version = "0.13.0"
version = "0.14.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a9895242259950730bc112623e4a2e37345dc51ddb5fc8878c110489260d84e7"
checksum = "ba72e1c5b286e8374734e345a1c3b3d3768d77c9004bf905d2ca86e7c47088a9"
dependencies = [
"microbit-common",
]
@ -219,15 +209,16 @@ checksum = "8d5439c4ad607c3c23abf66de8c8bf57ba8adcd1f129e699851a6e43935d339d"
[[package]]
name = "nrf-hal-common"
version = "0.14.1"
version = "0.17.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bd37b3fd039327b4005cc0d4ef20bce0a41bf521071774d5adb854e4b1230639"
checksum = "56fbecd598c7f16e32bd4783447ca023aa7897d4a4c8e70f6b7c5739c81b4ceb"
dependencies = [
"cast",
"cfg-if",
"cortex-m",
"embedded-dma",
"embedded-hal 0.2.7",
"embedded-hal 1.0.0",
"embedded-io",
"embedded-storage",
"fixed",
"nb 1.1.0",
@ -239,33 +230,31 @@ dependencies = [
[[package]]
name = "nrf-usbd"
version = "0.1.1"
version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "640e88d4c108743c667f03320d0c9ab24a20f183a7a1b18bde7891ee13fd92c5"
checksum = "66b2907c0b3ec4d264981c1fc5a2321d51c463d5a63d386e573f00e84d5495e6"
dependencies = [
"bare-metal 1.0.0",
"cortex-m",
"critical-section 0.2.8",
"critical-section",
"usb-device",
"vcell",
]
[[package]]
name = "nrf52833-hal"
version = "0.14.1"
version = "0.17.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "87f76d269c9a239ffe24edaa5ee0972b102c04e898b464e3e9a12ab0eacd5f76"
checksum = "10409e4c7a9af33161da0ac7329ea50d94bec24c9184cdec6138fd2bd590bdd3"
dependencies = [
"embedded-hal 0.2.7",
"nrf-hal-common",
"nrf52833-pac",
]
[[package]]
name = "nrf52833-pac"
version = "0.10.1"
version = "0.12.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cd69bdb25903e18e098c040ef31dc863814437af010dea8bd55aa31f686cb461"
checksum = "10e1358255b360cdc816dd7b6ef81be8c8499c0998277e5249bed222bd0f5241"
dependencies = [
"cortex-m",
"cortex-m-rt",

View File

@ -9,6 +9,6 @@ publish = false
[dependencies]
cortex-m-rt = "0.7.3"
embedded-hal = "1.0.0"
lsm303agr = "0.3.0"
microbit-v2 = "0.13.0"
lsm303agr = "1.0.0"
microbit-v2 = "0.14.0"
panic-halt = "0.2.0"

View File

@ -23,11 +23,11 @@ use core::fmt::Write;
use cortex_m_rt::entry;
// ANCHOR_END: top
use core::cmp::{max, min};
use embedded_hal::digital::InputPin;
use lsm303agr::{
AccelMode, AccelOutputDataRate, Lsm303agr, MagMode, MagOutputDataRate,
};
use microbit::display::blocking::Display;
use microbit::hal::prelude::*;
use microbit::hal::twim::Twim;
use microbit::hal::uarte::{Baudrate, Parity, Uarte};
use microbit::hal::{Delay, Timer};
@ -40,7 +40,7 @@ const ACCELEROMETER_SCALE: i32 = 700;
// ANCHOR: main
#[entry]
fn main() -> ! {
let board = Board::take().unwrap();
let mut board = Board::take().unwrap();
// Configure serial port.
let mut serial = Uarte::new(