[package] edition = "2018" authors = [ "Dylan Frankland ", "Sh3Rm4n ", "Jan Teske " ] categories = ["embedded", "hardware-support", "no-std"] description = "Peripheral access API for STM32F3 series microcontrollers" keywords = ["arm", "cortex-m", "stm32f3xx", "hal"] license = "0BSD" name = "stm32f3xx-hal-v2" readme = "README.md" repository = "https://github.com/stm32-rs/stm32f3xx-hal" documentation = "https://docs.rs/stm32f3xx-hal" version = "0.6.0" exclude = [ "codegen", ".markdownlint.yml" ] [package.metadata.docs.rs] features = ["stm32f303xc", "rt", "stm32-usbd", "can"] targets = ["thumbv7em-none-eabihf"] [dependencies] cfg-if = "1.0" cortex-m = "0.6" cortex-m-rt = "0.6" embedded-dma = "0.1" embedded-hal = "0.2" nb = "0.1" num-traits = { version = "0.2.11", default-features = false, features=["libm"] } # For float rounding and abs. paste = "1" rtcc = "0.2" stm32f3 = "0.12" doc-comment = "0.3.3" [dependencies.embedded-hal-can] version = "0.1.0" optional = true [dependencies.bare-metal] version = "0.2" features = ["const-fn"] [dependencies.stm32-usbd] version = "0.5" optional = true [dependencies.void] version = "1" default-features = false [dependencies.defmt] version = "0.1.2" optional = true [dev-dependencies] panic-semihosting = "0.5" usb-device = "0.2" usbd-serial = "0.1" cortex-m-semihosting = "0.3" panic-probe = "0.1.0" defmt-rtt = "0.1.0" defmt-test = "0.1.0" [features] default = ["unproven"] unproven = ["embedded-hal/unproven"] device-selected = [] direct-call-deprecated = [] rt = ["stm32f3/rt"] can = ["embedded-hal-can"] gpio-f302 = [] gpio-f303 = [] gpio-f303e = [] gpio-f333 = [] gpio-f373 = [] # Any changes here should be mirrored in README.md, src/lib.rs, and # .github/workflows/ci.yml. stm32f301 = ["gpio-f302", "stm32f3/stm32f301", "device-selected"] stm32f318 = ["gpio-f302", "stm32f3/stm32f301", "device-selected"] stm32f302 = ["stm32f3/stm32f302", "direct-call-deprecated"] stm32f302x6 = ["stm32f302", "gpio-f302", "device-selected"] stm32f302x8 = ["stm32f302", "gpio-f302", "device-selected"] stm32f302xb = ["stm32f302", "gpio-f303", "device-selected"] stm32f302xc = ["stm32f302", "gpio-f303", "device-selected"] stm32f302xd = ["stm32f302", "gpio-f303e", "device-selected"] stm32f302xe = ["stm32f302", "gpio-f303e", "device-selected"] stm32f303 = ["stm32f3/stm32f303", "direct-call-deprecated"] stm32f303x6 = ["stm32f303", "gpio-f333", "device-selected"] stm32f303x8 = ["stm32f303", "gpio-f333", "device-selected"] stm32f303xb = ["stm32f303", "gpio-f303", "stm32-usbd/ram_access_1x16", "device-selected"] stm32f303xc = ["stm32f303", "gpio-f303", "stm32-usbd/ram_access_1x16", "device-selected"] stm32f303xd = ["stm32f303", "gpio-f303e", "stm32-usbd/ram_access_2x16", "device-selected"] stm32f303xe = ["stm32f303", "gpio-f303e", "stm32-usbd/ram_access_2x16", "device-selected"] stm32f373 = ["gpio-f373", "stm32f3/stm32f373", "device-selected"] stm32f378 = ["gpio-f373", "stm32f3/stm32f373", "device-selected"] stm32f334 = ["gpio-f333", "stm32f3/stm32f3x4", "device-selected"] stm32f328 = ["gpio-f333", "stm32f3/stm32f3x8", "device-selected"] stm32f358 = ["gpio-f303", "stm32f3/stm32f3x8", "device-selected"] stm32f398 = ["gpio-f303e", "stm32f3/stm32f3x8", "device-selected"] defmt-default = ["defmt"] defmt-trace = ["defmt"] defmt-debug = ["defmt"] defmt-info = ["defmt"] defmt-warn = ["defmt"] defmt-error = ["defmt"] [profile.dev] debug = true lto = true [profile.release] debug = true lto = true opt-level = "s" [[example]] name = "clocks" required-features = ["stm32f303xc"] [[example]] name = "pwm" required-features = ["stm32f303xc"] [[example]] name = "toggle" required-features = ["rt", "stm32f303xc"] [[example]] name = "usb_serial" required-features = ["rt", "stm32f303xc", "stm32-usbd"] [[example]] name = "spi" required-features = ["stm32f303"] [[example]] name = "can" required-features = ["rt", "can", "stm32f303"] [[example]] name = "serial" required-features = ["stm32f303"] [[example]] name = "serial_dma" required-features = ["stm32f303"] [[example]] name = "adc" required-features = ["stm32f303"] [[example]] name = "i2c_scanner" required-features = ["stm32f303xc"] [[example]] name = "gpio_erased" required-features = ["rt", "stm32f303xc"] [[test]] name = "rcc" required-features = ["rt", "defmt"] harness = false