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

单片机控制LED请问延时除了累减嵌套循环,还有什么好方法没?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-2-10 10:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

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

x
我想做个点亮led灯1秒,暗10秒,循环10次程序停止,网上找了一些程序拼凑而成,我是新手还没入门呢,x的10次循环不知道怎么退出,延时循环一直用累减循环,会不会浪费cpu(mcu)资源、减少寿命,浪费电池电量。还有网上查的1s=1000000us,实测是255000us。​0 N- L8 j$ R; p/ @: m( A
下面的程序,x的10次循环怎么退出啊,想运行10次就让单片机休息,停止工作,怕一直工作下去累坏了,后面加了return 0程序出错,while循环还不会写。​" w+ N/ T- [0 J* }8 c' ]
% o- r: A1 }8 ?0 a6 X
#include<reg52.h>​/ ^$ N8 g# i4 c/ X' G# [8 m
8 X2 L7 F! y; E; w& O9 r& C
sbit LED0=P1^0;​% W/ k  c1 M4 c( A! L
void Delay_1s();​
# `" X7 T1 b" X& h% `7 ?void Delay_10s();​: O' p( m4 g  N3 V. ^  R' _
unsigned int i,j,k;​
6 W3 o  x( I- x. D1 ?- w% ?
' b: y8 O0 Q& `0 v: ~- A& i6 C' Dvoid delay_1s()​
$ I6 f5 `; ^4 S7 x- y0 ?: `. X! n{​, T: ~7 x4 o+ B- F8 L: b8 D
   for(i=95;i>0;i--)​
  [" G. G: }( f   for(j=26;j>0;j--)​" s: b4 m7 G) w# }
   for(k=46;k>0;k--);​
: }1 J' F: J6 o+ M" G/ r}​
. K: _% T& _! q, `! W) F8 J( p9 f& Q9 i) |
void delay_10s()​: N% @6 q% H) c7 k
{​
5 i  _* }# {9 n: e- l   unsigned int i,j,k;​
6 ?! q+ r) i- g  B( C   for(i=73;i>0;i--)​5 N8 J8 t) I$ K8 Q
   for(j=249;j>0;j--)​
0 @9 I/ e8 E6 Z7 V$ ^+ l5 f. V9 M   for(k=63;k>0;k--);​
) F: H* {$ d4 t& C0 `2 p}​
6 B) k4 j( |& O5 N
) M3 u4 R3 f6 ^( U- W. U5 r1 ~2 rvoid main (void)​
: f& A+ j# F7 q' H{​2 w1 \) z# S& S# X, ^8 Q/ A0 t
    int x;​
$ f$ x, S' B' X    for (x=1; x<=10; x++)​
, |2 T8 d2 m( t& v7 K; q% G  {​: B7 E1 o! r6 J7 i  b4 S
  LED0=0;​
6 Z/ X; v' D2 t& }  Delay_1s();​( P# ^9 e0 C* i9 i9 Z3 z& H4 k
  LED0=1;​8 V6 u! v1 K! @$ U6 e8 W
  Delay_10s();​$ c! @& A: s6 Y/ x6 V) Z/ y+ B
  }​
; Y0 m# Q1 @  d4 b
; P7 a- _- T7 W. B& E5 h2 p}
0 _% {% b/ F+ Y0 {$ K9 ~

该用户从未签到

2#
发表于 2022-2-10 11:13 | 只看该作者
定时器有空闲的话可以用定时器 不过程序麻烦点

该用户从未签到

3#
发表于 2022-2-10 13:12 | 只看该作者
想按精确时间循环10次程序停止需要使用定时器。
6 v3 ~0 U% L) L3 C1 w  }MCU是累不死的,让MCU处于休眠状态节约电池电量是可行的。9 s5 O' K9 u0 ~: v. F8 w
此类简单程序在论坛很好找。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-6-20 17:45 , Processed in 0.062500 second(s), 23 queries , Gzip On.

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

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

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