EDN首页   博客首页

日志档案

发表于 2008-9-26 23:24:51

6

标签: C51  延时  Delayms  keil  

51单片机C51微秒级(ms)精确延时

51单片机C51微秒级(ms)精确延时

 

如下程序能实现ms微秒级的比较精确的延时

 

 

void Delayms(unsigned int n)

{

    unsigned int i,j;

    for(j=n;j>0;j--)

    for(i=112;i>0;i--);

}

 

 

keil可以看出这个延时的时间,我们先延时1msDelayms1))。

进入Delayms前,sec=0.00042209s

 

 

 

 

 

延时后,sec=0.00142253s

 

 

 

 

 

 

可以知道Delayms1)实际延时0.00142253s0.00042209s=0.00100044s1ms

 

同样如果想延时15ms的话,用Delayms15),实际延时0.01480903s15ms,延时还是挺精确的。

系统分类: 单片机   |   用户分类: MCS51   |   来源: 原创   |   【推荐给朋友】   |   【添加到收藏夹】

    阅读(2784)    回复(26)  

投一票您将和博主都有获奖机会!

  • klyzh2003

    2008-9-28 9:29:32

  • ednzh

    2008-9-28 10:46:11

    8错

  • pearman

    2008-9-28 11:29:07

    反正就凑数吧 你这个晶振也不说

  • bluehacker

    2008-9-29 12:34:00

    无什么意义,没有通用性,晶振多大也不知道。要想精确延时还是用定时器来做方便。

  • chinajiagege

    2008-9-29 13:32:01

    反正就凑数吧 精确的定时还是专用硬件来实现

  • Alexi2008

    2008-9-29 19:36:12

    切! 我给个软件你(在我的空间里面) 我自己写的! 绝对比你的好 呵呵~

  • Alexi2008

    2008-9-29 19:36:36

    切! 我给个软件你(在我的空间里面) 我自己写的! 绝对比你的好 呵呵~

  • klyzh2003

    2008-9-30 9:47:09

    这种探究精神值得鼓励的!

  • wangxing

    2008-10-1 0:44:21

    不错的!!!

  • zrjbw

    2008-10-1 22:58:18

    好,值得学习

  • canjany

    2008-10-1 23:29:37

    为什么不用汇编编写延时? 为什么不用定时器延时? 也许这些要比c51的更精准.

  • canjany

    2008-10-1 23:29:55

    为什么不用汇编编写延时? 为什么不用定时器延时? 也许这些要比c51的更精准.

  • geszh

    2008-10-3 21:56:09

    晶振的多少啊??

  • jrh00102

    2008-10-5 13:23:43

    人家上面写了11.0592MHz

  • jrh00102

    2008-10-5 13:24:09

    人家上面写了11.0592MHz

  • jrh00102

    2008-10-5 13:24:29

    人家上面写了11.0592MHz

  • jrh00102

    2008-10-5 13:25:04

    人家上面写了11.0592MHz

  • jrh00102

    2008-10-5 13:26:25

    人家上面写了11.0592MHz

  • wisdom_1986

    2008-10-5 18:25:58

    这个东西要做到通用,难度比较大,其实只要知道用仿真来看延时就8错了,我很多延时程序也是这样写的,好方法!值得推荐。

  • huli184

    2008-10-7 13:18:38

    好,顶了.

  • xiaochiyou1

    2008-11-2 16:53:07

    可以

  • yaoguichag

    2008-11-2 21:25:33

    haO

  • yaoguichag

    2008-11-2 21:25:43

    haO

  • linchaolll

    2008-11-7 22:42:42

    确实挺准的,我用伟福仿了一下,是1004us

  • linchaolll

    2008-11-7 22:42:54

    确实挺准的,我用伟福仿了一下,是1004us

  • lyttp3092003

    2008-11-14 13:54:40

    不错,