找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1719|回复: 5
收起左侧

关于stc15w204s单片机延时程序执行速度

[复制链接]
ID:978416 发表于 2022-12-6 08:44 | 显示全部楼层 |阅读模式
我写了个延时1ms的小灯亮灭程序,用89c51正常但是用204s就闪烁的特别快,204s的晶振也选的11.0592,想问一下除了晶振还有什么其他的影响了吗。
回复

使用道具 举报

ID:883242 发表于 2022-12-6 16:12 | 显示全部楼层
89C51是12周期执行1条指令,你用的单片机是多少周期的?
回复

使用道具 举报

ID:857072 发表于 2022-12-6 18:01 来自触屏版 | 显示全部楼层
指令集不一样了。STC15已经是1T的指令了。本来运行速度就快些
回复

使用道具 举报

ID:1034262 发表于 2022-12-6 21:56 | 显示全部楼层
15系列的比89系列的快太多了,时间应该只有1/6~1/10之间。
回复

使用道具 举报

ID:123289 发表于 2022-12-7 16:04 | 显示全部楼层
用中断延时,是不会错的。
用DELAY延时,是会出问题的,问题出在你没有读通两都的手册。
回复

使用道具 举报

ID:910171 发表于 2025-1-31 19:26 | 显示全部楼层
89C51是12T单片机,就是一个机器周期等于12个时钟周期;而15W204S是1T的单片机,默认状态下一个机器周期等于一个时钟周期。也就是说,哪怕时钟频率相同,执行相同的操作,1T单片机所需的时间是12T单片机的十二分之一,就是它更快。所以同样的程序语句,如果用空循环延时的话,1T单片机就比12T单片机快很多,延时的时间短很多。
因此,工程应用中,一般很少使用空循环延时,多数都用定时器延时,通过合理设置定时器的初值来实现精确延时。而定时器初值的设置,也是要跟具体所用的单片机型号相对应的,换来单片机,需要根据实际情况调整,才能保证达到预期延时时间。
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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