问题标签 [ucos]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
embedded - 如何在arm9上安装uCos [ mini2440 ]
我对嵌入式编程非常陌生,我的第一个项目是在mini2440 [arm9] 上安装 uCos。有没有像我这样的初学者在 arm9 上安装 uCos 的教程?
先谢谢 :)
c - 谁能告诉我它是如何得到寄存器DS的值的
在uc/os的源码中,看不懂下面的代码。
* stk = _DS;
它的注释是获取 DS 的当前值。
你能告诉我为什么吗?
embedded - Context switching in uC/OS (embedded systems)
I'd like to know if its possible to have an interrupt force the scheduler to switch context to a specific task in RTOS. I'm working with microCOS OS
Here is the task which performs the keyscan and posts the character into a mailbox, I need to add some more features to this code like debounce and auto repeat but I need to sort out a trigger mechanism to get it working properly.
I am not sure how to use polling or interrupts to accomplish this
unit-testing - uC/OS 的单元测试 - II
我是一名研究生,我正在尝试为高级测试课程提出一个项目。
由于我是一名嵌入式专家,我确实想测试一些与嵌入式系统相关的具有挑战性的东西。
uC/OS-II 是一款非常不错的嵌入式系统开源轻量级操作系统。所以我想为我的课程项目提出测试。
但是我不知道测试uC/OS的可行性。可行吗?我现在正在使用 Blackfin 和 SHARC(来自 Analog Devices),它们与 uC/OS 兼容(在 uC/OS 网站上说)。在测试工具方面,我认为 CUnit 可能会起作用。此外,我们还有一个名为 EmbeddedUnit 的单元测试工具,它在 VDSP(ADI 处理器的开发环境)上运行。我对 uC/OS 没有经验,但我的理解是我们应该编译它,然后将 .obj 文件和头文件包含到项目中,然后我们可以在 uC/OS 中使用和测试这些功能。
我对吗?
c - Micriμm μC/OS-III RTOS 中的分配和释放
我们使用 Micrium 的 μC/OS-III RTOS 和 Renesas 的 RX62N。
我们建立了一个系统,我们必须动态分配和释放数据。我们发现函数malloc()和free()不适用于 RTOS。然而,RTOS 对此有一个自定义功能;Mem_HeapAlloc ()函数。这个函数分配了一些 RTOS 的内存'heap'。问题是它没有自由功能,可能是因为一切都进入了堆池。
在 RTOS 中,也可以创建一个池。这个池的问题是所有包含的块都需要相同的大小。由于我们分配和释放不同的大小,这对我们来说不是一个好的解决方案。
我们在这里找到了描述内存 RTOS 功能的文档, 第 4 章描述了这些功能。
有人知道我们如何解决这个问题吗?
我们已经拥有的一些解决方案
- 使所有块大小与最大分配相同。 我们有很多开销,因为最小和最大的分配差别很大。
- 不要做免费的。 这是没有办法的,会出现内存泄漏。
希望有人可以帮助我们。如果有不清楚的地方,请问我
提前致谢
operating-system - ISR期间不应该发生uCOS的Task删除的原因
我正在修改 uCos-ii 的一些功能(主要是调度)。
我发现 OSTaskDel 函数在被 ISR 调用时什么也不做。
虽然我了解了操作系统的一些基本功能,但我真的不明白为什么要禁止这样做。
它所做的只是从就绪列表中退出并释放获取的资源,如 TCB 或信号量......
在处理中断时是否有任何理由禁止他们?
c - 睡觉的理发师 OSSEMPEND()
我正在尝试用 c 进行睡眠理发练习,但我不知道出了什么问题。有人请用外行术语向我解释我需要做什么来解决它。我不断收到此消息:
app_main.c,第 72 行:错误:void 值没有被忽略,因为它应该是 app_main.c,第 73 行:错误:void 值没有被忽略,因为它应该是
那就是问题所在。下面你可以看到整个代码。
mutex - 信号量优先级反转
为什么 RTOS 没有任何实现来防止信号量的优先级反转,即使它存在于互斥体中。
信号量不需要防止优先级倒置吗?
同样的情况发生在 uC/OS 和 GreenHills RTOS 上。
提前致谢。
embedded - 什么是任务的堆栈,它的用途是什么?- uC/OS-II
所以我正在阅读 MicroC/OS-II 的书,但是在任务堆栈部分我找不到确切的堆栈是什么,最重要的是 - 它的用途是什么。我知道这不是一件漫长而困难的事情,但我有点'必须理解它。这本书只说如何设置堆栈大小和其他一些类似的东西。那么,有人可以用简短的语言解释一下 uC/OS-II 中的任务堆栈是什么以及它的用途是什么?
c - 如何使我的数据类型独立于c中的编译器
我正在研究 uC/OS 并阅读了这篇文章:
由于不同的微处理器有不同的字长,μC/OS-II 的移植包括一系列类型定义,保证了可移植性。具体来说,μC/OS-II 的代码从不使用 C 的 short、int 和 long 数据类型,因为它们本质上是非便携式。相反,我定义了可移植且直观的整数数据类型,如清单 1.1 所示。此外,为方便起见,即使 μC/OS-II 不使用浮点,我也包含了浮点数据类型。以下为清单1.1
我的问题是:
1-作者所说的字长是什么意思(我的问题正文中的第一个粗体字)?!
2- 为什么 short int 和 long 数据类型本质上是不可移植的。
3- Istypedef
是一个微处理器指令,如果它是它的功能是什么?!
4-我可以写typedef unsigned char (anything)
而不是typedef unsigned char INT8U;
5-为什么作者编码typedef unsigned char INT8U;
然后#define UBYTE INT8U
我不能直接使用typedef unsigned char UBYTE;
6-其中一个是双重用途,typedef unsigned char
另一个是typedef unsigned char INT8U;
他typedef unsigned char BOOLEAN;
为什么这样做?!