stm32f4xx-hal 0.13.2

Peripheral access API for STM32F4 series microcontrollers
Documentation
[[example]]
name = "blinky-timer-irq"
required-features = ["tim2"]

[[example]]
name = "usb_serial"
required-features = ["otg-fs", "usb_fs"]

[[example]]
name = "sd"
required-features = ["gpiod", "sdio", "sdio-host"]

[[example]]
name = "delay-syst-blinky"
required-features = ["device-selected"]

[[example]]
name = "delay-timer-blinky"
required-features = ["device-selected"]

[[example]]
name = "dwt-blinky"
required-features = ["gpiog"]

[[example]]
name = "ssd1306-image"
required-features = ["device-selected"]

[[example]]
name = "stopwatch-with-ssd1306-and-interrupts"
required-features = ["tim2"]

[[example]]
name = "analog-stopwatch-with-spi-ssd1306"
required-features = ["spi4", "tim2", "gpioe", "gpiog"]

[[example]]
name = "rng-display"
required-features = ["rng"]

[[example]]
name = "qei"
required-features = ["tim2"]

[[example]]
name = "can-send"
required-features = ["can", "stm32f405"]

[[example]]
name = "i2s-audio-out"
required-features = ["stm32f411", "i2s"]

[[example]]
name = "i2s-audio-out-dma"
required-features = ["stm32f411", "i2s"]

[[example]]
name = "rtic"
required-features = ["gpiod", "rtic"]

[[example]]
name = "rtic-tick"
required-features = ["tim2", "rtic"]

[[example]]
name = "adc_dma_rtic"
required-features = ["device-selected", "rtic"]

[[example]]
name = "serial-9bit"
required-features = ["gpiod"]

[[example]]
name = "st7789-lcd"
required-features = ["fsmc", "fsmc_lcd"]

[[example]]
name = "f413disco_lcd_ferris"
required-features = ["gpiod", "gpioe", "gpiof", "gpiog", "fsmc", "fsmc_lcd"]

[[example]]
name = "pwm-input"
required-features = ["tim8"]

[[example]]
name = "pwm-sinus"
required-features = ["stm32f411"]

[[example]]
name = "ist7920_bidi_normal_spi"
required-features = ["device-selected"]

[[example]]
name = "spi_dma"
required-features = ["stm32f411"]

[[example]]
name = "dynamic_gpio"
required-features = ["device-selected"]

[[example]]
name = "rtc"
required-features = ["device-selected"]

[[example]]
name = "hd44780"
required-features = ["device-selected"]

[[example]]
name = "spi_slave_dma_rtic"
required-features = ["stm32f411", "rtic"]
[dependencies.bare-metal]
version = "1"

[dependencies.bitflags]
version = "1.3.2"

[dependencies.bxcan]
optional = true
version = "0.6"

[dependencies.cortex-m]
version = "0.7.4"

[dependencies.cortex-m-rt]
version = "0.7"

[dependencies.defmt]
optional = true
version = "0.3.1"

[dependencies.display-interface]
optional = true
version = "0.4.1"

[dependencies.embedded-dma]
version = "0.2.0"

[dependencies.embedded-hal]
features = ["unproven"]
version = "0.2.7"

[dependencies.embedded-hal-one]
package = "embedded-hal"
version = "=1.0.0-alpha.7"

[dependencies.embedded-storage]
version = "0.2"

[dependencies.fugit]
version = "0.3.5"

[dependencies.fugit-timer]
version = "0.1.3"

[dependencies.nb]
version = "1"

[dependencies.rand_core]
version = "0.6"

[dependencies.rtic-monotonic]
optional = true
version = "1.0"

[dependencies.sdio-host]
optional = true
version = "0.6.0"

[dependencies.stm32_i2s_v12x]
optional = true
version = "0.2.0"

[dependencies.stm32f4]
version = "0.14.0"

[dependencies.synopsys-usb-otg]
features = ["cortex-m"]
optional = true
version = "0.2.0"

[dependencies.time]
default-features = false
version = "0.3"

[dependencies.void]
default-features = false
version = "1.0.2"
[dev-dependencies.cortex-m-rtic]
version = "1.0"

[dev-dependencies.cortex-m-semihosting]
version = "0.3.3"

[dev-dependencies.defmt-rtt]
version = "0.3.2"

[dev-dependencies.display-interface-spi]
version = "0.4"

[dev-dependencies.dwt-systick-monotonic]
version = "1.0"

[dev-dependencies.embedded-graphics]
version = "0.7.1"

[dev-dependencies.hd44780-driver]
version = "0.4.0"

[dev-dependencies.heapless]
version = "0.7.5"

[dev-dependencies.ist7920]
version = "0.1.0"

[dev-dependencies.micromath]
version = "2"

[dev-dependencies.panic-halt]
version = "0.2.0"

[dev-dependencies.panic-rtt-target]
features = ["cortex-m"]
version = "0.1.2"

[dev-dependencies.panic-semihosting]
version = "0.5.3"

[dev-dependencies.rtt-target]
features = ["cortex-m"]
version = "0.3.1"

[dev-dependencies.smart-leds]
version = "0.3.0"

[dev-dependencies.ssd1306]
version = "0.7.0"

[dev-dependencies.st7789]
version = "0.6.1"

[dev-dependencies.time]
default-features = false
features = ["macros"]
version = "0.3"

[dev-dependencies.usb-device]
version = "0.2.5"

[dev-dependencies.usbd-serial]
version = "0.1.0"

[dev-dependencies.ws2812-spi]
features = []
version = "0.4.0"

[features]
adc2 = []
adc3 = []
can = ["bxcan"]
can1 = []
can2 = []
can3 = []
dac = []
defmt = ["dep:defmt", "fugit/defmt"]
device-selected = []
fmc = []
fmpi2c1 = []
fsmc = []
fsmc_lcd = ["display-interface"]
gpio-f401 = ["gpiod", "gpioe"]
gpio-f410 = []
gpio-f411 = ["gpiod", "gpioe"]
gpio-f412 = ["gpiod", "gpioe", "gpiof", "gpiog"]
gpio-f413 = ["gpiod", "gpioe", "gpiof", "gpiog"]
gpio-f417 = ["gpiod", "gpioe", "gpiof", "gpiog", "gpioi"]
gpio-f427 = ["gpiod", "gpioe", "gpiof", "gpiog", "gpioi", "gpioj", "gpiok"]
gpio-f446 = ["gpiod", "gpioe", "gpiof", "gpiog"]
gpio-f469 = ["gpiod", "gpioe", "gpiof", "gpiog", "gpioi", "gpioj", "gpiok"]
gpiod = []
gpioe = []
gpiof = []
gpiog = []
gpioi = []
gpioj = []
gpiok = []
i2c3 = []
i2s = ["stm32_i2s_v12x"]
otg-fs = []
otg-hs = []
rng = []
rt = []
rtic = ["rtic-monotonic"]
sdio = []
spi3 = []
spi4 = []
spi5 = []
spi6 = []
stm32f401 = ["stm32f4/stm32f401", "device-selected", "gpio-f401", "i2c3", "otg-fs", "sdio", "spi3", "spi4", "tim2"]
stm32f405 = ["stm32f4/stm32f405", "device-selected", "gpio-f417", "adc2", "adc3", "can1", "can2", "dac", "fsmc", "i2c3", "otg-fs", "otg-hs", "rng", "sdio", "spi3", "tim2", "tim8", "usart3", "uart4", "uart5"]
stm32f407 = ["stm32f4/stm32f407", "device-selected", "gpio-f417", "adc2", "adc3", "can1", "can2", "dac", "fsmc", "i2c3", "otg-fs", "otg-hs", "rng", "sdio", "spi3", "tim2", "tim8", "usart3", "uart4", "uart5"]
stm32f410 = ["stm32f4/stm32f410", "device-selected", "gpio-f410", "dac", "spi5"]
stm32f411 = ["stm32f4/stm32f411", "device-selected", "gpio-f411", "i2c3", "otg-fs", "sdio", "tim2", "spi3", "spi4", "spi5"]
stm32f412 = ["stm32f4/stm32f412", "device-selected", "gpio-f412", "can1", "can2", "fsmc", "i2c3", "otg-fs", "rng", "sdio", "spi3", "spi4", "spi5", "tim2", "tim8", "usart3"]
stm32f413 = ["stm32f4/stm32f413", "device-selected", "gpio-f413", "can1", "can2", "can3", "dac", "fsmc", "fmpi2c1", "i2c3", "otg-fs", "rng", "sdio", "spi3", "spi4", "spi5", "tim2", "tim8", "usart3", "uart4", "uart5", "uart7", "uart8", "uart9", "uart10"]
stm32f415 = ["stm32f4/stm32f405", "device-selected", "gpio-f417", "adc2", "adc3", "can1", "can2", "dac", "fsmc", "i2c3", "otg-fs", "otg-hs", "rng", "sdio", "spi3", "tim2", "tim8", "usart3", "uart4", "uart5"]
stm32f417 = ["stm32f4/stm32f407", "device-selected", "gpio-f417", "adc2", "adc3", "can1", "can2", "dac", "fsmc", "i2c3", "otg-fs", "otg-hs", "rng", "sdio", "spi3", "tim2", "tim8", "usart3", "uart4", "uart5"]
stm32f423 = ["stm32f4/stm32f413", "device-selected", "gpio-f413", "can1", "can2", "can3", "dac", "fsmc", "fmpi2c1", "i2c3", "otg-fs", "rng", "sdio", "spi3", "spi4", "spi5", "tim2", "tim8", "usart3", "uart4", "uart5", "uart7", "uart8", "uart9", "uart10"]
stm32f427 = ["stm32f4/stm32f427", "device-selected", "gpio-f427", "adc2", "adc3", "can1", "can2", "dac", "fsmc", "i2c3", "otg-fs", "otg-hs", "rng", "sdio", "spi3", "spi4", "spi5", "spi6", "tim2", "tim8", "usart3", "uart4", "uart5", "uart7", "uart8"]
stm32f429 = ["stm32f4/stm32f429", "device-selected", "gpio-f427", "adc2", "adc3", "can1", "can2", "dac", "fmc", "i2c3", "otg-fs", "otg-hs", "rng", "sdio", "spi3", "spi4", "spi5", "spi6", "tim2", "tim8", "usart3", "uart4", "uart5", "uart7", "uart8"]
stm32f437 = ["stm32f4/stm32f427", "device-selected", "gpio-f427", "adc2", "adc3", "can1", "can2", "dac", "fsmc", "i2c3", "otg-fs", "otg-hs", "rng", "sdio", "spi3", "spi4", "spi5", "spi6", "tim2", "tim8", "usart3", "uart4", "uart5", "uart7", "uart8"]
stm32f439 = ["stm32f4/stm32f429", "device-selected", "gpio-f427", "adc2", "adc3", "can1", "can2", "dac", "fmc", "i2c3", "otg-fs", "otg-hs", "rng", "sdio", "spi3", "spi4", "spi5", "spi6", "tim2", "tim8", "usart3", "uart4", "uart5", "uart7", "uart8"]
stm32f446 = ["stm32f4/stm32f446", "device-selected", "gpio-f446", "adc2", "adc3", "can1", "can2", "dac", "fmc", "i2c3", "otg-fs", "otg-hs", "spi3", "spi4", "tim2", "tim8", "usart3", "uart4", "uart5"]
stm32f469 = ["stm32f4/stm32f469", "device-selected", "gpio-f469", "adc2", "adc3", "can1", "can2", "dac", "fmc", "i2c3", "otg-fs", "otg-hs", "rng", "sdio", "spi3", "spi4", "spi5", "spi6", "tim2", "tim8", "usart3", "uart4", "uart5", "uart7", "uart8"]
stm32f479 = ["stm32f4/stm32f469", "device-selected", "gpio-f469", "adc2", "adc3", "can1", "can2", "dac", "fmc", "i2c3", "otg-fs", "otg-hs", "rng", "sdio", "spi3", "spi4", "spi5", "spi6", "tim2", "tim8", "usart3", "uart4", "uart5", "uart7", "uart8"]
tim2 = []
tim8 = []
uart10 = []
uart4 = []
uart5 = []
uart7 = []
uart8 = []
uart9 = []
usart3 = []
usb_fs = ["synopsys-usb-otg", "synopsys-usb-otg/fs"]
usb_hs = ["synopsys-usb-otg", "synopsys-usb-otg/hs"]

[package]
authors = ["Daniel Egger <daniel@eggers-club.de>"]
categories = ["embedded", "hardware-support", "no-std"]
description = "Peripheral access API for STM32F4 series microcontrollers"
documentation = "https://docs.rs/stm32f4xx-hal"
edition = "2021"
keywords = ["arm", "cortex-m", "stm32f4xx", "hal"]
license = "0BSD"
name = "stm32f4xx-hal"
readme = "README.md"
repository = "https://github.com/stm32-rs/stm32f4xx-hal"
resolver = "2"
rust-version = "1.60"
version = "0.13.2"
[package.metadata.docs.rs]
features = ["stm32f429", "usb_fs", "can", "i2s", "fsmc_lcd"]
targets = ["thumbv7em-none-eabihf"]
[profile.dev]
debug = true
lto = true

[profile.release]
debug = true
lto = true
opt-level = "s"