打印
[AVR单片机]

用C在IAR AVR中如何实现精确延时

[复制链接]
5544|16
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zhilikeji|  楼主 | 2008-5-12 10:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
一级菜鸟| | 2008-5-12 10:18 | 只看该作者

用定时器咯

使用特权

评论回复
板凳
zhilikeji|  楼主 | 2008-5-12 10:47 | 只看该作者

不是用定时器,就用nop这样的语句

现在就想把一个函数把nop语句组成稍有点准的延时函数

使用特权

评论回复
地板
mxh0506| | 2008-5-12 12:58 | 只看该作者

最好用定时器

用NOP延时会受中断影响

使用特权

评论回复
5
zhilikeji|  楼主 | 2008-5-12 13:29 | 只看该作者

我会关中断的.怎么就弄成delay_us(1)

我会关中断的.怎么就弄成delay_us(1)就是扬时1us

使用特权

评论回复
6
dai_weis| | 2008-5-12 20:48 | 只看该作者

根据汇编代码计算了

或者使用仿真器计时间看看,本来软件延时就不是精确的,仅仅用来估算而已

使用特权

评论回复
7
ATmega32l| | 2008-5-12 22:28 | 只看该作者

__delay_cycles()

__delay_cycles()

使用特权

评论回复
8
宇宙飞船| | 2008-5-13 10:23 | 只看该作者

自已写一个,在模以器里或示波器里调一下,

俺懒得去查C编译器提供的。

使用特权

评论回复
9
宇宙飞船| | 2008-5-13 10:25 | 只看该作者

俺不用IAR

使用特权

评论回复
10
zhilikeji|  楼主 | 2008-5-14 11:21 | 只看该作者

噢,楼上高手,你是用GCC的对吗?

哈哈,俺是刚入门的.觉得GCC设置好烦噢.

使用特权

评论回复
11
宇宙飞船| | 2008-5-14 11:39 | 只看该作者

写一个批文件不就得了!

比ICC和IAR的设定还简单!超灵活,爱干啥就干啥。

使用特权

评论回复
12
shiyang800| | 2008-5-20 20:05 | 只看该作者

GCC提供的软件延时库做uS级短延时超准!建议使用使用!

使用特权

评论回复
13
ATmega32l| | 2008-5-21 08:23 | 只看该作者

IAR精确到一个时钟周期

IAR精确到一个时钟周期

使用特权

评论回复
14
ayb_ice| | 2008-5-21 08:54 | 只看该作者

IAR 430中有__delay_cycles()内嵌函数

AVR应该也有,自己去看一下头文件

使用特权

评论回复
15
tsb0574| | 2008-6-4 21:37 | 只看该作者

定义好晶振,然后用__delay_cycles()。能精确到一个机器周期!

使用特权

评论回复
16
chengyabcd| | 2008-6-24 15:42 | 只看该作者

delay_cycles

_delay_cycles();好

使用特权

评论回复
17
匠人老板| | 2008-6-30 11:21 | 只看该作者

这个论坛,飞船不起飞就太冷轻了.

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

30

帖子

0

粉丝