随笔分类 - RTOS相关
摘要:前言 “多年以后,经验老道的工程师面对着电脑中的各种或简单或复杂的系统,他将会回想起那个第一次接触RTOS系统的下午”。 上面玩了一个名句梗,回到正题,一个初出茅庐的嵌入式开发者总是会在做开发的路上遇到RTOS操作系统,RTOS(Real-time operating system)意为实时操作系统
阅读全文
摘要:多优先级的使用: RTThread支持可定义的多优先级,在RTThread中,优先级的数字越小,其逻辑优先级就越高。 在深入了解它的优先级调度机制之前,我们看一下RTT系统的优先级的使用方法: 打开RTT Studio,创建一个工程,打开它的rtconfig.h文件,可以看到一个宏定义: #defi
阅读全文
摘要:消息队列 在了解消息队列之前,先复习下数据结构的知识:队列,插入和删除受到限制的一种特殊线性表,只允许在后端进行插入操作,在前端进行删除。 消息队列是RTT系统中常用的一种通信结构,线程可以从队列中读取消息,如果队列中没有消息,则挂起线程。它是一种异步通信的方式。 由于队列结构的特殊性,线程最先得到
阅读全文
摘要:由通信提出的问题 在裸机编程的过程中,我们经常会遇到函数需要另一些函数的数据信息,也就是通信,这时我们会怎么做呢?进行裸机开发的同学肯定都会说:使用全局变量,通过指针实现之类。使用全局变量快捷且高效。 但是在RTOS系统中,这会遇到一些问题:怎样防止许多线程同时进行对这个变量的访问?怎样观测通信是否
阅读全文
摘要:MPU6050: MPU6050是一个六轴的运动传感器,其中三个轴为陀螺仪传感器,读取到的物理数值是角速度,方向分别为绕x轴,绕y轴,绕z轴。另外三个轴为加速度传感器,方向为沿x,y,z轴。 硬件连接: 手上正好有片廉价货色,来看看它的构造 从图中我们看到有8个接口,其中,会用到的接口有VCC(3.
阅读全文
摘要:线程与线程就绪列表: 在RTT系统中,链表是一个相当重要的数据结构,RTT通过链表,来管理一些事物,例如说线程。 在线程控制块中,有一个线程链表节点: rt_list_t tlist; /**< the thread list */ 这个节点可以将线程控制块挂载到一些链表中。在线程创建之后,线程首先
阅读全文
摘要:线程?它是啥? 在我们刚开始进入嵌入式软件的编程领域时,每次都会接触到一个函数——main函数,在裸机的编程中,程序的执行流程就是在main函数中进行的,main函数也可以理解为一个线程,它也有它的栈空间来存储变量。但是,如果有许多线程呢,怎样来区分它们?又怎样来分配存储空间? 对于这个问题,RTT
阅读全文
摘要:轮询系统与前后台系统: 在我们学习嵌入式编程的时候,首先接触到的是裸机编程(轮询),裸机编程的实现比较简单,而且其逻辑也非常的清晰,通过观察代码就能大概判断程序的执行流程和作用,但是裸机编程有一个巨大的缺点——实时性太差。例如下列代码(伪): while(1){ ...(程序段一) if(key1=
阅读全文

浙公网安备 33010602011771号