Linux发烧友1.RTOS篇1.1RT-Thread简介1.2时钟管理1.2.1时钟节拍1.3获取系统节拍1.4定时器分类1.5定时器源码分析1.6定时器相关函数1.61动态创建一个定时器和删除定时器1.7初始化和脱离定时器1.8启动和停止定时器1.9高精度延时1.10实战篇:RTOS定时器代码演示2Linux篇2.1Linux简介2.2Linux定时器机制2.3alarm类定时器2.4进程接
转载 2023-11-26 13:54:00
169阅读
RT-Thread,全称是 Real Time-Thread,是一个嵌入式实时多线程操作系统,基本属性之一是支持多任务,允许多个任务同时运行并不意味着处理器在同一时刻真地执行了多个任务。RT-Thread 就是一个物联网操作系统(IoT OS),物联网操作系统是指以操作系统内核(可以是 RTOS、Linux 等)为基础,包括如文件系统、图形库等较为完整的中间件组件,具备低功耗、安全、通信协议支持和
一直在使用rtos作为主要开发内容,却没有详细了解过rtos的内核实现机制。最近一个月,抽了点时间将freertos和rtthread的内核代码看了下,了解了实时系统的实现机制和设计思想。这里学习freertos的代码,先看朱大神的freertos基础篇和高级篇的详细介绍,然后啃源码;搞懂了基本的设计思想和代码的实现逻辑。下面简单列一下自己了解到的两个系统的实现差异。一、创建任务两个系统都支持创建
转载 2023-10-03 15:34:57
1074阅读
在上一篇《嵌入式操作系统浅谈》中,大概介绍了我自己再工作中使用到的如rt-thread,freeRTOS,uCOS,luatos等系统,在这一篇文章中,我简单说一下这些操作系统一些特点,还有就是我们平时的工作中什么场景下用哪种系统比较好。面很多大神对上面的一些系统都做过了一些对比和总结: 比如: 1.[RTOS]uCOS、FreeRTOS、RTThread、RTX等RTOS的对比之特点 2.嵌入式
线程?它是啥?  在我们刚开始进入嵌入式软件的编程领域时,每次都会接触到一个函数——main函数,在裸机的编程中,程序的执行流程就是在main函数中进行的,main函数也可以理解为一个线程,它也有它的栈空间来存储变量。但是,如果有许多线程呢,怎样来区分它们?又怎样来分配存储空间?  对于这个问题,RTThread有它的解决办法。 首先是线程栈  栈,是一种经典的储存结构,RTThread
转载 2023-07-10 22:17:30
363阅读
1、中断管理上的区别 freertos进入临界区时,不响应优先级低于设定阈值的中断,此时若需要一个绝对的定时时间来做一些采样业务,那么采样周期就有可能被打断。 若把中断优先级设定高于设定阈值,就不能使用freertos的API,但是这个中断又需要用到队列来存储数据。使用全局变量就有悖使用操作系统的初衷。 rt-thread进入临界区时,仅是不切换任务,对于所有中断都是可以响应的,这对于需要绝对周期
转载 2023-12-17 12:18:41
541阅读
RT Thread 文件系统教程RT Thred 文件系统教程-1 SPI Flash使用文件系统小技巧打开RT-Thread Studio软件,新建工程W25Q128底层编写在spi1总线上挂载W25Q128块设备。挂载文件系统到根目录,代码如下测试如下 RT Thred 文件系统教程-1 SPI Flash使用文件系统这篇文章将讲解如何使用RT-Thread Studio 开发工具操
跑RT-Thread的邮箱应用例程《RT-Thread内核实现应用开发实战》详细介绍了RT-Thread的邮箱应用。https://doc.embedfire.com/rtos/rtthread/zh/latest/application/mailbox.html 有详细介绍邮箱原理及其应用。配套带有例子程序的工程文件存放于配套程序文件夹:ebf_rtthread_base_code_
## 如何实现“rtthread javascript” ### 整体流程 首先,让我们看一下实现“rtthread javascript”这个任务的整体流程。我们将使用以下步骤来完成这个过程: | 步骤 | 操作 | | ---- | ---- | | 1 | 准备开发环境和工具 | | 2 | 下载并编译 rt-thread 源码 | | 3 | 集成 JavaScript 引擎到 rt
原创 2024-06-25 05:04:08
30阅读
准备:        RT-thread Studio 2.2.5        CubeMX 6.6.1        rt-thread驱动包 4.0.3  1.新建项目   &nbsp
转载 2024-05-05 20:16:59
66阅读
注释:这是19年初的博客,写得很一般,理解不到位也不全面。19年末得空时又重新看了RTThread的SPI和GPIO,这次理解得比较深刻。有时间时再整理上传。 ------------------------------------------------------------------------------------------------------------------------
一.前言在上节我们实现了FTP网络传输功能,实现了通过网络对设备的文件进行读写的功能,但是我们要是没网呢,想要导出数据文件怎么办??首先想到了USB,这次我们通过usb的otg接口,实现一个模拟读卡器的功能,将设备插入到电脑后,将我们的sdcard作为一个U盘,我们就可以直接通过电脑进行拷贝了。此次我们选用了usb-device模式,usb提供的复合设备类型,可以让给usb添加虚拟串口及读卡器的功
文章目录1 memheap 管理算法简介2 只使用片内 RAM 的示例3 配置片外 SDRAM 和 内存管理算法4 SDRAM 的读写测试5 内存堆申请测试5.1 内部 RAM 和 片外 SDRAM 顺序申请测试5.2 直接申请片外 SDRAM 内存测试6 补充6.1 为什么 rt_malloc 优先申请片内 RAM 的内存7 完整代码   在开发中由于单片机自带的 RAM 空间比较小,有时候需要
## QtAndroid开发对比 在现代开发技术中,Qt和Android是两种广泛使用的框架,各自具有不同的优势和使用场景。本文将从多个方面对这两个平台进行对比,并通过简单的代码示例来说明它们的特点。 ### 1. 平台性质 - **Qt**:是一种跨平台的应用程序开发框架,支持多操作系统如Windows、Linux、macOS等。 - **Android**:是专为移动设备设计的操作系统
原创 11月前
290阅读
# QTAndroid对比实现指南 作为一名刚入行的小白,了解QTAndroid之间的对比是很重要的,因为这将帮助你选择合适的开发工具和框架。本文将通过表格和详细代码实例带你走过QT和Android对比分析,确保你对每个过程都有清晰的认识。 ## 一、项目流程 下面是完成QTAndroid对比的步骤流程表: | 步骤 | 描述 | 工具/环境
原创 10月前
138阅读
Android和Linux是两种不同的操作系统,分别用于移动设备和计算机。虽然它们都基于Linux内核,但在功能、架构和用途上有一些显著的差异。本文将对Android和Linux作一个对比,并提供代码示例来加深理解。 ## Android系统 Android是一种开源的移动设备操作系统,由Google开发和维护。它主要用于智能手机、平板电脑和其他便携式设备。Android系统基于Linux内核
原创 2023-08-21 04:26:49
419阅读
在内存整理方面,WINDOWS系统、安卓系统、苹果系统以及Linux系统存在一些差异。 Windows系统:Windows系统采用了一种称为“分页机制”的内存管理方式,将物理内存和虚拟内存划分为固定大小的页面,并通过页面表进行映射和管理。当物理内存不足时,Windows系统会将一些不常用的内存页面交换到硬盘上的虚拟内存文件中,以释放物理内存空间。此外,Windows系统还具备自动内存管理
rtthread线程等级
原创 2024-04-07 08:37:53
108阅读
一、串口设备使用示例–中断接收及轮询发送串口数据接收和发送数据的模式分为 3 种:中断模式、轮询模式、DMA 模式。在使用的时候,这 3 种模式只能选其一,若串口的打开参数 oflags 没有指定使用中断模式或者 DMA 模式,则默认使用轮询模式示例代码的主要步骤如下所示:1.首先查找串口设备获取设备句柄。2.初始化回调函数发送使用的信号量,然后以读写及中断接收方式打开串口设备。3.设置串口设备的
转载 2024-02-20 15:56:41
105阅读
目前国产手机的操作系统都是基于谷歌的Android系统深度定制的,每个厂商在进行定制时便产生了差异,也有了自家的特色功能。现在笔者手上就有荣耀V10和vivo Z3两款手机,所以今天就给大家带来这两款手机的系统对比,在看看谁的系统做的更加出色。左:vivo Z3 右:荣耀V10首先来看看两者的系统,将两者的系统版本都更新到最新版本,其中vivo Z3是Funtouch OS 4.5,荣耀V10是E
转载 2023-06-30 19:06:26
508阅读
  • 1
  • 2
  • 3
  • 4
  • 5