keil5自帶uc os ii的乙個問題

2021-07-10 10:33:27 字數 695 閱讀 4747

keil5推出了software packs, 其中uc/os-ii有個小bug。

在os_cpu_c.c裡有乙個棧初始化函式

os_stk *ostaskstkinit (void (*task)(void *p_arg), void *p_arg, os_stk *ptos, int16u opt)

這個函式是編譯不過去的,提示p_stk沒有定義,其實這個函式裡不需要這行**,把這行注釋掉就可以。我猜測,著行**是開發人員不小心留下的,因為在uc/os-iii裡該函式的實現是這樣的

cpu_stk  *ostaskstkinit (os_task_ptr    p_task,

void *p_arg,

cpu_stk *p_stk_base,

cpu_stk *p_stk_limit,

cpu_stk_size stk_size,

os_opt opt)

剛好可以發現,uc/os-iii缺少的**就是在uc/os-ii裡多出來的**。

p_stk      =(os_stk *)((os_stk)(p_stk) & 0xfffffff8u);
這行**(作用是對齊)應該是屬於uc/os-iii的。

keil5錯誤集錦

user api led.h 4 error 11 d unrecognized preprocessing directive 預編譯出錯。可能是字母打錯了 fwlib src stm32f10x rcc.c 273 warning 223 d function assert param decl...

keil5除錯常見的問題

唉 真無語 我們總想著跑快點卻忘了 自己走路還不是很穩 在學stm32時候 總是會出現各種問題,這麼多 你不可能 心算就能算出來 出了問題 所以 會除錯就顯得特別的重要,但是我一開沒去研究除錯 導致遇到問題時 只能乾瞪眼 一點點對比 猜測 這樣做實在是浪費時間 所以這次寫一篇文章 記錄下自己的學習之...

Keil5中堆疊相關知識

網路上蒐集整理的資料,非原創!keil編譯資訊中的 program size code xx ro data xx rw data xx zi data xx 其中 code 儲存到flash rom 中的程式 文字段 ro data read only 唯讀常量的大小,如const型。資料段 rw...