![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
stm32
文章平均质量分 93
taotao830
这个作者很懒,什么都没留下…
展开
-
【stm32】FreeModbus 介绍 + 移植stm32f103 HAl库
FreeModbus 装轮子 记录。移植到基于HAL库的stm32f103zet6.原创 2022-08-06 23:23:21 · 2752 阅读 · 0 评论 -
【stm32】stm32cubeIDE在freeRTOS无法printf float 浮点数
stm32cubeIDE在freeRTOS的时候有坑,printf浮点,HAL库 等等,记录了一下爬坑过程原创 2020-07-21 08:52:00 · 5206 阅读 · 0 评论 -
【stm32】 stm32cube IDE v1.3.0 使用步骤(freeRTOS + GPIO + 串口 printf)
1. 引言这篇应该不能算“深入思考”了吧,只是一个新工具的尝试。但是都放在stm这一个系列里我就不改名字了。说是新工具,其实一点也不新。cubeIDE应该已经推出来不少几年了,只是一直没用。之前这么久做stm32都是用Keil MDK来做的,潜意识里都快把keil当做st的官方工具了。cubeIDE对应的是st的HAL库,之前做stm32f7的时候用过这套库,感觉比3.5的标准库冗余了很多,估计也是为了兼容多个平台而做的妥协,没办法,这年头芯片的性能越来越强,肯定还是以开发效率为优先,就像很多人不原创 2020-07-17 09:26:50 · 6625 阅读 · 2 评论 -
【FreeRTOS】FreeRTOS 源码学习笔记 (6)并发解决 之 临界区(中断临界区)、信号量 分析
信号量自旋锁 + 互斥锁原创 2020-05-01 10:59:21 · 1541 阅读 · 0 评论 -
【FreeRTOS】FreeRTOS 源码学习笔记 (5) 任务调度器 + vTaskStartScheduler、xPortPendSVHandler、xPortSysTickHandler
1. 引言FreeRTOS的任务调度是个大头,也是一个操作系统的核心。其实个人理解,FreeRTOS调度规则很好理解,原则就是“优先级高抢占”,因为FreeRTOS是一个抢占式实时内核,一定会保证就绪态的高优先级任务可以先运行。所有的调度都是为了实现这个目的来做的。一些个人思考可以看4.1节。2. 原理分析2.1 什么情况会任务切换个人理解,只有当一个更高优先级的任务进入到就绪列表...原创 2020-04-25 20:05:51 · 6517 阅读 · 2 评论 -
【FreeRTOS】FreeRTOS 源码学习笔记 (4) 任务创建xTaskCreate + 常用结构体TCB、xLIST
1. 引言经过上一节移植,我们已经拿到了一个可以用的工程,接下来就可以单步跟踪了。使用FreeRTOS,首先要新建一个任务,我们可以单步跟一下它的运行流程,在调试之前,还是要先把最重要的几个结构体整理一下。(本文初版为2020.4.12,FreeRTOS的代码版本为FreeRTOS Kernel V10.3.1)2. 重要结构体2.1 TCB做FreeRTOS肯定首先要把大名鼎鼎的TC...原创 2020-04-19 20:25:14 · 1645 阅读 · 0 评论 -
【FreeRTOS】FreeRTOS 源码学习笔记 (3)队列 及 xQueueGenericSend分析
引言本篇又不写调度器了,准备先整理整理“队列“,无他,就觉得这个很有用,自己写应用层代码的时候,队列要用的比较多,之前一直用一个自己写的环形buffer,里面nReadIndex,nWriteIndex,nFreeIndex来管理总觉得不够“官方”,这次看到一个如此成熟的队列,还是忍不住先分析一下。...原创 2020-04-16 23:48:11 · 4083 阅读 · 2 评论 -
【FreeRTOS】FreeRTOS 源码学习笔记 (2)列表项 +一些不容易理解的点(xItemValue、pxIndex、vListInsertEnd…)
1. 引言本来第二节想直接写任务调度的,发现调度器里很多用到的list这个结构体。freeRTOS中的list.c和list.h文件又挺短的(list.c 198行 list.h 412行),就是一个链表,所以作为一个基础知识(软柿子),先补一波。(本文FreeRTOS版本 v10.3.1)2. 结构体list.h里重要的结构体就3个。列表列表项迷你列表项2.1 xL...原创 2020-04-14 12:50:22 · 1986 阅读 · 0 评论 -
【FreeRTOS】FreeRTOS 源码学习笔记(1) 文件结构 + stm32f103c8t6移植步骤
0. 引言之前freeRTOS用过几次,但是项目赶工的急,一直没有认真的去里面看过,最近正好有空,准备到里面看下源码实现,毕竟核心文件就这么几个,认真看一下流程,对操作系统的雏形也就有一个认识了。而且一些常用的功能,队列,内存管理,信号量之类的,都有,基本上彻底弄懂一个,对以后理解别的也有帮助。1. FreeRTOS介绍FreeRTOS其实不用再多介绍了,现在太火了,主要是免费,感觉很多厂家...原创 2020-04-11 11:11:43 · 2512 阅读 · 0 评论 -
【stm32】stm32深入思考(2) 之 RAM启动
上一篇做了stm32系统启动流程的整理分析,中间遇到stm32启动模式的选择和原理。中间也遇到一些不理解的地方,于是着手做了实验,在这里记录一下。原创 2020-04-08 23:00:27 · 4006 阅读 · 0 评论 -
【stm32】stm32f1代码中core_cm3、system_stm32f10x、stm32f10x_conf、stm32f10x等文件的作用
1. 前言前面总结了好几篇文件的代码结构和相关知识,总是要实践一下。随便找了一个以前写的Stm32的demo来练练手。顺便先整理一下工程里面一些文件的作用,一直都是从DEMO中直接拿来用,还没有认真的理过。misc.ccore_cm3.c/hstartup_stm32f10x_hd.sstm32f10x_conf.hstm32f10x_it.c/hsystem_stm32f1...原创 2020-02-05 17:39:14 · 6589 阅读 · 2 评论 -
【stm32】stm32深入思考(1) 之 系统启动流程 main之前的过程,__main作用,start.s作用
1. 引言看到这篇文章的应该都是做嵌入式的,都不是新手,可能大家都上手过一些片子,也开发过项目。用下来感觉如何?MCU的门槛是很低的,现在的网上资料一大堆,课程满天飞,很多人都可以快速上手,厂家给的SDK也相对完善,可以说这部分很简单。在这种情况下,只要你懂C语言和一些简单的外设原理,对着demo你就能开发。在这个基础上,怎么样更深一步,真正的从开发中学到东西?而不是单纯的会抄demo而...原创 2020-04-05 21:35:28 · 4101 阅读 · 10 评论