Darren_pty

导航

2021年2月5日 #

2001

摘要: Why do so many Americans distrust what they read in their newspapers? The American Society of Newspaper Editors is trying to answer this painful quest 阅读全文

posted @ 2021-02-05 13:15 Darren_pty 阅读(31) 评论(0) 推荐(0) 编辑

2021年1月15日 #

10-FreeRTOS 队列

摘要: 实验内容: ①创建三个任务,任务一向队列里发送数据100,任务二向队列发送数据200,任务三从队列里面读取数据; ②任务一和任务二优先级相同,任务三优先级大于任务一二。 代码: // 任务优先级 #define SENDER_TASK1 1 #define SENDER_TASK2 1 #defin 阅读全文

posted @ 2021-01-15 17:21 Darren_pty 阅读(70) 评论(0) 推荐(0) 编辑

2021年1月12日 #

9-FreeRTOS API获取任务使用CPU时间

摘要: 获取CPU时间的API: vTaskGetRunTimeStats() 获取任务运行时间信息,此函数会统计任务的运行时间,并且将统计到的运行时间信息按照表格的形式组织在一起并存放在用户设置的缓冲区里面,缓冲区的首地址通过参数传递给函数 vTaskGetRunTimeStats()。 获取前期准备: 阅读全文

posted @ 2021-01-12 16:06 Darren_pty 阅读(335) 评论(0) 推荐(0) 编辑

2021年1月6日 #

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

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

posted @ 2021-01-06 15:03 Darren_pty 阅读(172) 评论(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 阅读(83) 评论(0) 推荐(0) 编辑

2020年12月28日 #

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

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

posted @ 2020-12-28 17:34 Darren_pty 阅读(694) 评论(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 阅读(50) 评论(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 阅读(95) 评论(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 阅读(136) 评论(0) 推荐(0) 编辑

5-FreeRTOS任务挂起和恢复

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

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