[package] authors = ["decaday "] name = "bind-hal" edition = "2021" version = "0.3.3" build = "build.rs" license-file = "LICENSE" description = "MCU HALs using binding, currently supports PY32" readme = "README.md" homepage = "https://github.com/decaday/bind-hal" repository = "https://github.com/decaday/bind-hal" keywords = ["embedded-hal", "no-std", "py32", "mcu"] categories = ["no-std"] exclude = ["src/main.rs"] [lib] harness = false [dependencies] cortex-m = { version = "0.7", features = ["critical-section-single-core"] } cortex-m-rt = "0.7" panic-probe = { version = "0.3", features = ["print-defmt"] } cortex-m-semihosting = { version = "0.5" } defmt-rtt = "0.4" defmt = { version = "0.3", optional = true } critical-section = { version = "1.1" } embassy-sync = { version = "0.6.0", optional = true } embassy-futures = { version = "0.1.1", optional = true } embassy-time-driver = { version = "0.1.0", features = [ "tick-hz-1_000", ], optional = true } embassy-time = { version = "0.3.0", features = [ "tick-hz-1_000", ], optional = true } embassy-executor = { version = "0.6", features = [ "nightly", "integrated-timers", "arch-cortex-m", "executor-thread", ] } futures-util = { version = "0.3.30", default-features = false } embedded-hal = "1.0.0-alpha.11" embedded-hal-async = "1.0" py32csdk-hal-sys = "0.4.0" [features] default = ["py32f030", "ram_rom_py32xxx6", "embassy", "time", "defmt", "auto_memory_x"] embassy = [ "dep:embassy-sync", "dep:embassy-futures", "dep:embassy-time-driver", ] time = [ "dep:embassy-time", ] defmt = ["dep:defmt", "embassy-sync/defmt", "embassy-time?/defmt"] auto_memory_x = [] recompile = ["py32csdk-hal-sys/recompile"] py32f030 = [ "py32csdk-hal-sys/py32f030", "csdk-hal", "peri-gpioa", "peri-gpiob", "peri-gpiof", "peri-i2c", "peri-i2c0", "peri-dma" ] ram_rom_py32xxx6 = ["py32csdk-hal-sys/py32xxx6"] ram_rom_py32xxx8 = ["py32csdk-hal-sys/py32xxx8"] ram_rom_py32f002ax5 = [] csdk-hal = [] peri-gpioa = [] peri-gpiob = [] peri-gpiof = [] peri-i2c = [] # only one i2c without number peri-i2c0 = [] peri-i2c1 = [] peri-i2c2 = [] peri-dma = [] [package.metadata.docs.rs] default-target = "thumbv6m-none-eabi" [patch.crates-io] py32csdk-hal-sys = { path = "../py32csdk-hal-sys" } # cargo build/run [profile.dev] codegen-units = 1 debug = 2 debug-assertions = true # <- incremental = false opt-level = 'z' # <- overflow-checks = true # <- # cargo build/run --release [profile.release] codegen-units = 1 debug = 2 debug-assertions = false # <- incremental = false lto = 'fat' opt-level = 3 # <- overflow-checks = false # <-