RT_Thread
yl浪迹天涯
这个作者很懒,什么都没留下…
展开
-
关于个人对UART+DMA +串口空闲中断的理解与疑惑
以下只是个人根据自己实际项目的使用在论坛里看到的一些交流的理解,欢迎大家指出其中理解错误的地方。1. 我为什么选择了 串口+DMA+空闲中断模式 在网上去搜索会看到很多的资料与简介,甚至还有许多实例程序,这里我就不在重复介绍。当初我选择这种模式来进行处理接收串口数据有以下几个原因。1. 实际中我是用串口去接收一种船舶上发出的报文数据(AIS数据),你当成GPS就行了。这种数据...原创 2020-03-19 17:16:48 · 3505 阅读 · 1 评论 -
从0到1写RT_Thread内核 ——— 临界段保护的实现
临界段通俗的解释就是一段不能被打断执行的代码,比如说再对内部FLASH进行写入时,可以加上临界段的保护,多线程对一个全局变量的操作时,加上临界段的保护可以避免一些意外的情况发生。比如这个线程在进行对此全局变量加操作,其他线程又在减操作。 对临界段的打断都是中断的产生,无论是外部中断,还是线程切换(PenSV中断)。所以对临界段的保护一般都是在这段时间内进行关中断操作。 以下为Cor...原创 2020-02-26 16:06:58 · 396 阅读 · 0 评论 -
从0到1写RT_Thread内核 ——— 线程切换中的汇编代码分析与常用的ARM汇编指令
结合野火的<<RT_Thread内核实现与应用开发实战>> 进行学习从0开始写RT_Thread的内核,从而达到对实时系统内核的了解和对C语言和汇编的提高。原创 2020-02-22 16:03:06 · 1595 阅读 · 0 评论 -
RT_thread 使用4G模块Air720H对STM32进行OTA远程无线升级
接上一篇博文,使用了在线升级的STM32程序的方法。此篇博文将利用4G模块Air720H,使用AT指令集,通过HTTP协议从云端服务器下载新版固件,从而实现对STM32的远程无线程序升级。 前面关于前期准备工作,在此不再累述 具体可以参考上一篇博文...原创 2020-02-22 16:59:26 · 5816 阅读 · 2 评论 -
RT_thread STM32通用Bootloader 做OTA升级
项目上需要做设备的远程升级更新程序,从而避免每次更新程序时都需要去现场烧录的麻烦。从而学习探索了RT提供的OTA功能。 RT-Thread 开发团队提供了通用的 Bootloader。开发者通过该 Bootloader 即可直接使用 RT-Thread OTA 功能,轻松实现对设备端固件的管理、升级与维护。" 引用于官方资料文档。 主要参考资料: 1.官方文档资料ht...原创 2020-02-09 15:38:18 · 23925 阅读 · 15 评论 -
RT_thread 配置STM32串口后,RX悬空一直接收到古怪数据 0A 0D 回车换行
受新型冠状病毒的影响,响应国家号召,乖乖呆在家里。没事的时候学习RT_thread。 居然遇到了这样的一个奇葩问题,配置好的串口3 RX出现一直接收0A 0D 数据的问题。 现象如下: 当不开启16进制显示的时候一直在刷空白。更加奇怪的现象还有:1. 当我裸核心板时,就是RX上什么都不接,没有这种异常输出。2. 当我在RX上插上一根杜邦线(一头插RX,...原创 2020-02-03 19:34:01 · 1986 阅读 · 1 评论 -
RT_thread AT组件URC 数据处理遇到的问题
记录自己采坑的过程,不认真看函数。 采用RT_thread官网给出的 AT Client URC 数据处理的例子 。参考https://www.rt-thread.org/document/site/programming- manual/at/at/#at-client-urc主要代码如下:static void urc_conn_func(const char *dat...原创 2020-01-31 21:40:46 · 3452 阅读 · 1 评论 -
RT_thread 独立看门狗 watchdog 不断自动复位的解决方法
记录一下,这个问题把我坑惨了,搞了3天都没有解决,甚至都有点怀疑人生了。本着学习的态度跑一遍官网给的各种案例,再慢慢学习用到项目上,结果上来就闷头一棒。 可能是这点坑了自己,我并没有直接从官网上去下载最新源码。我用了之前RT_thread来重庆培训的时候拷贝给我的源码。我一看 这不有个 v4.0.1 版本的吗,一想现在不也就最高 v4.0.2。从这里开始我就入坑了,之前利用的那些串口、...原创 2020-01-13 18:32:33 · 4549 阅读 · 0 评论 -
RT_Thread 硬件定时器使用
初学对RT_thread 许多配置的流程不熟悉,记录一些基本的操作。下面将简单介绍如何在RT_Thread中使用硬件定时器3,来进行重复定时中断。代码使用RT_Thread 硬件定时器给的一个例子,https://www.rt-thread.org/document/site/programming-manual/device/hwtimer/hwtimer/硬件定时器设备使用示例...原创 2020-01-10 15:46:47 · 3301 阅读 · 1 评论 -
RT_Thread 文件系统的使用
官方参考资料文件系统资料 https://www.rt-thread.org/document/site/programming-manual/filesystem/filesystem/ 文件系统应用 https://www.rt-thread.org/document/site/application-note/components/dfs/an0012-dfs/整个文...原创 2019-11-15 17:14:57 · 2830 阅读 · 0 评论 -
RT_Thread ——外设I2C的使用
主要内容参考官方文档https://www.rt-thread.org/document/site/programming-manual/device/i2c/i2c/官方文档中采用的是通过IO口模拟来实现I2C(即软件I2C),软件I2C相对于硬件I2C有着更好的移植性。通过env配置打开I2C 有时候打开env配置时,会发现并没有I2C这个选型,如下图所示: 这...原创 2019-11-11 20:05:07 · 4287 阅读 · 0 评论 -
RT_Thread 使用UART+DMA接收导致数据分包输出问题
直接使用官方给出的例子,具体参考https://www.rt-thread.org/document/site/programming-manual/device/uart/uart//* * 程序清单:这是一个串口设备 DMA 接收使用例程 * 例程导出了 uart_dma_sample 命令到控制终端 * 命令调用格式:uart_dma_sample uart3 * 命令解释:...原创 2019-11-11 14:59:44 · 2590 阅读 · 0 评论 -
RT_thread能力认证考试RCEA培训——第二周: 外设+文件系统学习
要求 熟悉RT-Thread外设的使用。 使用开发板上的SPI FLASH做文件系统,熟悉文件系统的使用,熟悉命令。可以参考的文档有:书籍、文档中心 前提 熟悉RT-Thread外设的使用。文档中心中提供很多设备的手册,开发板支持的都可以试试。 外设资料:https://www.rt-thread.org/document/site/programming-...原创 2019-11-11 20:07:33 · 690 阅读 · 0 评论 -
RT_Thread ——制作STM32 BSP中遇到的问题 cannot open source input file "stm32f1xx_hal_exti.h"
跟着官方教程一顿猛操作,结果一编译全报错。。 移植平台: STM32F103ZET6 MDK5Build target 'rt-thread'compiling main.c...board\CubeMX_Config\Inc\stm32f1xx_hal_conf.h(245): error: #5: cannot open source input file ...原创 2019-10-27 10:35:44 · 4269 阅读 · 2 评论