STM32F3xx HAL 开源项目教程

STM32F3xx HAL 开源项目教程

stm32f3xx-halA Rust embedded-hal HAL for all MCUs in the STM32 F3 family项目地址:https://gitcode.com/gh_mirrors/st/stm32f3xx-hal

1. 项目的目录结构及介绍

STM32F3xx HAL 项目的目录结构如下:

stm32f3xx-hal/
├── Cargo.toml
├── LICENSE-APACHE
├── LICENSE-MIT
├── README.md
├── build.rs
├── src/
│   ├── lib.rs
│   ├── adc.rs
│   ├── afio.rs
│   ├── backup_domain.rs
│   ├── can.rs
│   ├── crc.rs
│   ├── delay.rs
│   ├── dma.rs
│   ├── flash.rs
│   ├── gpio.rs
│   ├── i2c.rs
│   ├── i2s.rs
│   ├── interrupt.rs
│   ├── prelude.rs
│   ├── pwm.rs
│   ├── qei.rs
│   ├── rcc.rs
│   ├── serial.rs
│   ├── spi.rs
│   ├── time.rs
│   ├── timer.rs
│   ├── watchdog.rs
│   └── watchdog.rs
└── examples/
    ├── blinky.rs
    ├── hello.rs
    └── serial.rs

目录结构介绍

  • Cargo.toml: 项目的依赖和元数据配置文件。
  • LICENSE-APACHELICENSE-MIT: 项目的许可证文件。
  • README.md: 项目的基本介绍和使用说明。
  • build.rs: 构建脚本,用于在编译时执行一些自定义操作。
  • src/: 源代码目录,包含库的主要实现文件。
    • lib.rs: 库的入口文件。
    • 其他 .rs 文件:各个模块的具体实现,如 adc.rs 对应模数转换器模块,gpio.rs 对应通用输入输出模块等。
  • examples/: 示例代码目录,包含一些简单的示例程序,如 blinky.rs 闪灯示例,hello.rs 打印 "Hello, world!" 示例等。

2. 项目的启动文件介绍

在 STM32F3xx HAL 项目中,启动文件通常位于 src/ 目录下的 lib.rs 文件中。这个文件是库的入口点,定义了库的模块结构和一些基本配置。

// src/lib.rs

#![no_std]

pub extern crate cortex_m;
pub extern crate cortex_m_rt;
pub extern crate stm32f3xx_hal as hal;

pub mod adc;
pub mod afio;
pub mod backup_domain;
pub mod can;
pub mod crc;
pub mod delay;
pub mod dma;
pub mod flash;
pub mod gpio;
pub mod i2c;
pub mod i2s;
pub mod interrupt;
pub mod prelude;
pub mod pwm;
pub mod qei;
pub mod rcc;
pub mod serial;
pub mod spi;
pub mod time;
pub mod timer;
pub mod watchdog;

pub use cortex_m::asm;
pub use cortex_m::interrupt;
pub use cortex_m::peripheral;
pub use cortex_m::prelude::_embedded_hal_blocking_delay_DelayMs;
pub use cortex_m::prelude::_embedded_hal_blocking_delay_DelayUs;
pub use cortex_m::prelude::_embedded_hal_serial_Read;
pub use cortex_m::prelude::_embedded_hal_serial_Write;
pub use cortex_m::prelude::_embedded_hal_spi_FullDuplex;
pub use cortex_m::prelude::_embedded_hal_timer_CountDown;
pub use cortex_m::prelude::_embedded_hal_timer_Periodic;
pub use cortex_m::prelude::_embedded_hal_watchdog_Watchdog;
pub use cortex_m::prelude::_embedded_hal_watchdog_WatchdogEnable;
pub use cortex_m::prelude::_embedded_hal_watchdog_WatchdogReset;
pub use cortex_m::prelude::_embedded_hal_watchdog_WatchdogTimeout;
pub use cortex_m::prelude::_embedded_hal_watchdog_WatchdogTimer;
pub use cortex_m::prelude::_embedded_hal

stm32f3xx-halA Rust embedded-hal HAL for all MCUs in the STM32 F3 family项目地址:https://gitcode.com/gh_mirrors/st/stm32f3xx-hal

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

钱勃骅

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值