降解黑科技

BY BLOG

RTT架构训练二(总结)

RT-Thread 和 CubeMX 混合训练二的总结。

背景介绍: 训练二是 RT-Thread 和 CubeMX 混合代码架构训练,上一篇推文将代码收官。 本篇回顾总结一下训练二的软件架构和文件结构。 再看一遍题目 应用层分解(源于架构思想) 上一篇推文《RTT架构训练二(代码大结局)》中说: 风扇控制留给参加训练的同志位自己动手。 所以这个功能分解里没有风扇控制的线程。 希望参加训练的同志位能通过自己的理解,风扇部分的软...

RTT架构训练二(代码大结局)

后面再有一篇总结,训练二就结束啦。

背景介绍: 《软件架构训练计划》算上本文已经完成两个训练了。 训练一是《RTT架构训练一(pin_demo)》,通过反馈发现一文一练的形式对小白和小透明来讲不易接受。 训练二在 RT-Thread 专家指导下,采用虚拟题目“总-分-总”方式推进讲解,进一步降低门槛。 本文完成“分”的最后一步,下一篇再总结。 回顾提目 题目分析: 1、所有操作都是对 GPIO 的,从这一点讲...

RTT架构训练二(信号量)

Sugar 来说说:啥叫线程挂起?啥叫信号量,它是干啥用的?

背景介绍: RTT 架构训练二上次完成了用 stm32f4dsicovery 板上按键翻转 led 灯。 上次推文内容偏重于多线程思想传递、任务规划方法。重点是工程思维训练。 本节偏重于 RT-Thread 系统资源使用方法:主要是信号量的使用。 本节完成的功能 完成下图中大部分功能 13秒效果展示 1、lcd_keypad 按键翻转 led 2、lcd1602...

RT-Thread 消息队列

Sugar 说说自己对消息队列的认识和使用

背景介绍: 在昨天的推文里,我实现了训练二的一小部分功能,用到了RT-Thread的消息队列。 今天我来说说RT-Thread中的消息队列。 引(lan)用(de)著(ma)作(zi) 引自[野火®]《RT-Thread 内核实现与应用开发实战—基于STM32》 为小白铺路 先来讲个段子,读者就当乐子看: 小白:大神,啥叫“异步通信方式”? 大神:异步通信方式就...

RTT架构训练二(手动翻转LED)

训练二的第2步,后面还有几步。

背景介绍: 上一篇《RTT架构训练二(开始一个新题目)》一文中,给出了一个虚拟题目。 在上一篇建好初始化工程的基础上,今天来完成这个虚拟题目中的一个小功能。 功能虽然小,但本文表述的内容很多,读者细细体会能有很大收货。 本篇完成这个小功能 视频演示如何操作 要点提示: 1、如何用 SmartGit 查看开发流程 log。 2、如何使用 SmartGit 退回版本。 3、...

RTT架构训练二(开始一个新题目)

训练二的第1步,后面还有几步。

《软件架构训练计划》微信群里 RT-Thread 专家传授经验: 拟一个题目,采用“总-分-总”方式完成题目,更有利于新手掌握。 本来应该正式的拟一个题纲,但碍于本人时间关系,先上题目走起来再说。 新题目 题目思路源于对 github 上几个分立 demo 的组合。 题目:按“自动模式”和“手动模式”通过相关传感器控制灯和一个小风扇。 细节规定如下: 视频演示初始...

RT-Thread 内核线程组成及调度

白话释义非常易懂

背景介绍: 在进入 RT-Thread 多线程编程之前,有必要对线程了解稍微深入一点。 本文试图一边说“程序员”专用语,一边用白话来描述。 给想入门,但还没入门的人一个助力。 先上一张老图 这个图第一次出现在《形象表述多线程》一文中。 【“程序员”专用语】 1、CPU(Central Processing Unit),执行计算机指令的主体。 2、“scheduler”...

怎样剪裁所需的 RT-Thread 内核

动手裁剪满足自己需要的 RT-Thread 内核。

背景介绍: 前段时间《我精简的 RT-Thread 内核开源啦》引起了很多网友的关注。 有参加《软件架构训练计划》的群友表示自己用的是 stm32f103ze 开发板,想要减裁一个与板子匹配的内核用于训练。 本文说说如何从 RT-Thread 官方 github 剪出自己所需的代码。 本来就有nano,自己精简还有什么意义? 在 RT-Thread 官微的评论中我看到了这个问...

一招通吃MDK5、IAR、GCC

值得推荐的 STM32 开发神技

背景介绍: Sugar 出的很多视频都基于 project-generator 开源项目来支持三平台。 通过反馈发现:这个方法引起了很多读者的兴趣。 参与了 Sugar 的《软件架构训练计划》的群友已经成功驾驭了这个方法。 本文从软件安装开始,系统介绍一下 project-generator 的使用。 首先说一说为什么我选 project-generator 与 CubeMX...

形象表述多线程

用简单的图示、清晰的语言表述多线程的工作方式。

背景介绍: “软件架构训练计划”以 RT-Thread 和 CubeMX 混合代码为例。 既然用到 RT-Thread 就要了解多线程的编程思想。 本文我就用图示的方式形象表述一下多线程的工作方式。 先看一下 RT-Thread 线程组成 可以先不看文字,记住这 3 个圈的样子就行。 将人比作CPU 多线程的工作方式 假设一个人到某处办事,要走 3 个窗口(相当于 ...