- 打卡等级:初来乍到
- 打卡总天数:5
- 最近打卡:2025-04-30 07:46:22
荣誉版主
- 积分
- 2319
|
发表于 2023-9-22 20:03:07
|
显示全部楼层
"测试2_uCOSII-STC32G-V1.02.zip"去看了一这个代码, 有些乱, goto到处飞, 光是这个编程习惯就有些不敢恭维,想到作者可能和惊天大秘秘2有关, 没坚持下去. 不管它了吧. 对于惊天大秘秘2那类帖, 我没耐心看.
对于你自己这个V1.02的代码, 我看了一下, 我来注释一下,你看对不对? "先申明, 我现在没有仿真机, 有些地方也没看懂, 你还开了TIM3, 不是最简单的程序范本, 有好些地方我都没去看, 所以我以下的注解可能是错的."
任务A:
142: EA= 0; //关中断了,我要演示临界区切换了, 大家注意!
143: OSCtxSw(); //我真要的切换了, 我调用切换函数了! (然而此时, 最高优先级任务仍是任务A, 切换了个寂寞, 切回了自己! 哈哈)
144: OSTimeDly(OS_TICKS_PER_SEC / 2); //我要进阻塞了! 此时EA是关的! 临界区不可阻塞? 我开玩笑的! 别人不可以, 但我可以! 这次真的切走了, 切到了任务B.
接下来, 在任务B 和C之间, 来回解锁, 看起来就好像程序还是活的一样, (其实还是有一个地方没看懂的, EA在什么地方你又打开了呢, B和C任务是怎么活的?)
|
|