背景: 我正在使用uCOS II 、 Keil uVision 5和带有TM4C123GH6PM MCU 的 TIVA 板。 我得到了一个 uCOS II 的端口以及一个空白项目文件来开始。 我编写了所需的任务并且程序正常工作,但现在我对实现中断感兴趣并试图了解它们如何与 RTOS 共存。 这一切 ...
背景: 我正在使用uCOS II 、 Keil uVision 5和带有TM4C123GH6PM MCU 的 TIVA 板。 我得到了一个 uCOS II 的端口以及一个空白项目文件来开始。 我编写了所需的任务并且程序正常工作,但现在我对实现中断感兴趣并试图了解它们如何与 RTOS 共存。 这一切 ...
所以目前我正在研究将纯C++17项目用于嵌入式设备( Cortex m4 )的可能性。 但是基于它是嵌入式设备的事实,我们有端口并使用RTOS,例如 FreeRTOS 或 uc-OS ,我非常喜欢使用std::thread (因此,如果需要,我们可以轻松交换RTOS ) . 有没有办法覆盖C++ 中 ...
设备:F28335 contorolCRAD和实验者套件-Delfino F28335。 移植了ucos-II。 我使用OSTimeGet()函数获取OSTime。 但是task1每次都返回“ 0”,而task2不起作用。 问题是什么? 如何解决这个问题? ...
最近,我正在阅读UCOS-III的源代码,并且对UCOS-III在Cortex-M3平台上运行时的任务切换有疑问。 通过直接写入寄存器SCB_ICSR(中断控制和状态寄存器),它将PendSV用于任务切换,但是访问寄存器SCB_ICSR需要特权操作级别。 这意味着处理器以特权操作级别在进程模 ...
这很奇怪。 在OSTimeDly(10)中,存在OS_Enter_CRITICAL()和OS_Exit_Critical(),并且当代码运行到OS_Exit_Critical()中时,将发生HardFault。 但是,如果我将代码更改为此: 还有OS_ENTER_CRIT ...
我正在开发一个在uCOS-III下使用的C库。 CPU是ARM Cortex M4 SAM4C。 在库中,我要使用第三方产品X,在此第三方产品X的特定名称与此无关。 X的源代码完全可用,并且可以毫无问题地进行编译。 在X内部,使用calloc()和free()执行了许多内存分配。 ...
我想比较两个RTOS(例如-> Keil-RTX,Ucos-iii和freertos),但是我不知道我需要比较哪些参数,例如内存占用量,认证等。 我们在哪些方面比较RTOS? ...
我们在ucos中使用arm9。 OS_CPU_ARM_ExceptHndlr_BrkTask通用移植功能的最后一个仪器在我们的系统中具有奇怪的行为。 假设SP为0x10002000,以下15个DWORD(将被复制到R0-R12,LR,PC)的值从1到15。我们发现PC(R15)已更改并 ...
我有几个RTOS(pSOS,VxWorks,QNX)的经验,但是我是MicroC / OS II(ucos ii)的新手。 我发现ucos ii的独特之处在于它没有为任务分配唯一的ID,而是使用优先级来唯一地标识任务,并且所有任务必须具有不同的优先级,因此不支持循环调度。 我很明白。 这是 ...
我想使用MicroC OS-II并使用C ++建立一个新的嵌入式项目。 当我想使用new运算符创建一个类的实例时,我的处理器会遇到一个异常,该异常似乎来自new运算符中失败的malloc调用。 这是一个失败的示例: testC是具有整数成员变量的某个类。 顺便说一句,我正在使用 ...
我在Arm Cortex M4下使用uCOS-III,遇到如下问题: 如果 OSSemPend() 在同一个任务中执行了两次),比如 (不发出 OSSemPost())它不会在第二次调用时遇到超时,而是无限阻塞。 我尽我所能,但仍然找不到问题......任何人都可以向我解释这里发生了什么吗? 非常 ...
我无法获得在运行uC / OS-III的NXP LPC1857上平稳运行的LED的PWM信号。 仅当我禁用以1ms运行的操作系统操纵杆时,才会定期发生闪烁。 我已经为计时器设置了4个匹配寄存器,每种颜色对应一个寄存器(红色,绿色,蓝色),整个周期对应一个寄存器。 前三个匹配输出清除每种 ...
我对信号量有问题,似乎有时在ISR中调用的SemPost无效。 我的应用程序基于Micrimum UCOS III,目标平台基于Microsemi Smartfusion2 SoC(Cortex-M3)。 我的应用程序由两个任务(A和B)组成,但是在出现问题时只有一个处于活动状态(另一个 ...
我只想执行一次代码。 我使用了基于全局布尔类型的解决方案。 我的问题是最好的解决方案吗? 备注:我使用ucos-II。 ...
对于我的下一个嵌入式系统项目,我想采用单元测试。 从技术上讲,它可能不是测试驱动的开发,但我至少希望预先进行单元测试并进行全面的单元测试。 我正在使用 IAR EWARM 工具链。 我正在考虑使用 cmocka、unity 或 cunit。 我正在学习使用 µC/OS-III 作为 RTOS。 ...
我正在为运行uCOS-ii的嵌入式系统编写程序。 我需要原子地写(和读)两个整数(值和时间戳应该相互同步)。 最简单的方法是用临界区来包装两个值的写入,从而禁用任何中断或任务切换。 但是我被告知这是非常激进的,并且通过禁用中断很容易弄乱其他实时内容。 但是写两个整数是一个很小的操作, ...
基本上,当我的系统运行时,我希望用户将一些新代码通过ftp传送到SD卡,并动态加载新功能并创建要在系统中运行的任务。 这对于Linux是正常的。 例如,我可以编译一个SO,然后动态加载到内存中。 在uC / OS II或III中如何做? ...
我一直在从事一些RTOS MicroC项目,每当实现某些功能时,它在任务之外都可以正常工作,但是每当我放入任务时,它就无能为力。 我知道我可能无法获得答案,但是任何预先开始寻找的提示都会有很大帮助,谢谢。 ...
我是RTOS新手,正在为汽车创建一个简单的实时系统 我想知道是否有可能在另一个任务中创建一个任务。 我尝试通过以下方法执行此操作,但它不起作用。 当我调试该代码时,它挂在xTaskCreate上而不执行新任务,我在手册和互联网上搜索了有关此内容的信息,但没有找到任何内容。 ...
嗨,我一直在为我的FPGA开发游戏。 我在这里使用消息队列,我的问题是,当我想从数组中打印值时,即使将不同的值放入数组中,也总是得到相同的结果。 可能是我将它们打印错误了,或者在任务运行时它们被重置了。 } 我想知道的部分是: 上面的代码应打印在打开LED时设置的值。 ...