stm32
develop stm32 with rust
niuiic
这个作者很懒,什么都没留下…
展开
-
使用 rust 开发 stm32:stm32f3discovery-can-rtic
更多分享内容可访问我的个人博客https://www.niuiic.top/本系列教程全部置于stm32专栏。本例程参考stm32fxxx-hal crate(如stm32f1xx-hal)官方例程,并在官方例程的基础上增加了一些注释,修正了一些错误。可以借鉴不同型号的 stm32 例程,毕竟固件库的核是一样的。Don’t forget to enable can feature of stm32f3xx_hal crate.#![no_main]#![no_std]use cortex_m原创 2021-06-20 08:23:59 · 392 阅读 · 0 评论 -
使用 rust 开发 stm32:stm32f3discovery-spi-rtic
更多分享内容可访问我的个人博客https://www.niuiic.top/本系列教程全部置于stm32专栏。本例程参考stm32fxxx-hal crate(如stm32f1xx-hal)官方例程,并在官方例程的基础上增加了一些注释,修正了一些错误。可以借鉴不同型号的 stm32 例程,毕竟固件库的核是一样的。#![no_main]#![no_std]use cortex_m_semihosting::hprintln;use hal::{ prelude::*, rcc:原创 2021-06-20 08:20:35 · 494 阅读 · 0 评论 -
使用 rust 开发 stm32:stm32f3discovery-i2c-rtic
更多分享内容可访问我的个人博客https://www.niuiic.top/本系列教程全部置于stm32专栏。本例程参考stm32fxxx-hal crate(如stm32f1xx-hal)官方例程,并在官方例程的基础上增加了一些注释,修正了一些错误。可以借鉴不同型号的 stm32 例程,毕竟固件库的核是一样的。#![no_main]#![no_std]use core::ops::Range;use cortex_m::asm;use cortex_m_semihosting::{hpr原创 2021-06-20 08:20:55 · 473 阅读 · 0 评论 -
使用 rust 开发 stm32:stm32f3discovery-serial-rtic
更多分享内容可访问我的个人博客https://www.niuiic.top/本系列教程全部置于stm32专栏。本例程参考stm32fxxx-hal crate(如stm32f1xx-hal)官方例程,并在官方例程的基础上增加了一些注释,修正了一些错误。可以借鉴不同型号的 stm32 例程,毕竟固件库的核是一样的。Since tx, tx_buf, tx_channel will be moved in use, I have not found a way to use USART with DMA原创 2021-06-19 22:59:17 · 518 阅读 · 0 评论 -
使用 rust 开发 stm32:stm32f3discovery-pwm-rtic
更多分享内容可访问我的个人博客https://www.niuiic.top/本系列教程全部置于stm32专栏。本例程参考stm32fxxx-hal crate(如stm32f1xx-hal)官方例程,并在官方例程的基础上增加了一些注释,修正了一些错误。可以借鉴不同型号的 stm32 例程,毕竟固件库的核是一样的。#![no_main]#![no_std]use panic_semihosting as _;use rtic::app;use stm32f3xx_hal::{pac, pre原创 2021-06-19 22:41:09 · 325 阅读 · 0 评论 -
使用 rust 开发 stm32:stm32f3discovery-adc-rtic
更多分享内容可访问我的个人博客https://www.niuiic.top/本系列教程全部置于stm32专栏。本例程参考stm32fxxx-hal crate(如stm32f1xx-hal)官方例程,并在官方例程的基础上增加了一些注释,修正了一些错误。可以借鉴不同型号的 stm32 例程,毕竟固件库的核是一样的。Press the user button on stm32f3discovery board, and you will see the voltage changing.#![no_m原创 2021-06-19 22:38:20 · 222 阅读 · 0 评论 -
使用 rust 开发 stm32:stm32f3discovery-horse-race-lamp-rtic
更多分享内容可访问我的个人博客https://www.niuiic.top/本系列教程全部置于 stm32 专栏。本例程参考stm32fxxx-hal crate(如stm32f1xx-hal)官方例程,并在官方例程的基础上增加了一些注释,修正了一些错误。可以借鉴不同型号的 stm32 例程,毕竟固件库的核是一样的。The example below has an error that *const (dyn gpio::private::GpioRegExt + 'static) cannot b原创 2021-06-19 22:33:42 · 173 阅读 · 0 评论 -
使用 rust 开发 stm32:stm32f3discovery-blink-rtic
更多分享内容可访问我的个人博客https://www.niuiic.top/本系列教程全部置于 stm32 专栏。本例程参考stm32fxxx-hal crate(如stm32f1xx-hal)官方例程,并在官方例程的基础上增加了一些注释,修正了一些错误。可以借鉴不同型号的 stm32 例程,毕竟固件库的核是一样的。#![no_main]#![no_std]// Use panic_semihosting instead of panic_halt.use panic_semihosting原创 2021-06-19 22:30:25 · 305 阅读 · 0 评论 -
使用 rust 开发 stm32:stm32f303-horse-race-lamp-with-timer-in-interrupt-mode
更多分享内容可访问我的个人博客https://www.niuiic.top/本系列教程全部置于 stm32 专栏。本例程参考stm32fxxx-hal crate(如stm32f1xx-hal)官方例程,并在官方例程的基础上增加了一些注释,修正了一些错误。可以借鉴不同型号的 stm32 例程,毕竟固件库的核是一样的。#![no_main]#![no_std]use cortex_m_rt::entry;use panic_halt as _;use stm32f3::stm32f303;原创 2021-06-19 22:25:08 · 252 阅读 · 0 评论 -
使用 rust 开发 stm32:stm32f303-horse-race-lamp-with-timer-in-pulling-mode
本系列教程全部置于 stm32 专栏。本例程参考stm32fxxx-hal crate(如stm32f1xx-hal)官方例程,并在官方例程的基础上增加了一些注释,修正了一些错误。可以借鉴不同型号的 stm32 例程,毕竟固件库的核是一样的。#![no_main]#![no_std]use cortex_m_rt::entry;use panic_halt as _;use stm32f3::stm32f303;#[entry]fn main() -> ! { let pe原创 2021-06-19 22:20:16 · 248 阅读 · 0 评论 -
使用 rust 开发 stm32:stm32f303-light-a-LED
本系列教程全部置于stm32专栏。本例程参考stm32fxxx-hal crate(如stm32f1xx-hal)官方例程,并在官方例程的基础上增加了一些注释,修正了一些错误。可以借鉴不同型号的stm32例程,毕竟固件库的核是一样的。#![no_main]#![no_std]use cortex_m_rt::entry;use panic_halt as _;use stm32f3::stm32f303;#[entry]fn main() -> ! { let periph原创 2021-06-19 22:15:57 · 625 阅读 · 0 评论 -
使用 rust 开发 stm32:stm32f103-adc-with-dma
本系列教程全部置于stm32专栏。#![no_main]#![no_std]use panic_semihosting as _;use cortex_m::singleton;use cortex_m_semihosting::hprintln;use cortex_m_rt::entry;use stm32f1xx_hal::{adc, pac, prelude::*};#[entry]fn main() -> ! { let dp = pac::Peripher原创 2021-06-19 22:09:39 · 812 阅读 · 0 评论 -
使用 rust 开发 stm32:开发环境搭建
首发于我的个人博客(https://www.niuiic.top)本文介绍如何用 rust 语言开发 stm32。开发平台为 linux(gentoo)。硬件准备本文使用的芯片为 STM32F103C8T6。该芯片性价比较高,价格低廉,适合入门学习。需要注意的是该款芯片为国产仿品,在烧录的时候需要对软件进行一定修改。仿真器选用 STLINK V2。可以选图片上的低配版,也可以选白色 20 针的较高级版。连接时只需要按板子上的标注把相同的引脚连起来即可。此外需要至少四根母对母杜邦线。软件准原创 2021-01-29 22:09:54 · 9919 阅读 · 2 评论 -
使用 rust 开发 stm32:前言
更多分享内容可访问我的个人博客https://www.niuiic.top/本文为使用 rust 开发 stm32 系列教程前言。Why RustRust 特性就不用多介绍了,有个编译器管着有时候比用C到处浪把自己整没了好。ST官方逐渐停止对C固件库的更新,使用MX感觉没自己写舒服。毕竟它也就生成个初始化代码,虽然看起来挺快,但是实际上自定义snippets可以比它快得多。可能对于不熟悉当前开发板的用户来说可以省去一点看参考手册的麻烦。不过老手可能无所谓。尝鲜吧。折腾吧(又是和编译器斗智斗勇原创 2021-06-19 21:50:48 · 6338 阅读 · 0 评论