diff --git a/test_LED6_async_hard_interrupt/Cargo.lock b/test_LED6_async_hard_interrupt/Cargo.lock index 87f6fa4..a81ae6a 100644 --- a/test_LED6_async_hard_interrupt/Cargo.lock +++ b/test_LED6_async_hard_interrupt/Cargo.lock @@ -31,18 +31,18 @@ dependencies = [ [[package]] name = "bitfield" -version = "0.19.2" +version = "0.19.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62a3a774b2fcac1b726922b921ebba5e9fe36ad37659c822cf8ff2c1e0819892" +checksum = "6bf79f42d21f18b5926a959280215903e659760da994835d27c3a0c5ff4f898f" dependencies = [ "bitfield-macros", ] [[package]] name = "bitfield-macros" -version = "0.19.2" +version = "0.19.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52511b09931f7d5fe3a14f23adefbc23e5725b184013e96c8419febb61f14734" +checksum = "6115af052c7914c0cbb97195e5c72cb61c511527250074f5c041d1048b0d8b16" dependencies = [ "proc-macro2", "quote", @@ -63,9 +63,9 @@ checksum = "2261d10cca569e4643e526d8dc2e62e433cc8aba21ab764233731f8d369bf394" [[package]] name = "bytemuck" -version = "1.23.2" +version = "1.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3995eaeebcdf32f91f980d360f78732ddc061097ab4e39991ae7a6ace9194677" +checksum = "1fbdf580320f38b612e485521afda1ee26d10cc9884efaaa750d383e13e3c5f4" [[package]] name = "byteorder" @@ -75,9 +75,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "cfg-if" -version = "1.0.3" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fd1289c04a9ea8cb22300a459a72a385d7c73d3259e2ed7dcb2af674838cfa9" +checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" [[package]] name = "critical-section" @@ -477,7 +477,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "abd4a8db4b72794637a25944bc8d361c3cc271d4f03987ce8741312b6b61529c" dependencies = [ "document-features", - "esp-metadata-generated", + "esp-metadata-generated 0.1.0", "evalexpr", "serde", "serde_yaml", @@ -508,7 +508,7 @@ dependencies = [ "enumset", "esp-config", "esp-hal-procmacros", - "esp-metadata-generated", + "esp-metadata-generated 0.1.0", "esp-riscv-rt", "esp-rom-sys", "esp32", @@ -536,9 +536,9 @@ dependencies = [ [[package]] name = "esp-hal-embassy" -version = "0.9.0" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d000d94064c485f86adc6b02b541e2f072e03321b4f03d4303b7ff3062c7e692" +checksum = "8be6d5d08adc5d26d8071450c76e62027906dce2795afaed76e9809e596f8e33" dependencies = [ "cfg-if", "critical-section", @@ -551,7 +551,7 @@ dependencies = [ "esp-config", "esp-hal", "esp-hal-procmacros", - "esp-metadata-generated", + "esp-metadata-generated 0.1.0", "log", "portable-atomic", "static_cell", @@ -596,6 +596,12 @@ dependencies = [ "esp-metadata", ] +[[package]] +name = "esp-metadata-generated" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b18b1787dd3adea642fb529dd83fe558a08ace365bbaede4643a8959992900f4" + [[package]] name = "esp-println" version = "0.15.0" @@ -604,7 +610,7 @@ checksum = "3e7e3ab41e96093d7fd307e93bfc88bd646a8ff23036ebf809e116b18869f719" dependencies = [ "critical-section", "document-features", - "esp-metadata-generated", + "esp-metadata-generated 0.1.0", "log", "portable-atomic", ] @@ -622,13 +628,13 @@ dependencies = [ [[package]] name = "esp-rom-sys" -version = "0.1.1" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "646aca2b30503b6c6f34250255fbd5887fd0c4104ea90802c1fea34f3035e7d6" +checksum = "01bafc39f59d56610b38ed0f63b16abeb8b357b8f546507d0d6c50c1a494f530" dependencies = [ "cfg-if", "document-features", - "esp-metadata-generated", + "esp-metadata-generated 0.2.0", ] [[package]] @@ -760,9 +766,9 @@ checksum = "1d758ba1b47b00caf47f24925c0074ecb20d6dfcffe7f6d53395c0465674841a" [[package]] name = "generic-array" -version = "0.14.7" +version = "0.14.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" +checksum = "4bb6743198531e02858aeaea5398fcc883e71851fcbcb5a2f773e2fb6cb1edf2" dependencies = [ "typenum", "version_check", @@ -1123,9 +1129,9 @@ dependencies = [ [[package]] name = "stable_deref_trait" -version = "1.2.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" +checksum = "6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596" [[package]] name = "static_cell" @@ -1190,6 +1196,7 @@ dependencies = [ "critical-section", "dotenvy", "embassy-executor", + "embassy-sync 0.7.2", "embassy-time", "embedded-io", "embedded-io-async", @@ -1207,18 +1214,18 @@ dependencies = [ [[package]] name = "toml_datetime" -version = "0.7.2" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32f1085dec27c2b6632b04c80b3bb1b4300d6495d1e129693bdda7d91e72eec1" +checksum = "f2cdb639ebbc97961c51720f858597f7f24c4fc295327923af55b74c3c724533" dependencies = [ "serde_core", ] [[package]] name = "toml_edit" -version = "0.23.6" +version = "0.23.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3effe7c0e86fdff4f69cdd2ccc1b96f933e24811c5441d44904e8683e27184b" +checksum = "6485ef6d0d9b5d0ec17244ff7eb05310113c3f316f2d14200d4de56b3cb98f8d" dependencies = [ "indexmap", "toml_datetime", @@ -1228,18 +1235,18 @@ dependencies = [ [[package]] name = "toml_parser" -version = "1.0.3" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cf893c33be71572e0e9aa6dd15e6677937abd686b066eac3f8cd3531688a627" +checksum = "c0cbe268d35bdb4bb5a56a2de88d0ad0eb70af5384a99d648cd4b3d04039800e" dependencies = [ "winnow", ] [[package]] name = "typenum" -version = "1.18.0" +version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f" +checksum = "562d481066bde0658276a35467c4af00bdc6ee726305698a55b86e61d7ad82bb" [[package]] name = "ufmt-write" @@ -1288,15 +1295,15 @@ dependencies = [ [[package]] name = "windows-link" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45e46c0661abb7180e7b9c281db115305d49ca1709ab8242adf09666d2173c65" +checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" [[package]] name = "windows-sys" -version = "0.61.1" +version = "0.61.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f109e41dd4a3c848907eb83d5a42ea98b3769495597450cf6d153507b166f0f" +checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc" dependencies = [ "windows-link", ] diff --git a/test_LED6_async_hard_interrupt/Cargo.toml b/test_LED6_async_hard_interrupt/Cargo.toml index 872abb5..02722ed 100644 --- a/test_LED6_async_hard_interrupt/Cargo.toml +++ b/test_LED6_async_hard_interrupt/Cargo.toml @@ -45,6 +45,7 @@ smoltcp = { version = "0.12.0", default-features = false, features = [ ] } static_cell = "2.1.1" heapless = "0.9.1" +embassy-sync = "0.7.2" [build-dependencies] dotenvy = "0.15.7" diff --git a/test_LED6_async_hard_interrupt/src/bin/main.rs b/test_LED6_async_hard_interrupt/src/bin/main.rs index 77dc850..d8cbbde 100644 --- a/test_LED6_async_hard_interrupt/src/bin/main.rs +++ b/test_LED6_async_hard_interrupt/src/bin/main.rs @@ -7,7 +7,8 @@ )] use embassy_executor::Spawner; use embassy_sync::signal::Signal; -use embassy_time::{Duration, Timer}; +use embassy_sync::blocking_mutex::raw::CriticalSectionRawMutex; +use embassy_time::Duration; use esp_backtrace as _; use esp_hal::{ clock::CpuClock, @@ -27,7 +28,7 @@ use log::info; // For more information see: esp_bootloader_esp_idf::esp_app_desc!(); -static SIGNAL: Signal<()> = Signal::new(); +static SIGNAL: Signal = Signal::new(); static TIMER0: Mutex>>> = Mutex::new(RefCell::new(None)); #[esp_hal_embassy::main] @@ -38,6 +39,8 @@ async fn main(spawner: Spawner) { let peripherals = esp_hal::init(config); esp_alloc::heap_allocator!(size: 64 * 1024); + let timer_group0 = TimerGroup::new(peripherals.TIMG0); + esp_hal_embassy::init(timer_group0.timer0); let timer_group1 = TimerGroup::new(peripherals.TIMG1); let timer0 = timer_group1.timer0; @@ -62,13 +65,12 @@ async fn main(spawner: Spawner) { .unwrap(); // Initialize GPIO4 as output (starts LOW) - let mut gpio4 = Output::new(peripherals.GPIO4, Level::Low, OutputConfig::default()); + let gpio4 = Output::new(peripherals.GPIO4, Level::Low, OutputConfig::default()); spawner.spawn(led_task(gpio4)).unwrap(); info!("Embassy initialized!"); loop { - embassy_time::Timer::after(Duration::from_secs(5)).await; info!("x"); }