![](https://img-blog.csdnimg.cn/20190918140053667.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
ARM CortxM 与 FreeRTOS
文章平均质量分 66
ARM CortxM 与 FreeRTOS,一起使用的时候,需要掌握的内容.
__德康__
这个作者很懒,什么都没留下…
展开
-
FAT 文件系统 创建
FAT 文件系统 在嵌入式系统中常用.这里提供使用FAT文件系统的说明.原创 2023-05-12 15:12:54 · 1135 阅读 · 0 评论 -
FreeRTOS 定时器
定时器的使用与定时器任务(Tmr Svc)服务的理解.freertos的定时器功能是用task实现的,但是其命令却是用队列queue实现的.一旦别的task中发送xMessage,可以导致prvTimerTask立刻从pxDelayedTaskList(等待列表)中加入pxReadyTasksLists(就绪列表).由于Daemon优先级最高,因此可以立刻执行到prvTimerTask,通过接收xMessage的函数,根据xMessage.xMessageID,具体来处理命令。原创 2023-04-24 18:09:44 · 1120 阅读 · 0 评论 -
FreeRTOS SysTick中断
SysTick—系统定时器是属于 Cortex-M 内核中的一个外设,内嵌在 NVIC 中。系统定时器是一个 24bit 的向下递减的计数器,计数器每计数一次的时间为 1/SYSCLK,一般我们设置系统时钟 SYSCLK 等于 AHB 时钟,在 RT1052 中,AHB 时钟等于 528MHZ。当重装载数值寄存器的值递减到 0 的时候,会置位相关的标志位或者产生中断(前提是中断已经使能),以此循环往复。原创 2023-04-10 11:44:20 · 723 阅读 · 0 评论 -
ARM Cortex-M MPU的保护设置
MPU 可以将内存划分为不同的区域,并且可以设置每个区域的访问属性。提高系统的稳定性。典型应用如下: 划分特权用户访问区域和普通用户访问区域,在 OS 系统中提高系统稳定性。 设置只读区域,防止关键数据被意外修改。 检测堆、栈是否溢出。原创 2023-04-07 15:27:14 · 465 阅读 · 0 评论 -
FreeRTOS: vTaskSuspendAll xTaskResumeAll详解
1,如果关闭调度的时候,有等候的线程(pending )需要把线程转移到就绪列表中prvAddTaskToReadyList.2,如果关闭调度的时候,经过的多个Tick,需要执行对应的次数的xTaskIncrementTick.2,是否有线程需要做调度工作.如果有返回TRUE.3,如果以上都没有发生,继续执行原有的线程.1,累加Tick数.原创 2023-04-03 17:11:25 · 1243 阅读 · 0 评论 -
FreeRTos 执行空函数指针,重启的现象是为什么
上面的图中可以看书,调用空指针函数p_cxt_fun的汇编代码.跳转到 内存的0地址.(内存中0地址保存的时候,一些常用数据区,并非代码区域)准备继续执行.调用空函数后,PC指向了 0,然后根据地址0的数据,当成了指令集执行. 所有可能出现各种现象,重启只是其中一个可能而已.可能是空函数与RESET函数刚好地址一致,因此调用空函数的时候,无意中执行了重启函数REST,所以才出现重启现象.最后出现什么现象,就跟地址0的数据区的数据的不同可能出现不一样的现象.RESET函数根本不是0,因此上面猜测是错误的.原创 2023-03-31 12:00:44 · 389 阅读 · 0 评论 -
Arm ContxM FreeRTOS MSP之间PSP相互切换
FreeRTOS 创建线程的时候,事先往堆栈中保存EXC_TURN值,然后做线程切换的时候,先把保存的EXC_TURN值反映到CPU寄存器,这样执行线程的时候就变成了PSP.也就是说线程的时候使用PSP是人为设置的.相反MSP是硬件自己完成的,比如当发生中断后,执行中断函数的时候硬件吧SP改成MSP.代码从main()函数开始执行的时候,栈默认是MSP开始.当创建线程后从main函数切换到线程的时候,栈从MSP->PSP. 这个过程如下.4.执行线程的代码,除非线程结束,不然不会再继续main()函数。原创 2023-03-31 14:18:40 · 806 阅读 · 0 评论 -
FreeRTOS 启动第一个线程的步骤
从main函数开始,初始化完成之后,通过SVC指令的中断函数来,初始化成需要的寄存器值,才能正常运行线程.调用prvStartFirstTask前的,寄存器值如下。原创 2023-03-31 17:32:41 · 531 阅读 · 0 评论