logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

CAN协议

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传终端电阻至关重要:无论长度和速率如何,必须在总线两端的节点上安装终端电阻。这是为了匹配电缆的特性阻抗(通常为120欧姆),消除信号反射。没有正确的终端匹配,高速通信根本无法稳定。总线两端各连接一个120欧的电阻,两根信号线形成回路。这种CAN总线网络由ISO 11898标准定义,是高速、短距离的CAN网络,通信速率为125kbit/

文章图片
#单片机
FreeRTOS#6——任务API

判断新创建的任务是否为第一个任务 (pxCurrentTCB指向当前优先级最高的任务 即正在执行的任务)调用prvAddNewTaskToReadyList 添加新创建任务到就绪列表中。调用prvInitialiseNewTask 初始化任务控制块中的成员。如果调度器已经开始运行,并且新任务的优先级更大的话 进行一次任务切换。把申请到的堆栈地址,赋值给控制块的 pxStack。任务控制块、任务栈空

#单片机
FreeRTOS#7——任务通知

任务通知有三种状态,分别为未等待通知状态、等待通知状态和等待接收通知状态,其中未等待通知状态为任务通知的复位状态;当任务在没有通知的时候接收通知时,在任务阻塞等待任务通知的这段时间内,任务所等待的任务通知就处于等待通知状态;任务通知功能所使用到的任务通知数组和任务通知状态数组为任务控制块中的成员变量,因此任务通知的传输是直接传出到任务中的,不同通过中间媒介 即 任务的通讯对象(队列、事件标志组和信

#单片机
FreeRTOS#5——任务调度器的挂起与恢复

在PendSV中执行上下文切换,切换时R4-R11、R14需要手动保存恢复 其余自动保存恢复。只要调用了任务谢欢函数,就会进行切换,跟时间片无关,时间片只是定时会执行切换函数。作用:用于完成启动任务调度器中与硬件架构相关的配置部分,以及启动第一个任务。高优先级任务触发时 会立即抢占当前任务,不等执行完当前时间片。本质:CPU内核寄存器的切换。作用:用于启动任务调度器。

#单片机
FreeRTOS#4——任务调度

在PendSV中执行上下文切换,切换时R4-R11、R14需要手动保存恢复 其余自动保存恢复。只要调用了任务谢欢函数,就会进行切换,跟时间片无关,时间片只是定时会执行切换函数。作用:用于完成启动任务调度器中与硬件架构相关的配置部分,以及启动第一个任务。高优先级任务触发时 会立即抢占当前任务,不等执行完当前时间片。本质:CPU内核寄存器的切换。作用:用于启动任务调度器。

#单片机
FreeRTOS#3——列表与列表项

一个任务有两个 列表项(事件列表项、状态列表项),列表项通过指针指向任务的TCB,当任务的状态列表项挂在在哪个列表中(就绪、阻塞、挂起)这个任务就处于那种状态。数组的每个索引,对应一个优先级,调度器需要寻找下一个要运行的任务时,它会。,找到第一个非空的就绪列表,然后取出该列表头部的任务来运行。值(即它应该被唤醒的时刻)被用作排序的关键字。所有被挂起的任务都放在这个列表里。类型的变量组成的数组,数组

#单片机
FreeRTOS#2——配置文件分析

FreeRTOSConfig.h:对功能进行配置和裁剪,API函数的使能和失能。

#单片机
FreeRTOS#1——源码移植

要在其他中断函数中调用FreeRTOS的接口 需要该中断优先级不能高于FreeRTOS 所管理的中断的最高优先级,一般在5-15。FreeRTOS 需使用SYSTICK_Handler、SVC_Handler、PENDSV_Handler。在PendSV_Handler 中进行任务切换。中断优先级 要设置为抢占优先级。

#单片机
FreeRTOS#16——内存管理

heap_1heap_2heap_3heap_4heap_5

文章图片
#单片机
FreeRTOS#14——系统事件管理

【代码】FreeRTOS#14——系统事件管理。

#单片机#嵌入式硬件
    共 25 条
  • 1
  • 2
  • 3
  • 请选择