STM32使用RT-thread完成点灯,pwm,按键中断,定时器中断,ADC_stm32 rt-thread

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前在阿里

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上运维知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化的资料的朋友,可以点击这里获取!

下载后默认会打印下面内容

2.再让我们点个灯,

代码如图,写好后编译无错然后下载就行了,LED正常闪烁。

3.配置按键中断与回调函数

编译,没有问题下载后,按按键就会改变led状态(没有消抖,效果可能不好)

4.adc读取

adc读取需要开启功能并重新配置(因为默认是开了pin操作的功能,所以可以直接用)

我们分别点击这两个settings,首先是配置rt的功能,双击后会出现这样的界面

我一般选择点那个小箭头,然后点击组件,设备驱动,然后开启我们需要的功能

选择好之后按CTRL+S保存,在board.h文件中开启(取消注释或者添加)我们要用的那个adc

再在conf.h开启adc模块

然后编译,没有错误,添加代码

这个时候下载进去读出来的数据通常为0,我们需要点击cubemxsettings进行设置。

时钟和中断我都默认的,可以按需选择,开启串口1(中断打印需要)

选择mdk

不选择单独的h和c,然后生成代码。然后关闭**CUBEMX,**一定要关闭,不然可能代码不会更新,完成配置之后,会提示备份了conf文件,不用管就行,软件自动进行了代码适配。编译下载就能读出数据了

但很有可能你读出来的数据不正常,可能一直是0,或者改变很小。这个一般就是你rt初始化配置的io口不对,或者配置的和你读取的io不一样,修改一下就可以。

这里我是把读取代码放在按键中断里面的,每按一次按键就能读取并输出一次。

5.输出pwm和定时器中断

首先是在rt-thread settings里面开启定时器和pwm的驱动,Ctrl+S保存

board.h中开启定时器和pwm(pwm几就是定时器几)

然后在cubemx中配置

pwm

定时器中断

生成代码,编译,会报错,有点奇怪,就tim4会报错

我这里就直接把tim4开启那注释了,然后就没错了,但是初始化就会有问题,我们就手动调用一下cubemx的代码。

把cubemx的main.c中的tim初始化函数copy到msp.c,包括定义的结构体,记得删除static,以便调用

最后的话

最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!

资料预览

给大家整理的视频资料:

给大家整理的电子书资料:

如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以点击这里获取!

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

难做到真正的技术提升。**

需要这份系统化的资料的朋友,可以点击这里获取!

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
STM32F103是意法半导体(STMicroelectronics)生产的一款32位嵌入式微控制器,具有高性能和低功耗的特点。RT-Thread Nano是RT-Thread实时操作系统的一个轻量级版本,适用于资源受限的嵌入式系统。 在将RT-Thread Nano移植到STM32F103上之前,需要先了解RT-Thread Nano的架构和STM32F103的硬件特性。 首先,需要确保RT-Thread Nano的源代码和STM32F103的开发环境已经准备好。接着,根据STM32F103的芯片手册和引脚映射表,需要对RT-Thread Nano的硬件抽象层进行适配,确保操作系统可以正确地访问外设和中断。 其次,需要根据STM32F103的内存和存储器大小来合理配置RT-Thread Nano的内存管理器和文件系统。可以根据实际需求对系统进行裁剪,移除不必要的模块和功能,以减小系统的内存占用和代码体积。 然后,需要配置STM32F103的系统时钟和中断向量表,并在启动代码中初始化硬件资源和系统任务。可以参考RT-Thread Nano的官方文档和示例代码,根据具体的硬件平台和应用需求进行相应的设置和调试。 最后,进行系统的编译、烧录和调试。可以使用STM32F103的开发工具链和调试器,对编译后的固件进行烧录和调试,确保系统能够正确地启动和运行。 总结来说,将RT-Thread Nano移植到STM32F103上需要进行硬件适配、内存管理和系统配置等工作,最终通过编译、烧录和调试来验证移植的正确性。这样可以使得STM32F103可以运行使用RT-Thread Nano操作系统的应用程序,实现更灵活和可靠的嵌入式系统设计。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值