logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

嵌入式调试方法

我们知道常规的断点调试是在想观察哪里的问题时就在对应的代码地址设置断点,并且一旦运行到断点位置会让程序自动暂停运行,这种断点调试功能确实为开发者解决 bug 立下了汗马功劳,但是这种方式有很大的局限性,因为很多时候我们并不需要让程序停下来,而只想知道是否在这段代码运行过,或者说发生问题的位置根本不能停下来,否则就会让整个系统功能出现问题,比如中断处理函数的调试,程序一旦停下了也就失去了所有中断的后

#嵌入式
嵌入式实时操作系统uC/os-II(十三)-互斥型信号量和优先级反转

任务优先级的反转现象定义:在可剥夺型内核中,当任务以独占方式使用共享资源时,会出现低优先级任务先于高优先级任务而被运行的现象,这就是所谓的任务优先级反转。为了找到杜绝任务优先级反转现象的方法,下面就对优先级的反转现象做一个详细的分析。图5-1描述的任务A、B、C三个任务的运行情况。其中任务A的优先级高于任务B,任务B的优先级高于任务C。任务A和任务C都要使用同一个共享资源S,而用于保护该资源的信号

#嵌入式#操作系统
嵌入式C语言-多维数组之二维数组传参、返回值、申请内存问题

二维数组作为参数二维数组比较常用的两种方式,但是区别在于必须写出列数。因为数组在调用时同样有数组降价的问题,实际上函数得到是一个指针,指向行向量构成的一维数组,这样每个一维数组的大小(size)必须提前定义好,便于编译器分配栈空间。int sum(int iArray[][4], int size);int sum(int (*iArray)[4], int size);#include <

文章图片
#算法#数据结构#排序算法
嵌入式实时操作系统uC/os-II(一)

1、嵌入式系统定义:嵌入式系统是对对象进行自动控制而是其具有智能化并可嵌入对象体系中的专用计算机系统。2、嵌入式操作系统:运行在嵌入式硬件平台上,对整个系统及其所操作的部件、装置等资源进行统一协调、指挥和控制的系统软件。3、实时操作系统应满足的条件:多任务系统任务的切换时间应与系统中的任务数无关中断延时的时间可预知并尽可能短4、内核类型可剥夺型:在可剥夺型内核中,CPU总是运行多个任务中优先级别最

#嵌入式#操作系统
嵌入式实时操作系统uC/os-II(五)-任务就绪表

任务调度:就是通过一个算法在就绪任务中确定马上运行的任务,操作系统用于负责这项工作的程序模块就叫调度器。任务就绪表结构在uC/OS-II中,就绪表就是一个位图,系统中的每个任务都在这个位图中占据一个二进制位,该位值得状态(1或0)就表示任务是否处于就绪态。就绪表如下图所示。从图中可以看到,由于每个任务的就绪状态只占据一位,因此OSRdyTbl[]的数组元素可表达8个任务的就绪状态。也就是说,每一个

#操作系统
嵌入式实时操作系统uC/os-II(十七)-信号量集操作

创建信号量任务可以通过调用OSFlagCreate()来创建一个信号量集。该函数的原型如下:OS_FLAG_GRP *OSFlagCreate(OS_FLAGS flags, //信号的初始值INT8U *err...

嵌入式实时操作系统uC/os-II(六)-任务调度

uC/OS-II的任务调度的思想是:“近似地每时每刻让优先级最高的就绪任务处于运行状态”。调度器的定义:在多任务系统中,令CPU中止当前正在运行的任务转而去运行另一个任务的工作叫做任务切换,而按照某种规则进行任务切换的工作叫做任务的调度。uC/OS-II中,任务调度由任务调度器来完成。任务调度器的主要工作有两项:一是在任务就绪表中查找具有最高优先级别的就绪任务;二是实现任务的切换。调度器的种类任务

#嵌入式#操作系统
嵌入式实时操作系统uC/os-II(十二)-信号量及其操作

信号量是操作系统中用于任务同步与资源管理的重要机制。本文介绍了信号量的组成结构(计数器OSEventCnt和等待任务表OSEventTbl[])及其核心操作函数。当信号量计数器>0时任务可直接获取资源,否则进入等待队列;释放信号量时会优先唤醒最高优先级任务。详细解析了信号量创建(OSSemCreate)、请求(OSSemPend)、发送(OSSemPost)、删除(OSSemDel)和查询(

#操作系统
嵌入式实时操作系统uC/os-II(七)-任务创建

函数OSTaskCreate()创建任务应用程序通过调用函数OSTaskCreate()来创建任务。函数OSTaskCreate()的源码如下:INT8U OSTaskCreate(void (* task)(void *pd),//指向任务的指针void *pdata,...

#嵌入式#操作系统
嵌入式C语言-指针函数、函数指针、回调函数如何分析

本篇文章对指针函数、函数指针以及回调函数作详细的说明。函数指针和回调函数经常在程序编写中使用。指针函数返回指针值的函数称为指针函数。具体是指函数的返回值的类型是指针。定义指针函数的一般形式如下:int* pFunction(int para1, int para2)函数指针函数指针是指向函数的指针变量。简明一点说就是:“函数指针”本身首先应是指针变量,只不过该指针变量指向的是函数。好比用一个指针指

文章图片
#c++#开发语言
    共 26 条
  • 1
  • 2
  • 3
  • 请选择