一、背景介绍 嵌入式实时操作系统(RTOS)是针对嵌入式系统设计的一种操作系统,它具有快速响应、可预测性和实时性等特点,适用于对时间要求严格的应用场景。在嵌入式实时操作系统的开发中,使用C语言是一种常见的做法,因为C语言具有高效性和跨平台性,适用于各种嵌入式系统的开发。 二、嵌入式实时操作系统(RTOS)的基本原...
而实时操作系统(RTOS)作为一种专门用于处理实时任务的操作系统,在嵌入式系统中扮演着至关重要的角色。本文将重点讨论基于C语言的RTOS实时嵌入式系统设计与优化,旨在帮助开发人员更好地理解和应用RTOS技术,提升嵌入式系统的性能和稳定性。 什么是RTOS RTOS全称Real-Time Operating System,即实时操作系统。与通用操作系统...
一. 前言 C语言基础,有些同学基础扎实,有同学能用但是理解不深,这个训练营的重点在于RTOS和芯片架构,对C语言的要求也不算高. 结构体、指针、链表,掌握这三点就可以,基本不涉及复杂的语法,基础弱的同学,可以看唐老师的C语言视频,免费的。 我们并不需要停下来单独去学习C语言,C语言可以在RTOS的学习过程中再慢慢...
不是只有C语言可以用来搞嵌入式开发吗? 差不多十多年前,情况的确是这样。那时候还没有一个像ARM Cortex-M这样能占据半壁江山的统一核心,嵌入式处理器碎片化极为严重。绝大多数MCU本身性能不高,各种资源都比较有限,业务模型通常也比较简单,连RTOS都用不上,直接裸奔即可解决大部分业务逻辑,嵌入式工程师绝大多数时间...
FreeRTOS操作系统中的系统时钟节拍服务为 xTaskIncrementTick SysTick定时器配置成1ms中断,配置函数实现如下: /*配置定时器 1ms中断 */HAL_SYSTICK_Config(HAL_RCC_GetHCLKFreq()/8000);HAL_SYSTICK_CLKSourceConfig(SYSTICK_CLKSOURCE_HCLK_DIV8); 定时器中断程序SysTick_Handler实现如下: ...
本实验为了减少代码量,使用了封装比较完善的http库,本文主要讲述http文件上传的主要要求。 一、分析http关键头部信息 为了分析http header,我们通过chrome得到上传文件时的http信息: html_header.PNG 通过上面的截图我们可以发现,关键头部信息为Content-type和Content-length。一般我们写html上传时,都会在form标签加一个multi...
C语言和RTOS知识积累 C语言中的可变参数 我们在C语言编程中会遇到一些参数个数可变的函数,例如printf() 这个函数,它的定义是这样的: int printf( const char* format, ...); 它除了有一个参数format固定以外,后面跟的参数的个数和类型是 可变的,例如我们可以有以下不同的调用方法: printf("%d",i); printf...
首先在我们的STM32裸机工程模板根目录下新建一个文件夹,命名为“FreeRTOS”,并且在FreeRTOS文件夹下新建两个空文件夹,分别命名为“src”与“port”,src文件夹用于保存FreeRTOS中的核心源文件,也就是我们常说的‘.c文件’,port文件夹用于保存内存管理以及处理器架构相关代码,这些代码FreeRTOS官方已经提供给我们的,直...
物联网(Internet Of Things,IoT)操作系统是指以操作系统内核(可以是 RTOS、Linux 等)为基础,包括如文件系统、图形库等较为完整的中间件组件,具备低功耗、安全、通信协议支持和云端连接能力的软件平台。 RT-Thread 就是一个 IoT OS。 0.3 RT-Thread的架构 ...
地址:https://www.freertos.org/a00114.html 免费和商业版协议差异: 4ThreadX开源协议 ThreadX遵循“简单”的开源协议。 ThreadX的协议由微软“自定义”,包含的款项比较多,对共享、删除、修改、分发等都有约定。 地址:https://github.com/azure-rtos/threadx/blob/master/LICENSE.txt ...