找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2342|回复: 13
收起左侧

单片机延时 为什么是循环60次,怎么实现的1s计时?

  [复制链接]
ID:1085326 发表于 2023-6-21 10:56 | 显示全部楼层 |阅读模式
谢谢大家
回复

使用道具 举报

ID:716656 发表于 2023-6-21 16:22 | 显示全部楼层
根据你用的单片机找个视频看看delay延时和定时器延时的原理
回复

使用道具 举报

ID:883242 发表于 2023-6-21 16:35 | 显示全部楼层
你完全可以改成70次100次看看结果嘛,动手实操要比凭空想象印象深刻太多了。
回复

使用道具 举报

ID:1067540 发表于 2023-6-23 14:12 | 显示全部楼层
定时器延时跟单片机主频有关
回复

使用道具 举报

ID:423768 发表于 2023-6-23 17:49 | 显示全部楼层
根据你的时钟频率来计算的一个大约的值,有可能你的单片机刚好大概就是60次左右,你也可以改成100次试下,也可以在IDE里面仿真测试一下,看下逻辑图的时间
回复

使用道具 举报

ID:123289 发表于 2023-6-24 14:04 | 显示全部楼层
延时用定时器,尽量不要用DELAY,太坑。
回复

使用道具 举报

ID:1083996 发表于 2023-6-24 14:23 | 显示全部楼层
这个得计算,然后仔细调节,不要着急,晶振,内外时钟,看看有哪些提示
回复

使用道具 举报

ID:593096 发表于 2023-6-24 15:31 | 显示全部楼层
单片机延时 为什么循环60次,怎么实现1s计时。首先要确认你用的是什么单片机,时钟频率是多少,循环60次,每次的延时是多少?实现1s计时的话可以通过定时器中断程序实现
回复

使用道具 举报

ID:1074206 发表于 2023-6-24 16:27 来自触屏版 | 显示全部楼层
用中断来定时是最稳的,因为你不知道啥时候你的函数延时会被打断
回复

使用道具 举报

ID:195496 发表于 2023-6-25 21:04 | 显示全部楼层
这个跟中断时间长短有关系,如果你的定时器设置成20ms,中断50次就是1秒。
回复

使用道具 举报

ID:77589 发表于 2023-6-26 14:18 | 显示全部楼层
delay只能是一个大概的延时,准确一点计时请用单片机定时器外设
回复

使用道具 举报

ID:486153 发表于 2023-6-26 21:10 | 显示全部楼层
可以使用定时器或者是直接变量自加,一般一个自加指令执行时间为一个机器时钟,可以认为是1us,想要多少时间自加就可以了
回复

使用道具 举报

ID:1086115 发表于 2023-6-27 09:53 | 显示全部楼层
首先要确认你用的是什么单片机,时钟频率是多少,循环60次,每次的延时是多少? 实现1s计时的话可以通过定时器中断程序实现
回复

使用道具 举报

ID:236035 发表于 2023-6-27 10:06 | 显示全部楼层
楼上都说了,我补充一下:无论是delay还是中断,写好后都要验证延时是否符合要求。
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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