找回密码
 立即注册
楼主: 杨***

STC单片机 uC/OS-II核心技术(4):关闭总中断的临界区保护方法测试

[复制链接]
  • TA的每日心情
    开心
    8 小时前
  • 签到天数: 147 天

    [LV.7]常住居民III

    39

    主题

    887

    回帖

    4126

    积分

    荣誉版主

    积分
    4126
    发表于 2023-9-21 18:38:55 | 显示全部楼层
    本帖最后由 LAOXU 于 2023-9-21 18:45 编辑


    捕获b.JPG


    捕获q.JPG




    测试2_uCOSII-STC32G-V1.zip (1.07 MB, 下载次数: 14)






    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    63

    主题

    703

    回帖

    1万

    积分

    荣誉版主

    积分
    10906
     楼主| 发表于 2023-9-21 21:45:14 | 显示全部楼层
    LAOXU 发表于 2023-9-21 18:34
    分析了一下相关程序, 使用了经典老掉牙的 PLC位操作方式, 保护 EA.

    对 uCOS-II 来说, 可能属于 非典(非标) ...

    请老杨在百忙之中, 帮忙测试一下.

    (1)我很好奇,你为什么自己不能测试?是没有设备?还是不知道怎么测试?
    (2)如果测试出来,你能判断测试结果是否正确吗?
    (3)厨师在什么情况下写个菜谱请人炒菜尝味道,自己不能炒吗?
    (4)要做科学研究,自己动手才是正道
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    8 小时前
  • 签到天数: 147 天

    [LV.7]常住居民III

    39

    主题

    887

    回帖

    4126

    积分

    荣誉版主

    积分
    4126
    发表于 2023-9-22 04:07:55 | 显示全部楼层
    我测试了, 只是初步测试, 手头没有逻辑仪, 只是观察运行结果 (led亮闪), 用的是追风剑.


    111.jpeg 注: 图片为网上copy



    测试1_uCOSII-STC32G-V1.00.rar 测试, 红框 和 蓝框 内 LED 均 闪亮(表明工作工常).


    测试2_uCOSII-STC32G-V1.00.rar  测试, 红框 LED闪亮一次, 蓝框 内 LED 均 闪亮(速度加快)., 结合阅读程序, 得出结果, 任务A和任务B永远停止运行


    经我修改后的 测试2_uCOSII-STC32G-V1 , 运行结果和 测试1 相同, 红框 和 蓝框 内 LED 均 闪亮(表明工作工常).


    请老杨在百忙之中, 帮忙测试验证一下.

    点评

    (1)RTOS是一个实时运行的系统,其中的时序性很强。肉眼看效果是不能判断是否正确。 (2)你昨天的例子用的是V1.00老版本,你无论怎么改都不可能通过测试2的。 (3)如果你想涉足STC单片机RTOS,你一定要有逻辑分  详情 回复 发表于 2023-9-22 10:52
    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    8 小时前
  • 签到天数: 147 天

    [LV.7]常住居民III

    39

    主题

    887

    回帖

    4126

    积分

    荣誉版主

    积分
    4126
    发表于 2023-9-22 04:13:07 | 显示全部楼层
    看了小熊的回贴, 已帮忙验证, 谢谢 老杨.
    回复 支持 反对 送花

    使用道具 举报

    该用户从未签到

    63

    主题

    703

    回帖

    1万

    积分

    荣誉版主

    积分
    10906
     楼主| 发表于 2023-9-22 10:52:02 | 显示全部楼层
    LAOXU 发表于 2023-9-22 04:07
    我测试了, 只是初步测试, 手头没有逻辑仪, 只是观察运行结果 (led亮闪), 用的是追风剑.

    (1)RTOS是一个实时运行的系统,其中的时序性很强。肉眼看效果是不能判断是否正确。

    (2)你昨天的例子用的是V1.00老版本,你无论怎么改都不可能通过测试2的。
    (3)如果你想涉足STC单片机RTOS,你一定要有逻辑分析仪。我一般用下面这个
    https://item.taobao.com/item.htm?spm=a1z09.2.0.0.30f32e8ducmC4q&id=571709378125&_u=mmk6lc18401

    25元钱,24MHz的采样率,够了
    (4)对于开源的RTOS移植版的讨论和交流方式,我的理解是:
    1)先有一个移植版(比如熊仔的,然后你有了一个新方法(比如你的方法3),那么你就把你新方法加上去(就像你上传的你的程序)形成一个新的移植版本。但是你的程序必须命名为新的名称(比如LX-UCOSII-V1.01)发布,不能够直接以熊仔的版本发布,当然其中就像你已经注明的你在哪里进行了修改和来源说明。
    2)采用这样规矩的目的是,如果你修改了,你的修改未必正确,即使正确,也未必符合来源版本作者的本意。当原移植者同意你对他的修改,那么他会采纳你的修改,注明修改的来源是你,形成他自己的新的移植版本。这样就保证了每个贡献者对自己作品的命名和修改权利。
    3)如果原移植者不同意,那么事实上你的版本就形成了一个新的移植分支,你自己对你自己的分支负责任。
    (5)其实昨天你的程序对于测试2是错误的,所以如果不了解情况的网友下载验证后,会觉得已经成功的熊仔怎么又推出个失败的版本了,由此产生误解。如果你使用你的LOGO,则不会产生误解和方便网友追踪溯源。
    (6)欢迎你加入到STC单片机RTOS的世界来。对于具体的uC/OS-II移植版,临界区保护方法不需要原来的和历史的,只需要一种就够,也可使用方法0使其成为空的。所以你也可以在熊仔某个版本的基础上,去掉已有的所有临界区保护方法,只留一个你自己的方法5(不要再用方法3名称,以免产生误解),就形成了一个你自己的移植版。


    回复 支持 反对 送花

    使用道具 举报

  • TA的每日心情
    开心
    8 小时前
  • 签到天数: 147 天

    [LV.7]常住居民III

    39

    主题

    887

    回帖

    4126

    积分

    荣誉版主

    积分
    4126
    发表于 2023-9-22 12:26:06 | 显示全部楼层
    谢谢老杨.
    回复 送花

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

    GMT+8, 2024-5-18 16:32 , Processed in 0.069112 second(s), 50 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

    快速回复 返回顶部 返回列表