Darren_pty

导航

上一页 1 2 3 4 5 6 ··· 14 下一页

2021年1月6日 #

7-代码区 | 常量区 | 静态区(全局区) | 堆区 | 栈区

摘要: 什么是代码区、常量区、静态区(全局区)、堆区、栈区? 代码区:存放程序的代码,即CPU执行的机器指令,并且是只读的;常量区:存放常量(程序在运行的期间不能够被改变的量,例如: 10,字符串常量”abcde”, 数组的名字等); ①常量区内容在运行过程中不可改变 静态区(全局区、变量区):静态变量和全 阅读全文

posted @ 2021-01-06 15:03 Darren_pty 阅读(1355) 评论(0) 推荐(1) 编辑

2020年12月30日 #

8-FreeRTOS任务API

摘要: 任务API汇总: PriorityNum = uxTaskPriorityGet(任务句柄) //获取任务优先级 TaskHandle = xTaskGetHandle("task1_task") //根据任务名获取任务句柄 TaskNum = uxTaskGetNumberOfTasks() // 阅读全文

posted @ 2020-12-30 15:48 Darren_pty 阅读(281) 评论(0) 推荐(0) 编辑

2020年12月28日 #

7-FreeRTOS时间片进行任务调度

摘要: 注意: ①任务切换会存在时间片开销; FreeRTOS 支持时间片,每个优先级可以支持无限多个任务,这些任务的调度就是时间片调度; 在 FreeRTOS 中允许一个任务运行一个时间片(一个时钟节拍的长度)后让出 CPU 的使用权,让拥有同优先级的下一个任务运行, 至于下一个要运行哪个任务? 由时间片 阅读全文

posted @ 2020-12-28 17:34 Darren_pty 阅读(2415) 评论(0) 推荐(0) 编辑

2020年12月27日 #

6-C指针

摘要: (1)指针定义的理解 ① 指针,存放内存地址的变量,长度固定,32位系统中长度为4,说白了就是寻址位数。② 指针也是变量,那么免不了被存取,当然就会有存放此指针的地址,用&p获取; 1 int i=10; 2 int *p_t=&i; 3 4 int main() 5 { 6 printf("0x% 阅读全文

posted @ 2020-12-27 17:20 Darren_pty 阅读(147) 评论(0) 推荐(0) 编辑

2020年12月26日 #

用Union体测试处理器大小端

摘要: 如何将多个字节安排到内存中去?大端对齐和小端对齐两种方式 大端模式(Big_endian):字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中。(查看内存通常是:左高右低)int i=1; BE: 00 00 00 01 小端模式(Little_endian):字数据的高字节存储在高地址 阅读全文

posted @ 2020-12-26 22:41 Darren_pty 阅读(265) 评论(0) 推荐(0) 编辑

2020年12月20日 #

6-FreeRTOS开关中断函数测试

摘要: 注意事项: ①临界区、中断服务函数、开关中断中不能使用vTaskDelay 需求: ①开启定时器TIM6和TIM7,两个定时器每隔1s串口打印一次 ②设置TIM6中断优先级为4,TIM7中断优先级为5 ③设置FreeRTOS系统可管理的最高中断优先级为5,#define configLIBRARY_ 阅读全文

posted @ 2020-12-20 18:52 Darren_pty 阅读(326) 评论(0) 推荐(0) 编辑

5-FreeRTOS任务挂起和恢复

摘要: 注意事项: ① 中断服务函数中不能使用任务延时函数vTaskDelay,使用任务API也要带有ISR xTaskResumeFromISR(任务句柄) //在中断中恢复任务; portYIELD_FROM_ISR() //上下文切换,当恢复任务优先级等于或高于正在运行任务时,退出中断的时候一定要进行 阅读全文

posted @ 2020-12-20 18:14 Darren_pty 阅读(500) 评论(0) 推荐(0) 编辑

2020年12月19日 #

4-FreeRTOS 静态任务的创建/删除

摘要: 需求:静态创建任务(任务堆栈、控制块由用户自己指定) ①用一个任务创建两个任务Task1和Task2后,将自身任务删除 ②在Task1执行5次后,用Task1将Task2删除 ③Task1执行10次后,将自身删除 代码: ①需要将该宏打开: #define configSUPPORT_STATIC_ 阅读全文

posted @ 2020-12-19 18:03 Darren_pty 阅读(550) 评论(0) 推荐(0) 编辑

3-FreeRTOS 动态任务创建/删除

摘要: 要求:动态任务创建(任务堆栈自动创建) ①用一个任务创建两个任务Task1和Task2后,将自身任务删除 ②在Task1执行5次后,用Task1将Task2删除 ③Task1执行10次后,将自身删除 代码: 1 #include "FreeRTOS.h" 2 #include "task.h" 3 阅读全文

posted @ 2020-12-19 15:58 Darren_pty 阅读(386) 评论(0) 推荐(0) 编辑

2020年12月8日 #

2-FreeRTOS 创建任务

摘要: 创建任务: void vTask1( void * pvParameters );//Task1 TaskHandle_t task1TaskHandle= NULL; //句柄 int main(void) { BaseType_t os=0; LED_init(); delay_init(); 阅读全文

posted @ 2020-12-08 22:57 Darren_pty 阅读(417) 评论(0) 推荐(0) 编辑

上一页 1 2 3 4 5 6 ··· 14 下一页