找回密码
 立即注册
楼主: CosyOS

全局不关总中断的 RTOS,CosyOS-III-V1.2.0, 送 擎天柱-AI8051U转89C52核心板

 火... [复制链接]
  • 打卡等级:以坛为家II
  • 打卡总天数:435
  • 最近打卡:2025-05-04 20:54:20

5

主题

1127

回帖

4275

积分

荣誉版主

积分
4275
发表于 2024-5-25 07:18:06 | 显示全部楼层
本帖最后由 CosyOS 于 2024-5-25 07:47 编辑

关于 CosyOS-II 定时中断定时查询 的一些技术细节,确实是难以用语言来准确描述的。
但之所以会如此设计,绝非凭空想象,完全是从实际应用中得来的。
CosyOS-任务管理器示例程序中的串口多发送及分包的实现等,
均达到了相应的目的需求,而且操作简单。



再进行一次精炼的总结
定时中断:系统启动后,只有当用户进行定时操作后,定时器才能计数,当定时器溢出时 “执行”
定时查询:系统启动后,已经开始查询用户定义的事件了(在每个系统滴答周期),为真就 “执行”,否则会继续查询(在每个系统滴答周期)。

无论 定时中断 还是 定时查询,“执行” 的同时
1、如果已经开启自动重装载功能,就重装载定时器,自动开始下一轮计数;
2、否则就 “完全终止” 定时器,不能再 “计数”、也不能再 “执行”。

“执行” 是指 调用定时中断或查询钩子恢复定时中断或查询任务



实际应用中最典型的示例  包括:
1、CosyOS-任务管理器,为定时查询任务,并开启自动重装载;
2、事件标志组示例程序中,串口发送任务,为定时查询任务;
3、事件标志组示例程序中,串口接收任务,为定时中断任务;
以上三个示例是最为典型的,望大家能够 细心领悟、反复揣摩,定能掌握好 CosyOS 的 定时中断定时查询 功能。




1 喜欢他/她就送朵鲜花吧,赠人玫瑰,手有余香!
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:57
  • 最近打卡:2025-05-04 08:52:05

718

主题

1万

回帖

1万

积分

管理员

积分
15668
发表于 2024-5-25 13:14:59 | 显示全部楼层
全局不关总中断的 RTOS / CosyOS-II for STC MCU !
国产实时操作系统RTOS视频教学,在顶楼下载下来学习 !
===保证认真学的【免费+包邮 送】 STC高性能实验箱
        要保证认真跟帖发表学习心得

截图202405251315257859.jpg
截图202405251316308333.jpg


回复 支持 1 反对 0

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:13
  • 最近打卡:2025-03-28 10:25:35

4

主题

74

回帖

548

积分

高级会员

积分
548
发表于 2024-5-25 17:11:56 | 显示全部楼层
神*** 发表于 2024-5-25 13:14
全局不关总中断的 RTOS / CosyOS-II for STC MCU !
国产实时操作系统RTOS视频教学,在顶楼下载下来学习 ! ...

我看可以送一个给我,不仅认真学习,还帮忙测试,还发现了一个DMA 中断不触发的问题,是不是值得拥有?

点评

我看可以,您直接联系客服  详情 回复 发表于 2024-5-25 17:45
希望这个世界让我装一次B
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:57
  • 最近打卡:2025-05-04 08:52:05

718

主题

1万

回帖

1万

积分

管理员

积分
15668
发表于 2024-5-25 17:45:00 | 显示全部楼层
Yang.*** 发表于 2024-5-25 17:11
我看可以送一个给我,不仅认真学习,还帮忙测试,还发现了一个DMA 中断不触发的问题,是不是值得拥有? ...

我看可以,您直接联系客服

点评

您这说的联系客服, 怎么联系?  发表于 2024-5-25 20:25
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:57
  • 最近打卡:2025-05-04 08:52:05

718

主题

1万

回帖

1万

积分

管理员

积分
15668
发表于 2024-5-25 20:41:35 | 显示全部楼层
【免费+包邮】 送/申样/采购 可上班时间加 如下您对应地区的客服 QQ微信联系
加STC华南区客服刘经理QQ: 3398500488 ;微信:18106296592  要求 【免费+包邮】 送, 还免费教仿真  
加STC华南区客服曹经理QQ:1933892258 ;微信:18106296595 要求 【免费+包邮】 送, 还免费教仿真
加STC华东区客服聂经理QQ:2593903262;微信:18106296598  要求 【免费+包邮】 送, 还免费教仿真
加STC西北区客服孙经理QQ: 1347154513 ;微信:18106296593  要求 【免费+包邮】 送, 还免费教仿真
加STC华北区客服石经理QQ: 1638975601 ;微信:19952583876  要求 【免费+包邮】 送, 还免费教仿真
加STC华中区客服唐经理QQ:2571301708 ;微信:18106296589 要求 【免费+包邮】 送, 还免费教仿真
加STC东北区客服张经理QQ:3141888640 ;微信:19952583265   要求 【免费+包邮】 送, 还免费教仿真
加STC西南区客服张经理QQ:3141888640 ;微信:19952583265   要求 【免费+包邮】 送, 还免费教仿真
工作时间:  8:30-12:00,13:00-17:30(周一 到 周五, 法定节假日除外)

【免费+包邮】 送/申样/采购传统电话热线:0513-55012928、0513-55012929、0513-55012966
工作时间:  8:30-12:00,13:00-17:30(周一 到 周五, 法定节假日除外)


以后技术咨询直接到 STC专业的技术支持论坛 www.STCAIMCU.com 进行技术支持

不愿意提供详细联系信息申请【免费+包邮送】的芯片和仿真脱机烧录设备的:
===可直接微信收索:STCMCU; 即可进入 【STCMCU微信小商城】购买,也很方便




回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:2
  • 最近打卡:2024-07-18 11:10:17

4

主题

15

回帖

128

积分

注册会员

积分
128
发表于 2024-5-26 09:30:52 | 显示全部楼层
Cos*** 发表于 2024-5-24 17:54
当时,这个示例程序是针对 STC8H8K64U 的,换成 STC8H1K08 后,一些配置应做出必要调整。
主要看一下 mcu ...

的确,在自己的STC8H8K64U板子上试验是OK的,我再试验下STC8H1K08。没有办法,以前有些项目由于成本的考虑,用的是这个STC8H1K08。多谢楼主解答!

点评

可能是flash溢出了,注意一下  发表于 2024-5-26 09:52
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:305
  • 最近打卡:2025-05-04 12:46:29

0

主题

24

回帖

407

积分

中级会员

积分
407
发表于 2024-5-26 21:59:59 | 显示全部楼层
创建中断定时钩子函数中,钩子名称有什么作用?

点评

没有任何特别的作用,只是说必须得有个名字而已。  详情 回复 发表于 2024-5-27 01:43
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:435
  • 最近打卡:2025-05-04 20:54:20

5

主题

1127

回帖

4275

积分

荣誉版主

积分
4275
发表于 2024-5-27 01:43:34 | 显示全部楼层
stc-x*** 发表于 2024-5-26 21:59
创建中断定时钩子函数中,钩子名称有什么作用?

没有任何特别的作用,只是说必须得有个名字而已。

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:13
  • 最近打卡:2025-03-28 10:25:35

4

主题

74

回帖

548

积分

高级会员

积分
548
发表于 2024-5-30 09:55:00 | 显示全部楼层
神*** 发表于 2024-5-25 17:45
我看可以,您直接联系客服

已经收到试验箱,真的有个箱子,挺大,还有个BNC接口,有趣

懒得上图了,总之还挺好
希望这个世界让我装一次B
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:13
  • 最近打卡:2025-03-28 10:25:35

4

主题

74

回帖

548

积分

高级会员

积分
548
发表于 2024-5-31 09:07:13 | 显示全部楼层
发现一个小问题,提醒一下大家

本来我需要2000毫秒采集一次数据,到时考虑到各种误差,我就这么写了一下
uDelay_ms(2000 + 100);
然后用逻辑分析仪看了一下间隔大概2000ms,,我就怀疑是100太小了,我就改成
uDelay_ms(2000 + 500);
然后又用逻辑分析仪看了一下,还是2000ms,我就纳闷了
就去看了一下 uDelay_ms 宏实现,好吧
是我错了,是我习惯不好,能力不强,
实际上应该这么写

uDelay_ms((2000 + 100));

点评

这个问题很好,我会在下一版优化一下,以后就不用再多写一个()了。  详情 回复 发表于 2024-5-31 14:03
希望这个世界让我装一次B
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-5-5 09:07 , Processed in 0.149965 second(s), 125 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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