找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1063|回复: 9
收起左侧

怎么让C语言void main()里的程序同步进行?

[复制链接]
ID:923529 发表于 2022-5-24 08:53 | 显示全部楼层 |阅读模式
回复

使用道具 举报

ID:161164 发表于 2022-5-24 10:35 | 显示全部楼层
代码被吞了,重发吧
回复

使用道具 举报

ID:514317 发表于 2022-5-24 12:00 | 显示全部楼层
就没有任务程序同步进行的概念    只是一个任务完成后执行另一个任务罢了  
最多就是可以使用实时操作系统    任务程序可以打断保存现场运行其他任务后再恢复这个任务    表面上看是在同时运行    其实是任务分时和中断运行罢了   
回复

使用道具 举报

ID:230742 发表于 2022-5-24 18:02 | 显示全部楼层
有一种叫做实时多任务操作系统的。叫RTX51。256K内存,8K存储的89C52就能运行。可以研究一下。
也可以不用搞得那么复杂,一般的开发板带的程序都是多功能同时工作的。数码管,1602,12864OLED,超声波,时钟,按键,流水灯,8*8点阵。都是同时运行的。也没用实时系统。也运行得很好。

C语言真是太强大了。
回复

使用道具 举报

ID:824490 发表于 2022-5-25 15:14 | 显示全部楼层
没有哪个单片机能“同时”进行多项任务!都是分时进行的。
看上去又亮灯、又显示的,基本上都是“锁存”和“扫描”或“轮询”。
回复

使用道具 举报

ID:1029775 发表于 2022-5-26 00:36 来自手机 | 显示全部楼层
单片机是一种很原始的系统,又没有多个cpu核心。只能用中断,伪装成同时进行的样子。
回复

使用道具 举报

ID:908826 发表于 2022-5-26 07:53 | 显示全部楼层
单核处理器严格意义上就没有多线程这一说,能在mcu上跑的rtos这种实时操作操作系统也只是通过快速的切换线程,保存恢复上下文来模拟的伪多线程。
回复

使用道具 举报

ID:339654 发表于 2022-5-26 08:35 | 显示全部楼层
时间片轮转运行,模拟同时运行
回复

使用道具 举报

ID:93096 发表于 2022-5-26 08:46 | 显示全部楼层
单片机的任务机制就是单步运行的,轮询进程的,就好比当你仿真进入到仿真界面打断点的时候,也是单步运行进行调试的,这样才能找到问题,希望对你有帮助
回复

使用道具 举报

ID:923529 发表于 2022-5-26 12:55 | 显示全部楼层
weijoyer 发表于 2022-5-26 08:35
时间片轮转运行,模拟同时运行

还没学到这方面的知识
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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