├── .gitignore ├── .cargo └── config.toml ├── README.md ├── src └── main.rs ├── Cargo.toml └── Cargo.lock /.gitignore: -------------------------------------------------------------------------------- 1 | /target 2 | -------------------------------------------------------------------------------- /.cargo/config.toml: -------------------------------------------------------------------------------- 1 | [target.'cfg(all(target_arch = "arm", target_os = "none"))'] 2 | # replace STM32F429ZITx with your chip as listed in `probe-run --list-chips` 3 | runner = "probe-run --chip STM32F303ZETx" 4 | 5 | [build] 6 | target = "thumbv7em-none-eabihf" 7 | 8 | [env] 9 | DEFMT_LOG = "trace" 10 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | This code will flash the LEDs in the circle on an STM32F3 Discovery board, using the [Embassy](https://embassy.dev) Rust libraries. 2 | 3 | To use, you may need to add the target. I'm using Rustup, so this was just `rustup target add thumbv7em-none-eabihf`. You also need [probe-run](https://github.com/knurling-rs/probe-run) available on your path. This may be provided by your distribution, or installable via `cargo install probe-run`. 4 | 5 | After that, `cargo run` should compile the code and, assuming you have the board connected via USB to the ST-Link port, flash it and run it with debug messages visible in your console. 6 | -------------------------------------------------------------------------------- /src/main.rs: -------------------------------------------------------------------------------- 1 | #![no_std] 2 | #![no_main] 3 | #![feature(type_alias_impl_trait)] 4 | 5 | use defmt::*; 6 | use embassy_executor::Spawner; 7 | use embassy_stm32::gpio::{Level, Output, Pin, Speed}; 8 | use embassy_time::{Duration, Timer}; 9 | use {defmt_rtt as _, panic_probe as _}; 10 | 11 | #[embassy_executor::main] 12 | async fn main(_spawner: Spawner) { 13 | let p = embassy_stm32::init(Default::default()); 14 | info!("Hello World!"); 15 | 16 | let ld3 = Output::new(p.PE9.degrade(), Level::Low, Speed::Low); 17 | let ld5 = Output::new(p.PE10.degrade(), Level::Low, Speed::Low); 18 | let ld7 = Output::new(p.PE11.degrade(), Level::Low, Speed::Low); 19 | let ld9 = Output::new(p.PE12.degrade(), Level::Low, Speed::Low); 20 | let ld10 = Output::new(p.PE13.degrade(), Level::Low, Speed::Low); 21 | let ld8 = Output::new(p.PE14.degrade(), Level::Low, Speed::Low); 22 | let ld6 = Output::new(p.PE15.degrade(), Level::Low, Speed::Low); 23 | let ld4 = Output::new(p.PE8.degrade(), Level::Low, Speed::Low); 24 | 25 | let mut circle: [Output<_>; 8] = [ld3, ld5, ld7, ld9, ld10, ld8, ld6, ld4]; 26 | let mut index = 0; 27 | 28 | loop { 29 | let led = &mut circle[index]; 30 | 31 | info!("high"); 32 | led.set_high(); 33 | Timer::after(Duration::from_millis(100)).await; 34 | 35 | info!("low"); 36 | led.set_low(); 37 | Timer::after(Duration::from_millis(100)).await; 38 | 39 | index = (index + 1) % 8; 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- 1 | [package] 2 | edition = "2021" 3 | name = "stm32-led-spin" 4 | version = "0.1.0" 5 | license = "MIT OR Apache-2.0" 6 | 7 | [dependencies] 8 | embassy-sync = { version = "0.1.0", git = "https://github.com/embassy-rs/embassy", features = ["defmt"] } 9 | embassy-executor = { version = "0.1.0", git = "https://github.com/embassy-rs/embassy", features = ["defmt", "integrated-timers", "nightly"] } 10 | embassy-time = { version = "0.1.0", git = "https://github.com/embassy-rs/embassy", features = ["defmt", "defmt-timestamp-uptime", "tick-hz-32_768"] } 11 | embassy-stm32 = { version = "0.1.0", git = "https://github.com/embassy-rs/embassy", features = ["nightly", "defmt", "stm32f303vc", "unstable-pac", "memory-x", "time-driver-any", "exti"] } 12 | embassy-usb = { version = "0.1.0", git = "https://github.com/embassy-rs/embassy", features = ["defmt"] } 13 | embassy-futures = { version = "0.1.0", git = "https://github.com/embassy-rs/embassy" } 14 | embassy-macros = { version = "0.1.0", git = "https://github.com/embassy-rs/embassy" } 15 | 16 | 17 | defmt = "0.3" 18 | defmt-rtt = "0.4" 19 | 20 | cortex-m = { version = "0.7.6", features = ["critical-section-single-core"] } 21 | cortex-m-rt = "0.7.0" 22 | embedded-hal = "0.2.6" 23 | panic-probe = { version = "0.3", features = ["print-defmt"] } 24 | futures = { version = "0.3.17", default-features = false, features = ["async-await"] } 25 | heapless = { version = "0.7.5", default-features = false } 26 | nb = "1.0.0" 27 | embedded-storage = "0.3.0" 28 | static_cell = "1.0" 29 | -------------------------------------------------------------------------------- /Cargo.lock: -------------------------------------------------------------------------------- 1 | # This file is automatically @generated by Cargo. 2 | # It is not intended for manual editing. 3 | version = 3 4 | 5 | [[package]] 6 | name = "aho-corasick" 7 | version = "0.7.20" 8 | source = "registry+https://github.com/rust-lang/crates.io-index" 9 | checksum = "cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac" 10 | dependencies = [ 11 | "memchr", 12 | ] 13 | 14 | [[package]] 15 | name = "anyhow" 16 | version = "1.0.68" 17 | source = "registry+https://github.com/rust-lang/crates.io-index" 18 | checksum = "2cb2f989d18dd141ab8ae82f64d1a8cdd37e0840f73a406896cf5e99502fab61" 19 | 20 | [[package]] 21 | name = "atomic-polyfill" 22 | version = "0.1.11" 23 | source = "registry+https://github.com/rust-lang/crates.io-index" 24 | checksum = "e3ff7eb3f316534d83a8a2c3d1674ace8a5a71198eba31e2e2b597833f699b28" 25 | dependencies = [ 26 | "critical-section", 27 | ] 28 | 29 | [[package]] 30 | name = "atomic-polyfill" 31 | version = "1.0.1" 32 | source = "registry+https://github.com/rust-lang/crates.io-index" 33 | checksum = "d299f547288d6db8d5c3a2916f7b2f66134b15b8c1ac1c4357dd3b8752af7bb2" 34 | dependencies = [ 35 | "critical-section", 36 | ] 37 | 38 | [[package]] 39 | name = "atty" 40 | version = "0.2.14" 41 | source = "registry+https://github.com/rust-lang/crates.io-index" 42 | checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" 43 | dependencies = [ 44 | "hermit-abi 0.1.19", 45 | "libc", 46 | "winapi", 47 | ] 48 | 49 | [[package]] 50 | name = "autocfg" 51 | version = "1.1.0" 52 | source = "registry+https://github.com/rust-lang/crates.io-index" 53 | checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" 54 | 55 | [[package]] 56 | name = "bare-metal" 57 | version = "0.2.5" 58 | source = "registry+https://github.com/rust-lang/crates.io-index" 59 | checksum = "5deb64efa5bd81e31fcd1938615a6d98c82eafcbcd787162b6f63b91d6bac5b3" 60 | dependencies = [ 61 | "rustc_version 0.2.3", 62 | ] 63 | 64 | [[package]] 65 | name = "bitfield" 66 | version = "0.13.2" 67 | source = "registry+https://github.com/rust-lang/crates.io-index" 68 | checksum = "46afbd2983a5d5a7bd740ccb198caf5b82f45c40c09c0eed36052d91cb92e719" 69 | 70 | [[package]] 71 | name = "bitflags" 72 | version = "1.3.2" 73 | source = "registry+https://github.com/rust-lang/crates.io-index" 74 | checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" 75 | 76 | [[package]] 77 | name = "bxcan" 78 | version = "0.7.0" 79 | source = "registry+https://github.com/rust-lang/crates.io-index" 80 | checksum = "40ac3d0c0a542d0ab5521211f873f62706a7136df415676f676d347e5a41dd80" 81 | dependencies = [ 82 | "bitflags", 83 | "defmt", 84 | "embedded-hal 0.2.7", 85 | "nb 1.0.0", 86 | "vcell", 87 | ] 88 | 89 | [[package]] 90 | name = "byteorder" 91 | version = "1.4.3" 92 | source = "registry+https://github.com/rust-lang/crates.io-index" 93 | checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" 94 | 95 | [[package]] 96 | name = "cfg-if" 97 | version = "1.0.0" 98 | source = "registry+https://github.com/rust-lang/crates.io-index" 99 | checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" 100 | 101 | [[package]] 102 | name = "chiptool" 103 | version = "0.1.0" 104 | source = "git+https://github.com/embassy-rs/chiptool?rev=28ffa8a19d84914089547f52900ffb5877a5dc23#28ffa8a19d84914089547f52900ffb5877a5dc23" 105 | dependencies = [ 106 | "anyhow", 107 | "clap", 108 | "env_logger", 109 | "inflections", 110 | "log", 111 | "proc-macro2", 112 | "quote", 113 | "regex", 114 | "serde", 115 | "serde_yaml", 116 | "svd-parser", 117 | ] 118 | 119 | [[package]] 120 | name = "clap" 121 | version = "3.2.23" 122 | source = "registry+https://github.com/rust-lang/crates.io-index" 123 | checksum = "71655c45cb9845d3270c9d6df84ebe72b4dad3c2ba3f7023ad47c144e4e473a5" 124 | dependencies = [ 125 | "atty", 126 | "bitflags", 127 | "clap_derive", 128 | "clap_lex", 129 | "indexmap", 130 | "once_cell", 131 | "strsim", 132 | "termcolor", 133 | "textwrap", 134 | ] 135 | 136 | [[package]] 137 | name = "clap_derive" 138 | version = "3.2.18" 139 | source = "registry+https://github.com/rust-lang/crates.io-index" 140 | checksum = "ea0c8bce528c4be4da13ea6fead8965e95b6073585a2f05204bd8f4119f82a65" 141 | dependencies = [ 142 | "heck", 143 | "proc-macro-error", 144 | "proc-macro2", 145 | "quote", 146 | "syn", 147 | ] 148 | 149 | [[package]] 150 | name = "clap_lex" 151 | version = "0.2.4" 152 | source = "registry+https://github.com/rust-lang/crates.io-index" 153 | checksum = "2850f2f5a82cbf437dd5af4d49848fbdfc27c157c3d010345776f952765261c5" 154 | dependencies = [ 155 | "os_str_bytes", 156 | ] 157 | 158 | [[package]] 159 | name = "cortex-m" 160 | version = "0.7.6" 161 | source = "registry+https://github.com/rust-lang/crates.io-index" 162 | checksum = "70858629a458fdfd39f9675c4dc309411f2a3f83bede76988d81bf1a0ecee9e0" 163 | dependencies = [ 164 | "bare-metal", 165 | "bitfield", 166 | "critical-section", 167 | "embedded-hal 0.2.7", 168 | "volatile-register", 169 | ] 170 | 171 | [[package]] 172 | name = "cortex-m-rt" 173 | version = "0.7.2" 174 | source = "registry+https://github.com/rust-lang/crates.io-index" 175 | checksum = "d6d3328b8b5534f0c90acd66b68950f2763b37e0173cac4d8b4937c4a80761f9" 176 | dependencies = [ 177 | "cortex-m-rt-macros", 178 | ] 179 | 180 | [[package]] 181 | name = "cortex-m-rt-macros" 182 | version = "0.7.0" 183 | source = "registry+https://github.com/rust-lang/crates.io-index" 184 | checksum = "f0f6f3e36f203cfedbc78b357fb28730aa2c6dc1ab060ee5c2405e843988d3c7" 185 | dependencies = [ 186 | "proc-macro2", 187 | "quote", 188 | "syn", 189 | ] 190 | 191 | [[package]] 192 | name = "critical-section" 193 | version = "1.1.1" 194 | source = "registry+https://github.com/rust-lang/crates.io-index" 195 | checksum = "6548a0ad5d2549e111e1f6a11a6c2e2d00ce6a3dafe22948d67c2b443f775e52" 196 | 197 | [[package]] 198 | name = "crossbeam-channel" 199 | version = "0.5.6" 200 | source = "registry+https://github.com/rust-lang/crates.io-index" 201 | checksum = "c2dd04ddaf88237dc3b8d8f9a3c1004b506b54b3313403944054d23c0870c521" 202 | dependencies = [ 203 | "cfg-if", 204 | "crossbeam-utils", 205 | ] 206 | 207 | [[package]] 208 | name = "crossbeam-deque" 209 | version = "0.8.2" 210 | source = "registry+https://github.com/rust-lang/crates.io-index" 211 | checksum = "715e8152b692bba2d374b53d4875445368fdf21a94751410af607a5ac677d1fc" 212 | dependencies = [ 213 | "cfg-if", 214 | "crossbeam-epoch", 215 | "crossbeam-utils", 216 | ] 217 | 218 | [[package]] 219 | name = "crossbeam-epoch" 220 | version = "0.9.13" 221 | source = "registry+https://github.com/rust-lang/crates.io-index" 222 | checksum = "01a9af1f4c2ef74bb8aa1f7e19706bc72d03598c8a570bb5de72243c7a9d9d5a" 223 | dependencies = [ 224 | "autocfg", 225 | "cfg-if", 226 | "crossbeam-utils", 227 | "memoffset", 228 | "scopeguard", 229 | ] 230 | 231 | [[package]] 232 | name = "crossbeam-utils" 233 | version = "0.8.14" 234 | source = "registry+https://github.com/rust-lang/crates.io-index" 235 | checksum = "4fb766fa798726286dbbb842f174001dab8abc7b627a1dd86e0b7222a95d929f" 236 | dependencies = [ 237 | "cfg-if", 238 | ] 239 | 240 | [[package]] 241 | name = "darling" 242 | version = "0.13.4" 243 | source = "registry+https://github.com/rust-lang/crates.io-index" 244 | checksum = "a01d95850c592940db9b8194bc39f4bc0e89dee5c4265e4b1807c34a9aba453c" 245 | dependencies = [ 246 | "darling_core", 247 | "darling_macro", 248 | ] 249 | 250 | [[package]] 251 | name = "darling_core" 252 | version = "0.13.4" 253 | source = "registry+https://github.com/rust-lang/crates.io-index" 254 | checksum = "859d65a907b6852c9361e3185c862aae7fafd2887876799fa55f5f99dc40d610" 255 | dependencies = [ 256 | "fnv", 257 | "ident_case", 258 | "proc-macro2", 259 | "quote", 260 | "strsim", 261 | "syn", 262 | ] 263 | 264 | [[package]] 265 | name = "darling_macro" 266 | version = "0.13.4" 267 | source = "registry+https://github.com/rust-lang/crates.io-index" 268 | checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835" 269 | dependencies = [ 270 | "darling_core", 271 | "quote", 272 | "syn", 273 | ] 274 | 275 | [[package]] 276 | name = "defmt" 277 | version = "0.3.2" 278 | source = "registry+https://github.com/rust-lang/crates.io-index" 279 | checksum = "d3a0ae7494d9bff013d7b89471f4c424356a71e9752e0c78abe7e6c608a16bb3" 280 | dependencies = [ 281 | "bitflags", 282 | "defmt-macros", 283 | ] 284 | 285 | [[package]] 286 | name = "defmt-macros" 287 | version = "0.3.3" 288 | source = "registry+https://github.com/rust-lang/crates.io-index" 289 | checksum = "8500cbe4cca056412efce4215a63d0bc20492942aeee695f23b624a53e0a6854" 290 | dependencies = [ 291 | "defmt-parser", 292 | "proc-macro-error", 293 | "proc-macro2", 294 | "quote", 295 | "syn", 296 | ] 297 | 298 | [[package]] 299 | name = "defmt-parser" 300 | version = "0.3.1" 301 | source = "registry+https://github.com/rust-lang/crates.io-index" 302 | checksum = "0db23d29972d99baa3de2ee2ae3f104c10564a6d05a346eb3f4c4f2c0525a06e" 303 | 304 | [[package]] 305 | name = "defmt-rtt" 306 | version = "0.4.0" 307 | source = "registry+https://github.com/rust-lang/crates.io-index" 308 | checksum = "609923761264dd99ed9c7d209718cda4631c5fe84668e0f0960124cbb844c49f" 309 | dependencies = [ 310 | "critical-section", 311 | "defmt", 312 | ] 313 | 314 | [[package]] 315 | name = "either" 316 | version = "1.8.0" 317 | source = "registry+https://github.com/rust-lang/crates.io-index" 318 | checksum = "90e5c1c8368803113bf0c9584fc495a58b86dc8a29edbf8fe877d21d9507e797" 319 | 320 | [[package]] 321 | name = "embassy-cortex-m" 322 | version = "0.1.0" 323 | source = "git+https://github.com/embassy-rs/embassy#147609d3bde445b663d0e75c8bccdb152b9c7e1e" 324 | dependencies = [ 325 | "atomic-polyfill 1.0.1", 326 | "cfg-if", 327 | "cortex-m", 328 | "critical-section", 329 | "embassy-executor", 330 | "embassy-hal-common", 331 | "embassy-macros", 332 | "embassy-sync", 333 | ] 334 | 335 | [[package]] 336 | name = "embassy-embedded-hal" 337 | version = "0.1.0" 338 | source = "git+https://github.com/embassy-rs/embassy#147609d3bde445b663d0e75c8bccdb152b9c7e1e" 339 | dependencies = [ 340 | "defmt", 341 | "embassy-sync", 342 | "embedded-hal 0.2.7", 343 | "embedded-hal 1.0.0-alpha.9", 344 | "embedded-hal-async", 345 | "embedded-storage", 346 | "embedded-storage-async", 347 | "nb 1.0.0", 348 | ] 349 | 350 | [[package]] 351 | name = "embassy-executor" 352 | version = "0.1.1" 353 | source = "git+https://github.com/embassy-rs/embassy#147609d3bde445b663d0e75c8bccdb152b9c7e1e" 354 | dependencies = [ 355 | "atomic-polyfill 1.0.1", 356 | "cfg-if", 357 | "critical-section", 358 | "defmt", 359 | "embassy-macros", 360 | "embassy-time", 361 | "futures-util", 362 | "static_cell", 363 | ] 364 | 365 | [[package]] 366 | name = "embassy-futures" 367 | version = "0.1.0" 368 | source = "git+https://github.com/embassy-rs/embassy#147609d3bde445b663d0e75c8bccdb152b9c7e1e" 369 | 370 | [[package]] 371 | name = "embassy-hal-common" 372 | version = "0.1.0" 373 | source = "git+https://github.com/embassy-rs/embassy#147609d3bde445b663d0e75c8bccdb152b9c7e1e" 374 | dependencies = [ 375 | "defmt", 376 | "num-traits", 377 | ] 378 | 379 | [[package]] 380 | name = "embassy-macros" 381 | version = "0.1.0" 382 | source = "git+https://github.com/embassy-rs/embassy#147609d3bde445b663d0e75c8bccdb152b9c7e1e" 383 | dependencies = [ 384 | "darling", 385 | "proc-macro2", 386 | "quote", 387 | "syn", 388 | ] 389 | 390 | [[package]] 391 | name = "embassy-net-driver" 392 | version = "0.1.0" 393 | source = "git+https://github.com/embassy-rs/embassy#147609d3bde445b663d0e75c8bccdb152b9c7e1e" 394 | dependencies = [ 395 | "defmt", 396 | ] 397 | 398 | [[package]] 399 | name = "embassy-net-driver-channel" 400 | version = "0.1.0" 401 | source = "git+https://github.com/embassy-rs/embassy#147609d3bde445b663d0e75c8bccdb152b9c7e1e" 402 | dependencies = [ 403 | "embassy-futures", 404 | "embassy-net-driver", 405 | "embassy-sync", 406 | ] 407 | 408 | [[package]] 409 | name = "embassy-stm32" 410 | version = "0.1.0" 411 | source = "git+https://github.com/embassy-rs/embassy#147609d3bde445b663d0e75c8bccdb152b9c7e1e" 412 | dependencies = [ 413 | "atomic-polyfill 1.0.1", 414 | "bxcan", 415 | "cfg-if", 416 | "cortex-m", 417 | "cortex-m-rt", 418 | "critical-section", 419 | "defmt", 420 | "embassy-cortex-m", 421 | "embassy-embedded-hal", 422 | "embassy-executor", 423 | "embassy-futures", 424 | "embassy-hal-common", 425 | "embassy-net-driver", 426 | "embassy-sync", 427 | "embassy-time", 428 | "embassy-usb-driver", 429 | "embedded-hal 0.2.7", 430 | "embedded-hal 1.0.0-alpha.9", 431 | "embedded-hal-async", 432 | "embedded-io", 433 | "embedded-storage", 434 | "embedded-storage-async", 435 | "futures", 436 | "nb 1.0.0", 437 | "proc-macro2", 438 | "quote", 439 | "rand_core", 440 | "sdio-host", 441 | "seq-macro", 442 | "stm32-fmc", 443 | "stm32-metapac", 444 | "vcell", 445 | ] 446 | 447 | [[package]] 448 | name = "embassy-sync" 449 | version = "0.1.0" 450 | source = "git+https://github.com/embassy-rs/embassy#147609d3bde445b663d0e75c8bccdb152b9c7e1e" 451 | dependencies = [ 452 | "cfg-if", 453 | "critical-section", 454 | "defmt", 455 | "embedded-io", 456 | "futures-util", 457 | "heapless", 458 | ] 459 | 460 | [[package]] 461 | name = "embassy-time" 462 | version = "0.1.0" 463 | source = "git+https://github.com/embassy-rs/embassy#147609d3bde445b663d0e75c8bccdb152b9c7e1e" 464 | dependencies = [ 465 | "atomic-polyfill 1.0.1", 466 | "cfg-if", 467 | "critical-section", 468 | "defmt", 469 | "embassy-sync", 470 | "embedded-hal 0.2.7", 471 | "futures-util", 472 | "heapless", 473 | ] 474 | 475 | [[package]] 476 | name = "embassy-usb" 477 | version = "0.1.0" 478 | source = "git+https://github.com/embassy-rs/embassy#147609d3bde445b663d0e75c8bccdb152b9c7e1e" 479 | dependencies = [ 480 | "defmt", 481 | "embassy-futures", 482 | "embassy-net-driver-channel", 483 | "embassy-sync", 484 | "embassy-usb-driver", 485 | "heapless", 486 | "ssmarshal", 487 | "usbd-hid", 488 | ] 489 | 490 | [[package]] 491 | name = "embassy-usb-driver" 492 | version = "0.1.0" 493 | source = "git+https://github.com/embassy-rs/embassy#147609d3bde445b663d0e75c8bccdb152b9c7e1e" 494 | dependencies = [ 495 | "defmt", 496 | ] 497 | 498 | [[package]] 499 | name = "embedded-hal" 500 | version = "0.2.7" 501 | source = "registry+https://github.com/rust-lang/crates.io-index" 502 | checksum = "35949884794ad573cf46071e41c9b60efb0cb311e3ca01f7af807af1debc66ff" 503 | dependencies = [ 504 | "nb 0.1.3", 505 | "void", 506 | ] 507 | 508 | [[package]] 509 | name = "embedded-hal" 510 | version = "1.0.0-alpha.9" 511 | source = "registry+https://github.com/rust-lang/crates.io-index" 512 | checksum = "129b101ddfee640565f7c07b301a31d95aa21e5acef21a491c307139f5fa4c91" 513 | 514 | [[package]] 515 | name = "embedded-hal-async" 516 | version = "0.2.0-alpha.0" 517 | source = "registry+https://github.com/rust-lang/crates.io-index" 518 | checksum = "608a322808d65da06715e03109c0cb69f79a5459af756fba393ab83e875d4969" 519 | dependencies = [ 520 | "embedded-hal 1.0.0-alpha.9", 521 | ] 522 | 523 | [[package]] 524 | name = "embedded-io" 525 | version = "0.4.0" 526 | source = "registry+https://github.com/rust-lang/crates.io-index" 527 | checksum = "ef1a6892d9eef45c8fa6b9e0086428a2cca8491aca8f787c534a3d6d0bcb3ced" 528 | dependencies = [ 529 | "defmt", 530 | ] 531 | 532 | [[package]] 533 | name = "embedded-storage" 534 | version = "0.3.0" 535 | source = "registry+https://github.com/rust-lang/crates.io-index" 536 | checksum = "156d7a2fdd98ebbf9ae579cbceca3058cff946e13f8e17b90e3511db0508c723" 537 | 538 | [[package]] 539 | name = "embedded-storage-async" 540 | version = "0.3.0" 541 | source = "registry+https://github.com/rust-lang/crates.io-index" 542 | checksum = "5ff04af74e47e9bb4315bd7aa2b01f3d1b05f33c03a6c4e9c3b20e9ce9cd8d79" 543 | dependencies = [ 544 | "embedded-storage", 545 | ] 546 | 547 | [[package]] 548 | name = "encode_unicode" 549 | version = "0.3.6" 550 | source = "registry+https://github.com/rust-lang/crates.io-index" 551 | checksum = "a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f" 552 | 553 | [[package]] 554 | name = "env_logger" 555 | version = "0.9.3" 556 | source = "registry+https://github.com/rust-lang/crates.io-index" 557 | checksum = "a12e6657c4c97ebab115a42dcee77225f7f482cdd841cf7088c657a42e9e00e7" 558 | dependencies = [ 559 | "atty", 560 | "humantime", 561 | "log", 562 | "regex", 563 | "termcolor", 564 | ] 565 | 566 | [[package]] 567 | name = "fnv" 568 | version = "1.0.7" 569 | source = "registry+https://github.com/rust-lang/crates.io-index" 570 | checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" 571 | 572 | [[package]] 573 | name = "futures" 574 | version = "0.3.25" 575 | source = "registry+https://github.com/rust-lang/crates.io-index" 576 | checksum = "38390104763dc37a5145a53c29c63c1290b5d316d6086ec32c293f6736051bb0" 577 | dependencies = [ 578 | "futures-channel", 579 | "futures-core", 580 | "futures-io", 581 | "futures-sink", 582 | "futures-task", 583 | "futures-util", 584 | ] 585 | 586 | [[package]] 587 | name = "futures-channel" 588 | version = "0.3.25" 589 | source = "registry+https://github.com/rust-lang/crates.io-index" 590 | checksum = "52ba265a92256105f45b719605a571ffe2d1f0fea3807304b522c1d778f79eed" 591 | dependencies = [ 592 | "futures-core", 593 | "futures-sink", 594 | ] 595 | 596 | [[package]] 597 | name = "futures-core" 598 | version = "0.3.25" 599 | source = "registry+https://github.com/rust-lang/crates.io-index" 600 | checksum = "04909a7a7e4633ae6c4a9ab280aeb86da1236243a77b694a49eacd659a4bd3ac" 601 | 602 | [[package]] 603 | name = "futures-io" 604 | version = "0.3.25" 605 | source = "registry+https://github.com/rust-lang/crates.io-index" 606 | checksum = "00f5fb52a06bdcadeb54e8d3671f8888a39697dcb0b81b23b55174030427f4eb" 607 | 608 | [[package]] 609 | name = "futures-macro" 610 | version = "0.3.25" 611 | source = "registry+https://github.com/rust-lang/crates.io-index" 612 | checksum = "bdfb8ce053d86b91919aad980c220b1fb8401a9394410e1c289ed7e66b61835d" 613 | dependencies = [ 614 | "proc-macro2", 615 | "quote", 616 | "syn", 617 | ] 618 | 619 | [[package]] 620 | name = "futures-sink" 621 | version = "0.3.25" 622 | source = "registry+https://github.com/rust-lang/crates.io-index" 623 | checksum = "39c15cf1a4aa79df40f1bb462fb39676d0ad9e366c2a33b590d7c66f4f81fcf9" 624 | 625 | [[package]] 626 | name = "futures-task" 627 | version = "0.3.25" 628 | source = "registry+https://github.com/rust-lang/crates.io-index" 629 | checksum = "2ffb393ac5d9a6eaa9d3fdf37ae2776656b706e200c8e16b1bdb227f5198e6ea" 630 | 631 | [[package]] 632 | name = "futures-util" 633 | version = "0.3.25" 634 | source = "registry+https://github.com/rust-lang/crates.io-index" 635 | checksum = "197676987abd2f9cadff84926f410af1c183608d36641465df73ae8211dc65d6" 636 | dependencies = [ 637 | "futures-core", 638 | "futures-macro", 639 | "futures-sink", 640 | "futures-task", 641 | "pin-project-lite", 642 | "pin-utils", 643 | ] 644 | 645 | [[package]] 646 | name = "hash32" 647 | version = "0.2.1" 648 | source = "registry+https://github.com/rust-lang/crates.io-index" 649 | checksum = "b0c35f58762feb77d74ebe43bdbc3210f09be9fe6742234d573bacc26ed92b67" 650 | dependencies = [ 651 | "byteorder", 652 | ] 653 | 654 | [[package]] 655 | name = "hashbrown" 656 | version = "0.12.3" 657 | source = "registry+https://github.com/rust-lang/crates.io-index" 658 | checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" 659 | 660 | [[package]] 661 | name = "heapless" 662 | version = "0.7.16" 663 | source = "registry+https://github.com/rust-lang/crates.io-index" 664 | checksum = "db04bc24a18b9ea980628ecf00e6c0264f3c1426dac36c00cb49b6fbad8b0743" 665 | dependencies = [ 666 | "atomic-polyfill 0.1.11", 667 | "hash32", 668 | "rustc_version 0.4.0", 669 | "spin", 670 | "stable_deref_trait", 671 | ] 672 | 673 | [[package]] 674 | name = "heck" 675 | version = "0.4.0" 676 | source = "registry+https://github.com/rust-lang/crates.io-index" 677 | checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9" 678 | 679 | [[package]] 680 | name = "hermit-abi" 681 | version = "0.1.19" 682 | source = "registry+https://github.com/rust-lang/crates.io-index" 683 | checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33" 684 | dependencies = [ 685 | "libc", 686 | ] 687 | 688 | [[package]] 689 | name = "hermit-abi" 690 | version = "0.2.6" 691 | source = "registry+https://github.com/rust-lang/crates.io-index" 692 | checksum = "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7" 693 | dependencies = [ 694 | "libc", 695 | ] 696 | 697 | [[package]] 698 | name = "humantime" 699 | version = "2.1.0" 700 | source = "registry+https://github.com/rust-lang/crates.io-index" 701 | checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" 702 | 703 | [[package]] 704 | name = "ident_case" 705 | version = "1.0.1" 706 | source = "registry+https://github.com/rust-lang/crates.io-index" 707 | checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" 708 | 709 | [[package]] 710 | name = "indexmap" 711 | version = "1.9.2" 712 | source = "registry+https://github.com/rust-lang/crates.io-index" 713 | checksum = "1885e79c1fc4b10f0e172c475f458b7f7b93061064d98c3293e98c5ba0c8b399" 714 | dependencies = [ 715 | "autocfg", 716 | "hashbrown", 717 | ] 718 | 719 | [[package]] 720 | name = "inflections" 721 | version = "1.1.1" 722 | source = "registry+https://github.com/rust-lang/crates.io-index" 723 | checksum = "a257582fdcde896fd96463bf2d40eefea0580021c0712a0e2b028b60b47a837a" 724 | 725 | [[package]] 726 | name = "itoa" 727 | version = "1.0.5" 728 | source = "registry+https://github.com/rust-lang/crates.io-index" 729 | checksum = "fad582f4b9e86b6caa621cabeb0963332d92eea04729ab12892c2533951e6440" 730 | 731 | [[package]] 732 | name = "libc" 733 | version = "0.2.139" 734 | source = "registry+https://github.com/rust-lang/crates.io-index" 735 | checksum = "201de327520df007757c1f0adce6e827fe8562fbc28bfd9c15571c66ca1f5f79" 736 | 737 | [[package]] 738 | name = "linked-hash-map" 739 | version = "0.5.6" 740 | source = "registry+https://github.com/rust-lang/crates.io-index" 741 | checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" 742 | 743 | [[package]] 744 | name = "lock_api" 745 | version = "0.4.9" 746 | source = "registry+https://github.com/rust-lang/crates.io-index" 747 | checksum = "435011366fe56583b16cf956f9df0095b405b82d76425bc8981c0e22e60ec4df" 748 | dependencies = [ 749 | "autocfg", 750 | "scopeguard", 751 | ] 752 | 753 | [[package]] 754 | name = "log" 755 | version = "0.4.17" 756 | source = "registry+https://github.com/rust-lang/crates.io-index" 757 | checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e" 758 | dependencies = [ 759 | "cfg-if", 760 | ] 761 | 762 | [[package]] 763 | name = "memchr" 764 | version = "2.5.0" 765 | source = "registry+https://github.com/rust-lang/crates.io-index" 766 | checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" 767 | 768 | [[package]] 769 | name = "memoffset" 770 | version = "0.7.1" 771 | source = "registry+https://github.com/rust-lang/crates.io-index" 772 | checksum = "5de893c32cde5f383baa4c04c5d6dbdd735cfd4a794b0debdb2bb1b421da5ff4" 773 | dependencies = [ 774 | "autocfg", 775 | ] 776 | 777 | [[package]] 778 | name = "nb" 779 | version = "0.1.3" 780 | source = "registry+https://github.com/rust-lang/crates.io-index" 781 | checksum = "801d31da0513b6ec5214e9bf433a77966320625a37860f910be265be6e18d06f" 782 | dependencies = [ 783 | "nb 1.0.0", 784 | ] 785 | 786 | [[package]] 787 | name = "nb" 788 | version = "1.0.0" 789 | source = "registry+https://github.com/rust-lang/crates.io-index" 790 | checksum = "546c37ac5d9e56f55e73b677106873d9d9f5190605e41a856503623648488cae" 791 | 792 | [[package]] 793 | name = "num-traits" 794 | version = "0.2.15" 795 | source = "registry+https://github.com/rust-lang/crates.io-index" 796 | checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd" 797 | dependencies = [ 798 | "autocfg", 799 | ] 800 | 801 | [[package]] 802 | name = "num_cpus" 803 | version = "1.15.0" 804 | source = "registry+https://github.com/rust-lang/crates.io-index" 805 | checksum = "0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b" 806 | dependencies = [ 807 | "hermit-abi 0.2.6", 808 | "libc", 809 | ] 810 | 811 | [[package]] 812 | name = "once_cell" 813 | version = "1.16.0" 814 | source = "registry+https://github.com/rust-lang/crates.io-index" 815 | checksum = "86f0b0d4bf799edbc74508c1e8bf170ff5f41238e5f8225603ca7caaae2b7860" 816 | 817 | [[package]] 818 | name = "os_str_bytes" 819 | version = "6.4.1" 820 | source = "registry+https://github.com/rust-lang/crates.io-index" 821 | checksum = "9b7820b9daea5457c9f21c69448905d723fbd21136ccf521748f23fd49e723ee" 822 | 823 | [[package]] 824 | name = "panic-probe" 825 | version = "0.3.0" 826 | source = "registry+https://github.com/rust-lang/crates.io-index" 827 | checksum = "3ab1f00eac22bd18f8e5cae9555f2820b3a0c166b5b556ee3e203746ea6dcf3a" 828 | dependencies = [ 829 | "cortex-m", 830 | "defmt", 831 | ] 832 | 833 | [[package]] 834 | name = "pin-project-lite" 835 | version = "0.2.9" 836 | source = "registry+https://github.com/rust-lang/crates.io-index" 837 | checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116" 838 | 839 | [[package]] 840 | name = "pin-utils" 841 | version = "0.1.0" 842 | source = "registry+https://github.com/rust-lang/crates.io-index" 843 | checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" 844 | 845 | [[package]] 846 | name = "proc-macro-error" 847 | version = "1.0.4" 848 | source = "registry+https://github.com/rust-lang/crates.io-index" 849 | checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" 850 | dependencies = [ 851 | "proc-macro-error-attr", 852 | "proc-macro2", 853 | "quote", 854 | "syn", 855 | "version_check", 856 | ] 857 | 858 | [[package]] 859 | name = "proc-macro-error-attr" 860 | version = "1.0.4" 861 | source = "registry+https://github.com/rust-lang/crates.io-index" 862 | checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" 863 | dependencies = [ 864 | "proc-macro2", 865 | "quote", 866 | "version_check", 867 | ] 868 | 869 | [[package]] 870 | name = "proc-macro2" 871 | version = "1.0.49" 872 | source = "registry+https://github.com/rust-lang/crates.io-index" 873 | checksum = "57a8eca9f9c4ffde41714334dee777596264c7825420f521abc92b5b5deb63a5" 874 | dependencies = [ 875 | "unicode-ident", 876 | ] 877 | 878 | [[package]] 879 | name = "quote" 880 | version = "1.0.23" 881 | source = "registry+https://github.com/rust-lang/crates.io-index" 882 | checksum = "8856d8364d252a14d474036ea1358d63c9e6965c8e5c1885c18f73d70bff9c7b" 883 | dependencies = [ 884 | "proc-macro2", 885 | ] 886 | 887 | [[package]] 888 | name = "rand_core" 889 | version = "0.6.4" 890 | source = "registry+https://github.com/rust-lang/crates.io-index" 891 | checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" 892 | 893 | [[package]] 894 | name = "rayon" 895 | version = "1.6.1" 896 | source = "registry+https://github.com/rust-lang/crates.io-index" 897 | checksum = "6db3a213adf02b3bcfd2d3846bb41cb22857d131789e01df434fb7e7bc0759b7" 898 | dependencies = [ 899 | "either", 900 | "rayon-core", 901 | ] 902 | 903 | [[package]] 904 | name = "rayon-core" 905 | version = "1.10.1" 906 | source = "registry+https://github.com/rust-lang/crates.io-index" 907 | checksum = "cac410af5d00ab6884528b4ab69d1e8e146e8d471201800fa1b4524126de6ad3" 908 | dependencies = [ 909 | "crossbeam-channel", 910 | "crossbeam-deque", 911 | "crossbeam-utils", 912 | "num_cpus", 913 | ] 914 | 915 | [[package]] 916 | name = "regex" 917 | version = "1.7.0" 918 | source = "registry+https://github.com/rust-lang/crates.io-index" 919 | checksum = "e076559ef8e241f2ae3479e36f97bd5741c0330689e217ad51ce2c76808b868a" 920 | dependencies = [ 921 | "aho-corasick", 922 | "memchr", 923 | "regex-syntax", 924 | ] 925 | 926 | [[package]] 927 | name = "regex-syntax" 928 | version = "0.6.28" 929 | source = "registry+https://github.com/rust-lang/crates.io-index" 930 | checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848" 931 | 932 | [[package]] 933 | name = "rustc_version" 934 | version = "0.2.3" 935 | source = "registry+https://github.com/rust-lang/crates.io-index" 936 | checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" 937 | dependencies = [ 938 | "semver 0.9.0", 939 | ] 940 | 941 | [[package]] 942 | name = "rustc_version" 943 | version = "0.4.0" 944 | source = "registry+https://github.com/rust-lang/crates.io-index" 945 | checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" 946 | dependencies = [ 947 | "semver 1.0.16", 948 | ] 949 | 950 | [[package]] 951 | name = "ryu" 952 | version = "1.0.12" 953 | source = "registry+https://github.com/rust-lang/crates.io-index" 954 | checksum = "7b4b9743ed687d4b4bcedf9ff5eaa7398495ae14e61cba0a295704edbc7decde" 955 | 956 | [[package]] 957 | name = "scopeguard" 958 | version = "1.1.0" 959 | source = "registry+https://github.com/rust-lang/crates.io-index" 960 | checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" 961 | 962 | [[package]] 963 | name = "sdio-host" 964 | version = "0.5.0" 965 | source = "registry+https://github.com/rust-lang/crates.io-index" 966 | checksum = "f93c025f9cfe4c388c328ece47d11a54a823da3b5ad0370b22d95ad47137f85a" 967 | 968 | [[package]] 969 | name = "semver" 970 | version = "0.9.0" 971 | source = "registry+https://github.com/rust-lang/crates.io-index" 972 | checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" 973 | dependencies = [ 974 | "semver-parser", 975 | ] 976 | 977 | [[package]] 978 | name = "semver" 979 | version = "1.0.16" 980 | source = "registry+https://github.com/rust-lang/crates.io-index" 981 | checksum = "58bc9567378fc7690d6b2addae4e60ac2eeea07becb2c64b9f218b53865cba2a" 982 | 983 | [[package]] 984 | name = "semver-parser" 985 | version = "0.7.0" 986 | source = "registry+https://github.com/rust-lang/crates.io-index" 987 | checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" 988 | 989 | [[package]] 990 | name = "seq-macro" 991 | version = "0.3.2" 992 | source = "registry+https://github.com/rust-lang/crates.io-index" 993 | checksum = "1685deded9b272198423bdbdb907d8519def2f26cf3699040e54e8c4fbd5c5ce" 994 | 995 | [[package]] 996 | name = "serde" 997 | version = "1.0.152" 998 | source = "registry+https://github.com/rust-lang/crates.io-index" 999 | checksum = "bb7d1f0d3021d347a83e556fc4683dea2ea09d87bccdf88ff5c12545d89d5efb" 1000 | dependencies = [ 1001 | "serde_derive", 1002 | ] 1003 | 1004 | [[package]] 1005 | name = "serde_derive" 1006 | version = "1.0.152" 1007 | source = "registry+https://github.com/rust-lang/crates.io-index" 1008 | checksum = "af487d118eecd09402d70a5d72551860e788df87b464af30e5ea6a38c75c541e" 1009 | dependencies = [ 1010 | "proc-macro2", 1011 | "quote", 1012 | "syn", 1013 | ] 1014 | 1015 | [[package]] 1016 | name = "serde_json" 1017 | version = "1.0.91" 1018 | source = "registry+https://github.com/rust-lang/crates.io-index" 1019 | checksum = "877c235533714907a8c2464236f5c4b2a17262ef1bd71f38f35ea592c8da6883" 1020 | dependencies = [ 1021 | "itoa", 1022 | "ryu", 1023 | "serde", 1024 | ] 1025 | 1026 | [[package]] 1027 | name = "serde_yaml" 1028 | version = "0.8.26" 1029 | source = "registry+https://github.com/rust-lang/crates.io-index" 1030 | checksum = "578a7433b776b56a35785ed5ce9a7e777ac0598aac5a6dd1b4b18a307c7fc71b" 1031 | dependencies = [ 1032 | "indexmap", 1033 | "ryu", 1034 | "serde", 1035 | "yaml-rust", 1036 | ] 1037 | 1038 | [[package]] 1039 | name = "spin" 1040 | version = "0.9.4" 1041 | source = "registry+https://github.com/rust-lang/crates.io-index" 1042 | checksum = "7f6002a767bff9e83f8eeecf883ecb8011875a21ae8da43bffb817a57e78cc09" 1043 | dependencies = [ 1044 | "lock_api", 1045 | ] 1046 | 1047 | [[package]] 1048 | name = "ssmarshal" 1049 | version = "1.0.0" 1050 | source = "registry+https://github.com/rust-lang/crates.io-index" 1051 | checksum = "f3e6ad23b128192ed337dfa4f1b8099ced0c2bf30d61e551b65fda5916dbb850" 1052 | dependencies = [ 1053 | "encode_unicode", 1054 | "serde", 1055 | ] 1056 | 1057 | [[package]] 1058 | name = "stable_deref_trait" 1059 | version = "1.2.0" 1060 | source = "registry+https://github.com/rust-lang/crates.io-index" 1061 | checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" 1062 | 1063 | [[package]] 1064 | name = "static_cell" 1065 | version = "1.0.0" 1066 | source = "registry+https://github.com/rust-lang/crates.io-index" 1067 | checksum = "e4c37c250d21f53fa7165e76e5401d7e6539c211a8d2cf449e3962956a5cc2ce" 1068 | dependencies = [ 1069 | "atomic-polyfill 1.0.1", 1070 | ] 1071 | 1072 | [[package]] 1073 | name = "stm32-fmc" 1074 | version = "0.2.4" 1075 | source = "registry+https://github.com/rust-lang/crates.io-index" 1076 | checksum = "cf16ee9bd5de754482883cf3eac9a49eb862baf1420f55ce408e001705e9ae74" 1077 | dependencies = [ 1078 | "embedded-hal 0.2.7", 1079 | ] 1080 | 1081 | [[package]] 1082 | name = "stm32-led-spin" 1083 | version = "0.1.0" 1084 | dependencies = [ 1085 | "cortex-m", 1086 | "cortex-m-rt", 1087 | "defmt", 1088 | "defmt-rtt", 1089 | "embassy-executor", 1090 | "embassy-futures", 1091 | "embassy-macros", 1092 | "embassy-stm32", 1093 | "embassy-sync", 1094 | "embassy-time", 1095 | "embassy-usb", 1096 | "embedded-hal 0.2.7", 1097 | "embedded-storage", 1098 | "futures", 1099 | "heapless", 1100 | "nb 1.0.0", 1101 | "panic-probe", 1102 | "static_cell", 1103 | ] 1104 | 1105 | [[package]] 1106 | name = "stm32-metapac" 1107 | version = "0.1.0" 1108 | source = "git+https://github.com/embassy-rs/embassy#147609d3bde445b663d0e75c8bccdb152b9c7e1e" 1109 | dependencies = [ 1110 | "cortex-m", 1111 | "cortex-m-rt", 1112 | "regex", 1113 | "stm32-metapac-gen", 1114 | ] 1115 | 1116 | [[package]] 1117 | name = "stm32-metapac-gen" 1118 | version = "0.1.0" 1119 | source = "git+https://github.com/embassy-rs/embassy#147609d3bde445b663d0e75c8bccdb152b9c7e1e" 1120 | dependencies = [ 1121 | "chiptool", 1122 | "proc-macro2", 1123 | "regex", 1124 | "serde", 1125 | "serde_json", 1126 | "serde_yaml", 1127 | ] 1128 | 1129 | [[package]] 1130 | name = "strsim" 1131 | version = "0.10.0" 1132 | source = "registry+https://github.com/rust-lang/crates.io-index" 1133 | checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" 1134 | 1135 | [[package]] 1136 | name = "svd-parser" 1137 | version = "0.10.2" 1138 | source = "registry+https://github.com/rust-lang/crates.io-index" 1139 | checksum = "697e7645ad9f5311fe3d872d094b135627b1616aea9e1573dddd28ca522579b9" 1140 | dependencies = [ 1141 | "anyhow", 1142 | "once_cell", 1143 | "rayon", 1144 | "regex", 1145 | "thiserror", 1146 | "xmltree", 1147 | ] 1148 | 1149 | [[package]] 1150 | name = "syn" 1151 | version = "1.0.107" 1152 | source = "registry+https://github.com/rust-lang/crates.io-index" 1153 | checksum = "1f4064b5b16e03ae50984a5a8ed5d4f8803e6bc1fd170a3cda91a1be4b18e3f5" 1154 | dependencies = [ 1155 | "proc-macro2", 1156 | "quote", 1157 | "unicode-ident", 1158 | ] 1159 | 1160 | [[package]] 1161 | name = "termcolor" 1162 | version = "1.1.3" 1163 | source = "registry+https://github.com/rust-lang/crates.io-index" 1164 | checksum = "bab24d30b911b2376f3a13cc2cd443142f0c81dda04c118693e35b3835757755" 1165 | dependencies = [ 1166 | "winapi-util", 1167 | ] 1168 | 1169 | [[package]] 1170 | name = "textwrap" 1171 | version = "0.16.0" 1172 | source = "registry+https://github.com/rust-lang/crates.io-index" 1173 | checksum = "222a222a5bfe1bba4a77b45ec488a741b3cb8872e5e499451fd7d0129c9c7c3d" 1174 | 1175 | [[package]] 1176 | name = "thiserror" 1177 | version = "1.0.38" 1178 | source = "registry+https://github.com/rust-lang/crates.io-index" 1179 | checksum = "6a9cd18aa97d5c45c6603caea1da6628790b37f7a34b6ca89522331c5180fed0" 1180 | dependencies = [ 1181 | "thiserror-impl", 1182 | ] 1183 | 1184 | [[package]] 1185 | name = "thiserror-impl" 1186 | version = "1.0.38" 1187 | source = "registry+https://github.com/rust-lang/crates.io-index" 1188 | checksum = "1fb327af4685e4d03fa8cbcf1716380da910eeb2bb8be417e7f9fd3fb164f36f" 1189 | dependencies = [ 1190 | "proc-macro2", 1191 | "quote", 1192 | "syn", 1193 | ] 1194 | 1195 | [[package]] 1196 | name = "unicode-ident" 1197 | version = "1.0.6" 1198 | source = "registry+https://github.com/rust-lang/crates.io-index" 1199 | checksum = "84a22b9f218b40614adcb3f4ff08b703773ad44fa9423e4e0d346d5db86e4ebc" 1200 | 1201 | [[package]] 1202 | name = "usb-device" 1203 | version = "0.2.9" 1204 | source = "registry+https://github.com/rust-lang/crates.io-index" 1205 | checksum = "1f6cc3adc849b5292b4075fc0d5fdcf2f24866e88e336dd27a8943090a520508" 1206 | 1207 | [[package]] 1208 | name = "usbd-hid" 1209 | version = "0.6.1" 1210 | source = "registry+https://github.com/rust-lang/crates.io-index" 1211 | checksum = "975bd411f4a939986751ea09992a24fa47c4d25c6ed108d04b4c2999a4fd0132" 1212 | dependencies = [ 1213 | "serde", 1214 | "ssmarshal", 1215 | "usb-device", 1216 | "usbd-hid-macros", 1217 | ] 1218 | 1219 | [[package]] 1220 | name = "usbd-hid-descriptors" 1221 | version = "0.1.2" 1222 | source = "registry+https://github.com/rust-lang/crates.io-index" 1223 | checksum = "dcbee8c6735e90894fba04770bc41e11fd3c5256018856e15dc4dd1e6c8a3dd1" 1224 | dependencies = [ 1225 | "bitfield", 1226 | ] 1227 | 1228 | [[package]] 1229 | name = "usbd-hid-macros" 1230 | version = "0.6.0" 1231 | source = "registry+https://github.com/rust-lang/crates.io-index" 1232 | checksum = "261079a9ada015fa1acac7cc73c98559f3a92585e15f508034beccf6a2ab75a2" 1233 | dependencies = [ 1234 | "byteorder", 1235 | "proc-macro2", 1236 | "quote", 1237 | "serde", 1238 | "syn", 1239 | "usbd-hid-descriptors", 1240 | ] 1241 | 1242 | [[package]] 1243 | name = "vcell" 1244 | version = "0.1.3" 1245 | source = "registry+https://github.com/rust-lang/crates.io-index" 1246 | checksum = "77439c1b53d2303b20d9459b1ade71a83c716e3f9c34f3228c00e6f185d6c002" 1247 | 1248 | [[package]] 1249 | name = "version_check" 1250 | version = "0.9.4" 1251 | source = "registry+https://github.com/rust-lang/crates.io-index" 1252 | checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" 1253 | 1254 | [[package]] 1255 | name = "void" 1256 | version = "1.0.2" 1257 | source = "registry+https://github.com/rust-lang/crates.io-index" 1258 | checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" 1259 | 1260 | [[package]] 1261 | name = "volatile-register" 1262 | version = "0.2.1" 1263 | source = "registry+https://github.com/rust-lang/crates.io-index" 1264 | checksum = "9ee8f19f9d74293faf70901bc20ad067dc1ad390d2cbf1e3f75f721ffee908b6" 1265 | dependencies = [ 1266 | "vcell", 1267 | ] 1268 | 1269 | [[package]] 1270 | name = "winapi" 1271 | version = "0.3.9" 1272 | source = "registry+https://github.com/rust-lang/crates.io-index" 1273 | checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" 1274 | dependencies = [ 1275 | "winapi-i686-pc-windows-gnu", 1276 | "winapi-x86_64-pc-windows-gnu", 1277 | ] 1278 | 1279 | [[package]] 1280 | name = "winapi-i686-pc-windows-gnu" 1281 | version = "0.4.0" 1282 | source = "registry+https://github.com/rust-lang/crates.io-index" 1283 | checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" 1284 | 1285 | [[package]] 1286 | name = "winapi-util" 1287 | version = "0.1.5" 1288 | source = "registry+https://github.com/rust-lang/crates.io-index" 1289 | checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" 1290 | dependencies = [ 1291 | "winapi", 1292 | ] 1293 | 1294 | [[package]] 1295 | name = "winapi-x86_64-pc-windows-gnu" 1296 | version = "0.4.0" 1297 | source = "registry+https://github.com/rust-lang/crates.io-index" 1298 | checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" 1299 | 1300 | [[package]] 1301 | name = "xml-rs" 1302 | version = "0.7.0" 1303 | source = "registry+https://github.com/rust-lang/crates.io-index" 1304 | checksum = "3c1cb601d29fe2c2ac60a2b2e5e293994d87a1f6fa9687a31a15270f909be9c2" 1305 | dependencies = [ 1306 | "bitflags", 1307 | ] 1308 | 1309 | [[package]] 1310 | name = "xmltree" 1311 | version = "0.8.0" 1312 | source = "registry+https://github.com/rust-lang/crates.io-index" 1313 | checksum = "ff8eaee9d17062850f1e6163b509947969242990ee59a35801af437abe041e70" 1314 | dependencies = [ 1315 | "xml-rs", 1316 | ] 1317 | 1318 | [[package]] 1319 | name = "yaml-rust" 1320 | version = "0.4.5" 1321 | source = "registry+https://github.com/rust-lang/crates.io-index" 1322 | checksum = "56c1936c4cc7a1c9ab21a1ebb602eb942ba868cbd44a99cb7cdc5892335e1c85" 1323 | dependencies = [ 1324 | "linked-hash-map", 1325 | ] 1326 | --------------------------------------------------------------------------------