谈一谈RTOS的核心之一:调度器
调度器上下求索,方可得道之精髓引言我还在学校的时候,实验室有一个学长在B站发布了这么一个视频,B站链接在这里,并且将代码开源在github,取名为suos,对于当时的我来说,实时操作系统是一个很新鲜的东西,特别是当看到代码里面的两个函数中的while(1),这完全是超出认知的东西。如今四年已经过去了,不敢说对RTOS的远离了解的很清楚,但是也是管中窥豹,略知一二,今天就记录一下对RTOS的调度器的
调度器上下求索,方可得道之精髓引言我还在学校的时候,实验室有一个学长在B站发布了这么一个视频,B站链接在这里,并且将代码开源在github,取名为suos,对于当时的我来说,实时操作系统是一个很新鲜的东西,特别是当看到代码里面的两个函数中的while(1),这完全是超出认知的东西。如今四年已经过去了,不敢说对RTOS的远离了解的很清楚,但是也是管中窥豹,略知一二,今天就记录一下对RTOS的调度器的
前言前景提要:曾经做过一个迷你Linux小电脑,自己画了个四层板,有gpio、屏幕、USB等外设,并且在Ubuntu系统下编译固件,驱动屏幕等外设,最终也算是写了一个小型QT程序,读取图片并且联网通过访问API的方式识别图片中的内容。但是从始至终,一直游荡于论坛,没有潜下心来学习学习linux驱动开发与应用开发,今天开始通过这个笔记记录自己学习的过程,实际上也就是学习《【正点原子】I.MX6U嵌入
全志H3直播推流1、系统镜像烧录系统镜像尽量使用linux或者ubuntu原版镜像,不要使用不安全的三方镜像,我在这里使用friendlycore的卡刷包,代号focal,实际上就是ubuntu20.04,先使用工具烧录到内存卡里,然后插在机器上,使用eflash命令行或者图形化界面操作工具烧录到开发板内部mmc中,烧录完成后进入下一步。2、系统换源由于国内的某些政策原因,原版ubuntu镜像在国
RTOS-任务CPU占用统计在项目开发过程中,有时会需要查看各个任务的资源占用,需要用到rtos的CPU使用统计,其原理也很简单,就是开一个频率特别高的定时器,rtos在运行过程累计各个任务的实际占用时长,继而统计显示FreeRTOSConfig配置//计算CPU使用率 #define configGENERATE_RUN_TIME_STATS 1 //启用运行时间统计功能 #define c
很多嵌入式设备都对功耗有严格的控制,特别是消费电子对功耗的控制更为严格,Tickless是freertos中的一个可选模块,主要实现低功耗功能STM32类芯片的低功耗模式STM32之类的arm芯片通常有三种低功耗模式:睡眠模式(sleep):仅CPU 时钟关闭,其他所有外设时钟比如数字的TMR以及模拟的ADC时钟无影响。注意所有外设时钟都没有被关闭,因此外设还能工作,如果Sleep模式需要进一步降
个人理解中的蓝牙:蓝牙的应用场景很广泛,也发展了很多年了,蓝牙包含经典蓝牙和低功耗蓝牙,两个可以说是不是同一个东西,低功耗蓝牙是从蓝牙4.0后发展而来的,简称为BLE。在平常使用中,像听音乐(A2DP)打电话(HFP)这种对功耗要求较高的服务都在经典蓝牙中,像GATT这种服务,一般应用在低功耗设备中。GAPGeneric Access Profile(通用访问规范),用于提供蓝牙设备的通用访问功能
fifo在很多场景下都能用到,例如在串口中断中来不及接受数据,可以将数据先缓存起来,在线程中再进行处理fifo也可以称为环形队列,填入数据时在头部填入,取数据从尾部取出FIFO.c#include "fifo.h" #include "stdio.h" void fifo_init(fifo_t *obj, uint8_t *data_buffer, uin
欢迎访问我的私人网盘网盘地址:点击打开我的网盘:cloud.shumei52.top网盘通过可道云搭建,你可以在任何地方访问该云盘!公共用户名:public,密码:123456789实现过程1、在宝塔面板中一键部署kodbox服务并启用,然后在设置中填写你需要的网站和端口号,例如我的是cloud.shumei52.top,当然你也可以使用域名+端口访问2、我使用的服务器厂商与DNS厂商都是腾讯云,
linux U-boot开发这篇文章的目的前段时间杰哥弄了个nanopi开发板,在他手里吃灰了很久,到我手里又吃灰了很久,总得学一学不是?!开发板的准确型号是nano pi m1 plus,CPU为全志H3,挺古老的一块处理器了,板载1G的ddr3,性能孱弱,但是用来学习还是特别合适的,主要是资料比较多,本章节文章主要阐述u-boot开发流程,只能说是编译了一下吧,还没有到开发的地步环境需求虚拟机
在中断向量上遇到的坑在工作中遇到一个坑,APP烧录在FLASH_BASE(0x08000000)地址,但是将APP烧录在指定地址(0x08006000)后正常程序可以运行,但是freertos无法启动调度器,在网上查阅资料后发现是中断向量的问题什么是中断向量中断向量表实际上就是存放在Code区(也就是STM32内部的Flash区)从0x00000000地址开始的一个数组,数组的成员为4个字节,而且