Elmagnifico's Blog

云深不知归处

FreeRTOS中heap源文件分析(三)

嵌入式,FreeRTOS,heap

heap源文件分析 我们都知道其实库函数里就有内存分配和释放函数 原型 extern void *malloc(unsigned int num_bytes); extern void free(void *ptr); 头文件 #include 或者 #include 功能 mallo...

FreeRTOS中heap源文件分析(一)

嵌入式,FreeRTOS,heap

heap介绍 目前FreeRTOS提供了5种内存堆管理方案,分别对应heap1/2/3/4/5,五个文件,有复杂的也有简单的。其中最简单的管理策略也能满足很多应用的要求,比如对安全要求高的应用,这种应用不允许动态内存分配的。 FreeRTOS也允许你自己实现内存堆管理,甚至允许你同时使用两种内存堆管理方案。同时实现两种内存堆允许任务堆栈和其它RTOS对象放置到高速的内部RAM,应用数据放...

Atom、Markdown与github

MarkdownPad2,sublime text 3,Activate Power Mode

Markdown 博客的文章一直都是Markdown格式的,而且用多了,基本格式语法什么的都记住了,也很好用。 再加上github一直有对Markdown的拓展,让其内容更加丰富了,所以选择使用Markdown感觉很好。 不像Latex什么的格式那么复杂,而且还有各种模板什么的。 MarkdownPad2 之前一直用 MarkdownPad2 来写博客的文章。 但是 Markdo...

STM32启动文件分析

嵌入式,bootloader,STM32

STM32启动文件分析 STM32的启动文件相当于就是bootloader,平时虽然对外都是屏蔽的级别,但是有时候还是需要知道一下的。 特别是了解了当前这个板子的bootloader之后,对于其他的板子的启动,其实也是类似的。 一般来说STM32系列的启动文件都是startup_stm32fxxxx.s,当然根据板子的内存大小,外设数量,封装不同可能使用的启动文件并不相同。 但总的来...

STM32启动方式分析

嵌入式,boot,STM32

STM32F767启动方式分析 一般嵌入式开发流程就是先建立一个工程,再编写源文件,然后进行编译,把所有的.s文件和.c文件编译成一个.o文件,再对目标文件进行链接和定位,编译成功后会生成一个.hex文件和调试文件,接下来要进行调试,如果成功的话,就可以将它固化到flash里面去。 启动代码是用来初始化电路以及用来为高级语言写的软件作好运行前准备的一小段汇编语言,是任何处理器上电复位时的...

FreeRTOS中list源文件分析

嵌入式,FreeRTOS,list

list源文件分析 之所以先拿list分析,是因为list与其系统核心部分关联比较小,而且又只是链表,比较容易理解。 其实最重要的是list文件很短… 环境 编译环境:keil 固件库:Keil.STM32F7xx_DFP.2.9.0 目标开发板:STM32F767IG 目标系统:FreeRTOS 9.0 注释 老样子,先来看看文件注释说了什么,如何介绍这个文件的。 /*...

FreeRTOS移植到STM32F767(二)

嵌入式,FreeRTOS,STM32F767

移植FreeRTOS到STM32F767 经过前面的移植,基本上已经有一个可用的工程了,但是这样还不够,目前也只是拿demo的剪裁版本来用,可能并不是我们想要的。 接下来就要介绍如何配置FreeRTOS,如何剪裁自己想要的系统。 环境 编译环境:keil 固件库:Keil.STM32F7xx_DFP.2.9.0 目标开发板:STM32F767IG 目标系统:FreeRTOS 9...

FreeRTOS移植到STM32F767(一)

嵌入式,FreeRTOS,STM32F767

移植FreeRTOS到STM32F767 环境 编译环境:keil 固件库:Keil.STM32F7xx_DFP.2.9.0 目标开发板:STM32F767IG 目标系统:FreeRTOS 9.0 第一步.获取源码 首先是要下载源码: http://www.freertos.org/a00104.html 解压出来以后,先介绍一下源码的目录结构 FreeRT...

FreeRTOS学习准备(二)

嵌入式,FreeRTOS,学习

嵌入式操作系统 学习之前先了解一下,目前市面上都有些啥嵌入式操作系统 embOS embOS is a priority-controlled real time operating system, designed to be used as foundation for the development of embedded real-time applications. I...

FreeRTOS学习准备(一)

嵌入式,FreeRTOS,学习

操作系统 以我的理解,从大方面来说,操作系统介于底层硬件和用户之间,他封装了底层驱动,对上统一接口,进而方便了上层软件开发。但不仅仅是这些,他介于二者之间,成为了硬件资源的管理者,为上层提供资源使用接口,进而完成用户所需要的功能。 一般来说,一个现代操作系统需要具备以下的各种功能。 进程管理(Processing management) 内存管理(Memory managem...