找回密码
 注册
关于网站域名变更的通知
查看: 600|回复: 5
打印 上一主题 下一主题

不用延时 实现 LED等 闪烁

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-11-4 13:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
高手们 总说  不用延时函数 或少用延时函数,想了半天,能不能这样搞,掉去while循环,放在主程 序里跟着一遍一遍跑,是不是就可以实现,加外还有没有别的思路?void main()5 Q( Q9 @7 I% Q/ s0 f
                {) O3 _1 R- p7 f" }- [
                         k6 z" _; I/ m; f4 B
                        while(1). {* q& d# a  L4 Q" s5 B$ ^. r
                                {; s: I5 r! t0 J' G9 ?9 \8 ?
                                          vv++;       ; _+ s' w- e! B# X" H/ N. r/ S
                                          if(vv<20000)   0 Q- ]# a4 M. Q! E6 o2 U
                                                        {4 O6 P& Z  W2 a6 }9 |: n6 s
                                                                P0=0xff;   //供阳极LED,P0口高电压全灭
. d# `9 F5 B4 Y  K; G3 f                                                        }
/ ]+ }, R- A+ l. ?: ~! k                                        if(vv>20001)" S" R1 y) H/ r* c; h( J) r! y
                                                        {  @/ Z7 `0 A6 S  }# Q& \
                                                                P0=0x00;   //P0口低电压全亮
1 D4 ~3 i7 P  t# w/ @                                                      
  t. K$ O$ d, c, z: D7 d                                                                if(vv==40000)
5 ?- f& r3 i6 K& K                                                                        {0 [2 l1 V8 u; E4 \' T, l4 C
                                                                                vv=0;
+ {. Q. \- x' T/ ]                                                                        }0 T- [" ?: I1 q; F* d- |1 i" D
                              
4 ~6 I+ r# y* G5 D                                }
( I% m2 n8 o  \1 w4 f/ C7 C

该用户从未签到

2#
发表于 2020-11-4 14:26 | 只看该作者
不用延时就用计数啊,程序跑一趟记一次数,判断是否到达设定值
  • TA的每日心情
    开心
    2023-5-15 15:14
  • 签到天数: 1 天

    [LV.1]初来乍到

    3#
    发表于 2020-11-4 15:22 | 只看该作者
    你贴出来的程序和延时函数无关啊

    该用户从未签到

    4#
    发表于 2020-11-4 16:41 | 只看该作者
    去掉while(1)好像程序只跑一次吧。你可以开个看门狗,然后不喂狗,自动重启。
  • TA的每日心情
    无聊
    2024-1-31 15:19
  • 签到天数: 141 天

    [LV.7]常住居民III

    5#
    发表于 2020-11-5 11:21 | 只看该作者
    本帖最后由 gyb0912 于 2020-11-5 11:22 编辑
    : z: P0 r3 E) u9 f+ A, l. W: U# Y! b' ]" T7 B  ?8 N
    定时器中断多方便。或者使用RTOS,建个LED任务随便延时去

    该用户从未签到

    6#
    发表于 2021-1-13 21:07 | 只看该作者
    感谢分享66666
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-8-18 20:39 , Processed in 0.125000 second(s), 23 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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