智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 3533|回复: 6
打印 上一主题 下一主题

[编程类] 精确延时的书写

[复制链接]

19

主题

99

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1292
QQ
威望
375
贡献
875
兑换币
12
注册时间
2010-11-9
在线时间
21 小时
跳转到指定楼层
1#
发表于 2011-3-19 14:36:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1贡献
想用for控制精确延时,到ms级即可,是怎么算的,是根据总线频率算的吗?
void delay()   /*延时1s*/

{
  unsigned int i,j;
  for(i=16000;i>0;i--)
    for(j=2000;j>0;j--);
}
当总线频率为32M的时候延时时间是多长?

0

主题

1

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
335
威望
193
贡献
94
兑换币
4
注册时间
2011-8-27
在线时间
24 小时
2#
发表于 2012-6-30 17:44:31 | 只看该作者
总共是32000000次脉冲,跟总线周期一致。故1S。
回复

使用道具 举报

7

主题

85

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1067
威望
569
贡献
310
兑换币
299
注册时间
2012-10-29
在线时间
94 小时
3#
发表于 2012-12-7 13:34:44 | 只看该作者
chrisforbt 发表于 2012-6-30 17:44
总共是32000000次脉冲,跟总线周期一致。故1S。

可以这么算?
回复

使用道具 举报

80

主题

1045

帖子

0

精华

跨届大侠

北京龙邱智能科技有限公司

Rank: 10Rank: 10Rank: 10

积分
10332

论坛元老奖章

QQ
威望
2905
贡献
6151
兑换币
4515
注册时间
2008-6-7
在线时间
638 小时
4#
发表于 2012-12-7 23:28:30 | 只看该作者
这样貌似不妥,PE本身可以产生一个100us的延时,用汇编实现的,算是很精确了。
回复

使用道具 举报

24

主题

114

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3252
威望
990
贡献
1908
兑换币
304
注册时间
2011-8-17
在线时间
177 小时
5#
发表于 2013-3-5 11:22:07 | 只看该作者
本帖最后由 自明了然 于 2013-3-5 11:32 编辑
chiusir 发表于 2012-12-7 23:28
这样貌似不妥,PE本身可以产生一个100us的延时,用汇编实现的,算是很精确了。

void Dly_ms(int ms)
{
   int ii,jj;
   if (ms<1) ms=1;
   for(ii=0;ii<ms;ii++)
     for(jj=0;jj<2670;jj++);    //busclk:32MHz--1ms
     //for(jj=0;jj<5340;jj++);    //busclk:64MHz--1ms         
}
请问你们龙丘给的延时函数,Dly_ms(1);的话是粗略的1ms吗?(分别总线32m,64m)怎么算的?(1/32M)*2670*12=1ms?如何通过true time simulator的debug窗口看仿真时间的?


回复

使用道具 举报

80

主题

1045

帖子

0

精华

跨届大侠

北京龙邱智能科技有限公司

Rank: 10Rank: 10Rank: 10

积分
10332

论坛元老奖章

QQ
威望
2905
贡献
6151
兑换币
4515
注册时间
2008-6-7
在线时间
638 小时
6#
发表于 2013-3-7 23:34:35 | 只看该作者
自明了然 发表于 2013-3-5 11:22
void Dly_ms(int ms)
{
   int ii,jj;

用示波器和DG128单片机实测的!
回复

使用道具 举报

0

主题

16

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
282
威望
148
贡献
108
兑换币
98
注册时间
2013-7-18
在线时间
13 小时
毕业学校
xioauasbf
7#
发表于 2013-7-25 08:32:48 | 只看该作者
用定时器中断,更精准
回复

使用道具 举报

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

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-11-6 13:27 , Processed in 0.085362 second(s), 35 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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