RTOS基于7840——任务创建、启动、切换、删除

1. 任务创建

7840的例程里面,main函数做了一个开始函数的创建

开始函数里面创建了2个任务

任务里面做了点灯

直接给他屏蔽掉,简化代码

任务创建失败

忘了开任务调度表

开了之后,只运行任务0,不跑任务1

原来代码里面打印写错了都写的0

发现从task1开始运行,像是优先级

改成17之后,都是先从0开始运行

查看代码接口,确实是优先级

ai分析分优先级

可以看到这2个任务都是100ms执行一次

因为打印有时间,去掉打印,2个任务相差4.2us

去掉打印,时间改成1ms,发现翻转时间是标准的1ms'

改成0之后,只有0能运行,翻转一次时间是1.68us,也就是说被0任务给阻塞了

2. 创建任务的简单分析

参考网上资料(感谢韦东山老师)

非常感谢韦东山老师的RTOS课件资料!!!

简单看一下就是

这里提到了,切换任务就是触发一个异常中断,然后保存现场。

没有寄存器地址,可以看出来这里就是模拟现场用的

发现是cm32的

M4F是按照这样写的

3. vTaskDelay函数

4. 启动任务

反汇编配置

css 复制代码
fromelf  --text  -a -c --output=.\Objects\demo.dis  .\Objects\demo.axf 

这里看的不是很明白,后续第二遍着重看

从地址映射引出的问题,修改起始地址

看下7840的起始地址

这里地址映射到0地址不清楚,后面二次看代码时候再来细看。

还是看不懂讲解

参考讲解代码简化一下我们的代码

什么是msp/psp

ok,看的一脸懵逼

5. 切换任务

6. 删除任务

相关推荐
笨笨饿16 小时前
#135_代码中的类型重定义艺术:从基础封装到函数类型设计
开发语言·stm32·单片机·嵌入式硬件·mcu·物联网·嵌入式实时数据库
电子科技圈1 天前
从工厂直达全球市场:emnify为联网设备制造商推出免费SGP.32引导网络接入的OEM计划
嵌入式硬件·mcu·物联网·智能硬件·iot·交通物流
Messy create2 天前
【BMS-三级架构】
单片机·mcu·架构·能源
v_for_van2 天前
C语言__attribute__
服务器·c语言·开发语言·mcu·嵌入式·嵌入式实时数据库
sramdram2 天前
基于MCU单片机的电推剪控制解决方案
单片机·嵌入式硬件·mcu·mcu单片机
DevHub4 天前
CANopen 教程:STM32 实现 CANopen 从站,3 个回调替代手写对象字典
c语言·驱动开发·stm32·单片机·嵌入式硬件·mcu
亿道电子Emdoor4 天前
【Arm】如何高效实现2兆字节对齐
arm开发·单片机·mcu
笨笨饿4 天前
#111_关于FreeRTOS面试的一些题目
linux·ubuntu·面试·职场和发展·centos·rtos
wuyk5555 天前
《WiFi 嵌入式物联网开发全套实战》| 第01章 WiFi整体架构详解:BSS/ESS/AP/STA模式彻底区分
开发语言·stm32·单片机·嵌入式硬件·mcu·物联网·51单片机
芯片设计-曾工5 天前
YL1621(SSOP28)国产段码LCD驱动芯片|PIN‑PIN兼容HT1621,储能电量显示板CH2505B国产化替换方案
stm32·单片机·嵌入式硬件·mcu·硬件工程