* Rename the `esp-hal-common` package to `esp-hal` * Update all references to `esp-hal-common` * Update `CHANGELOG.md`
192 lines
6.3 KiB
TOML
192 lines
6.3 KiB
TOML
[package]
|
|
name = "esp32s3-hal"
|
|
version = "0.15.0"
|
|
edition = "2021"
|
|
rust-version = "1.67.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]
|
|
document-features = "0.2.7"
|
|
esp-hal = { version = "0.15.0", features = ["esp32s3"], path = "../esp-hal" }
|
|
r0 = { version = "1.0.0", optional = true }
|
|
embassy-time-driver = { version = "0.1.0", optional = true }
|
|
|
|
[dev-dependencies]
|
|
aes = "0.8.3"
|
|
critical-section = "1.1.2"
|
|
crypto-bigint = { version = "0.5.5", default-features = false }
|
|
embassy-executor = { version = "0.5.0", features = ["nightly"] }
|
|
embassy-sync = "0.5.0"
|
|
embassy-time = "0.3.0"
|
|
embedded-graphics = "0.8.1"
|
|
embedded-hal = { version = "0.2.7", features = ["unproven"] }
|
|
embedded-hal-1 = { version = "1.0.0", package = "embedded-hal" }
|
|
embedded-hal-async = "1.0.0"
|
|
embedded-can = "0.4.1"
|
|
embedded-io-async = "0.6.1"
|
|
embedded-hal-bus = "0.1.0"
|
|
esp-alloc = "0.3.0"
|
|
esp-backtrace = { version = "0.10.0", features = ["esp32s3", "panic-handler", "exception-handler", "print-uart"] }
|
|
esp-hal-smartled = { version = "0.8.0", features = ["esp32s3"], path = "../esp-hal-smartled" }
|
|
esp-println = { version = "0.8.0", features = ["esp32s3"] }
|
|
heapless = "0.8.0"
|
|
hmac = { version = "0.12.1", default-features = false }
|
|
lis3dh-async = "0.9.1"
|
|
sha2 = { version = "0.10.8", default-features = false }
|
|
smart-leds = "0.4.0"
|
|
ssd1306 = "0.8.4"
|
|
static_cell = { version = "2.0.0", features = ["nightly"] }
|
|
usb-device = "0.3.1"
|
|
usbd-serial = "0.2.0"
|
|
|
|
[features]
|
|
default = ["embassy-integrated-timers", "rt", "vectored"]
|
|
|
|
## Enable debug features in the HAL (used for development).
|
|
debug = ["esp-hal/debug"]
|
|
## Enable logging output using the `log` crate.
|
|
log = ["esp-hal/log", "esp-println/log"]
|
|
## Enable runtime support.
|
|
rt = ["esp-hal/rt-xtensa"]
|
|
## Enable interrupt vectoring.
|
|
vectored = ["esp-hal/vectored"]
|
|
|
|
#! ### Trait Implementation Feature Flags
|
|
## Enable support for asynchronous operation, with interfaces provided by
|
|
## `embedded-hal-async` and `embedded-io-async`.
|
|
async = ["esp-hal/async"]
|
|
## Implement `defmt::Format` on certain types.
|
|
defmt = ["esp-hal/defmt", "esp-println/defmt-espflash"]
|
|
## Implement the traits defined in the `1.0.0` releases of `embedded-hal` and
|
|
## `embedded-hal-nb` for the relevant peripherals.
|
|
eh1 = ["esp-hal/eh1"]
|
|
## Implement the traits defined in `embedded-io` for certain peripherals.
|
|
embedded-io = ["esp-hal/embedded-io"]
|
|
## Implement the `ufmt_write::uWrite` trait for certain peripherals.
|
|
ufmt = ["esp-hal/ufmt"]
|
|
|
|
#! ### PSRAM Feature Flags
|
|
psram = []
|
|
## Use externally connected PSRAM (2MB).
|
|
psram-2m = ["esp-hal/psram-2m", "psram"]
|
|
## Use externally connected PSRAM (4MB).
|
|
psram-4m = ["esp-hal/psram-4m", "psram"]
|
|
## Use externally connected PSRAM (8MB).
|
|
psram-8m = ["esp-hal/psram-8m", "psram"]
|
|
## Connected PSRAM has 80MHz frequency.
|
|
psram-80mhz = ["esp-hal/psram-80mhz"]
|
|
|
|
#! ### Octal RAM Feature Flags
|
|
## Use externally connected Octal RAM (2MB).
|
|
opsram-2m = ["esp-hal/opsram-2m", "psram"]
|
|
## Use externally connected Octal RAM (4MB).
|
|
opsram-4m = ["esp-hal/opsram-4m", "psram"]
|
|
## Use externally connected Octal RAM (8MB).
|
|
opsram-8m = ["esp-hal/opsram-8m", "psram"]
|
|
## Use externally connected Octal RAM (16MB).
|
|
opsram-16m = ["esp-hal/opsram-16m", "psram"]
|
|
|
|
#! ### Embassy Feature Flags
|
|
## Enable support for `embassy`, a modern asynchronous embedded framework.
|
|
embassy = ["esp-hal/embassy"]
|
|
## Use the interrupt-mode embassy executor.
|
|
embassy-executor-interrupt = ["esp-hal/embassy-executor-interrupt"]
|
|
## Use the thread-mode embassy executor.
|
|
embassy-executor-thread = ["esp-hal/embassy-executor-thread"]
|
|
## Uses hardware timers as alarms for the executors. Using this feature
|
|
## limits the number of executors to the number of hardware alarms provided
|
|
## by the time driver.
|
|
embassy-integrated-timers = ["esp-hal/embassy-integrated-timers"]
|
|
## Enable the embassy time driver using the `SYSTIMER` peripheral. The
|
|
## `SYSTIMER` peripheral has three alarams available for use.
|
|
embassy-time-systick = ["esp-hal/embassy-time-systick", "embassy-time-driver/tick-hz-16_000_000"]
|
|
## Enable the embassy time driver using the `TIMG0` peripheral. The `TIMG0`
|
|
## peripheral has two alarms available for use.
|
|
embassy-time-timg0 = ["esp-hal/embassy-time-timg0", "embassy-time-driver/tick-hz-1_000_000"]
|
|
|
|
[profile.release]
|
|
debug = true
|
|
|
|
[[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", "embassy-executor-thread"]
|
|
|
|
[[example]]
|
|
name = "embassy_multicore"
|
|
required-features = ["embassy", "embassy-executor-thread"]
|
|
|
|
[[example]]
|
|
name = "embassy_multicore_interrupt"
|
|
required-features = ["embassy", "embassy-executor-interrupt"]
|
|
|
|
[[example]]
|
|
name = "embassy_multiprio"
|
|
required-features = ["embassy", "embassy-executor-interrupt"]
|
|
|
|
[[example]]
|
|
name = "embassy_wait"
|
|
required-features = ["embassy", "embassy-executor-thread", "async"]
|
|
|
|
[[example]]
|
|
name = "embassy_spi"
|
|
required-features = ["embassy", "embassy-executor-thread", "async"]
|
|
|
|
[[example]]
|
|
name = "psram"
|
|
required-features = ["psram-2m"]
|
|
|
|
[[example]]
|
|
name = "octal_psram"
|
|
required-features = ["opsram-2m"]
|
|
|
|
[[example]]
|
|
name = "embassy_serial"
|
|
required-features = ["embassy", "embassy-executor-thread", "async"]
|
|
|
|
[[example]]
|
|
name = "embassy_i2c"
|
|
required-features = ["embassy", "embassy-executor-thread", "async"]
|
|
|
|
[[example]]
|
|
name = "embassy_rmt_tx"
|
|
required-features = ["embassy", "async"]
|
|
|
|
[[example]]
|
|
name = "embassy_rmt_rx"
|
|
required-features = ["embassy", "async"]
|
|
|
|
[[example]]
|
|
name = "embassy_i2s_sound"
|
|
required-features = ["embassy", "async"]
|
|
|
|
[[example]]
|
|
name = "embassy_i2s_read"
|
|
required-features = ["embassy", "async"]
|
|
|
|
[[example]]
|
|
name = "embassy_usb_serial_jtag"
|
|
required-features = ["embassy", "async"]
|