esp-hal/esp32s3-hal/Cargo.toml
Scott Mabin 9064177e99
Initial embassy support (#225)
* wip: timg embassy driver

- read_raw on timg renamed to now()
- timg initialized and stored in static for use in the embassy driver
- timg sets alarm value
- untested whether alarms actually trigger

* TIMG timer driver for esp32, esp32s3

- Adds the timg timer block as a time driver for embassy
- Not enabled on the C3 as it only has one timer block, better to use
  systimer
- s2 example added but can't build due to atomic requirements in
  futures-core

* Add S2 atomic support with emulation, fixup embassy support for the S2

* Move executor & static-cell to dev deps. Make eha optional

* Add c2 support, run fmt

* Update to crates.io embassy releases

* Update eha

* update timg time driver to new trait

* Remove exception feature of esp-backtrace and use the user handler for backtracing

* Add async testing workflow

* Update systick example

* Fix S2 examples

* Update xtensa-toolchain

* set rustflags for s2 target

* Disable systick for esp32s2 until we can fix the noted issues

* review improvements

- Fix intr prio array being off by one
- emabssy time prio interrupt set to max prio
- use cfg instead of feature for systick detection

* Update example time delays
2022-11-09 08:04:38 -08:00

79 lines
2.7 KiB
TOML

[package]
name = "esp32s3-hal"
version = "0.2.0"
authors = [
"Jesse Braham <jesse@beta7.io>",
"Björn Quentin <bjoern.quentin@mobile-j.de>",
]
edition = "2021"
rust-version = "1.60.0"
description = "HAL for ESP32-S3 microcontrollers"
repository = "https://github.com/esp-rs/esp-hal"
license = "MIT OR Apache-2.0"
keywords = [
"embedded",
"embedded-hal",
"esp",
"esp32s3",
"no-std",
]
categories = [
"embedded",
"hardware-support",
"no-std",
]
[dependencies]
bare-metal = "1.0.0"
embedded-hal = { version = "0.2.7", features = ["unproven"] }
embedded-hal-1 = { version = "=1.0.0-alpha.9", optional = true, package = "embedded-hal" }
embedded-hal-nb = { version = "=1.0.0-alpha.1", optional = true }
esp-hal-common = { version = "0.2.0", features = ["esp32s3"], path = "../esp-hal-common" }
r0 = { version = "1.0.0", optional = true }
xtensa-lx = { version = "0.7.0", features = ["esp32s3"] }
xtensa-lx-rt = { version = "0.13.0", features = ["esp32s3"], optional = true }
embedded-hal-async = { version = "0.1.0-alpha.3", optional = true }
embassy-time = { version = "0.1.0", features = ["nightly"], optional = true }
[dev-dependencies]
critical-section = "1.1.0"
embedded-graphics = "0.7.1"
esp-backtrace = { version = "0.2.0", features = ["esp32s3", "panic-handler", "exception-handler", "print-uart"] }
esp-println = { version = "0.3.0", features = ["esp32s3"] }
smart-leds = "0.3.0"
ssd1306 = "0.7.1"
usb-device = { version = "0.2.3" }
usbd-serial = "0.1.1"
embassy-executor = { package = "embassy-executor", git = "https://github.com/embassy-rs/embassy/", rev = "eed34f945ccd5c4ef2af77230042dd4954e981ac", features = ["nightly", "integrated-timers"] }
static_cell = "1.0.0"
[features]
default = ["rt", "vectored"]
direct-boot = ["r0"]
eh1 = ["esp-hal-common/eh1", "dep:embedded-hal-1", "dep:embedded-hal-nb"]
rt = ["xtensa-lx-rt/esp32s3"]
smartled = ["esp-hal-common/smartled"]
ufmt = ["esp-hal-common/ufmt"]
vectored = ["esp-hal-common/vectored"]
async = ["esp-hal-common/async", "embedded-hal-async"]
embassy = ["esp-hal-common/embassy"]
embassy-time-systick = ["esp-hal-common/embassy-time-systick", "embassy-time/tick-hz-16_000_000"]
embassy-time-timg = ["esp-hal-common/embassy-time-timg", "embassy-time/tick-hz-1_000_000"]
[[example]]
name = "hello_rgb"
required-features = ["smartled"]
[[example]]
name = "spi_eh1_loopback"
required-features = ["eh1"]
[[example]]
name = "spi_eh1_device_loopback"
required-features = ["eh1"]
[[example]]
name = "embassy_hello_world"
required-features = ["embassy"]