打印

不用定时器怎么用c程序写一个比较精确的延时子程序

[复制链接]
1867|28
手机看帖
扫描二维码
随时随地手机跟帖
沙发
dengdc| | 2018-7-10 18:48 | 只看该作者
使用__delay_cycles();

使用特权

评论回复
板凳
heweibig| | 2018-7-10 18:50 | 只看该作者

这个还真不好办呢。

使用特权

评论回复
地板
lizye| | 2018-7-10 18:52 | 只看该作者

不过时钟准了,就延时也准了。

使用特权

评论回复
5
spark周| | 2018-7-10 18:56 | 只看该作者

先是确定下单片机的主频频率的,然后就算下你的延时的时间的就ok了

使用特权

评论回复
6
zhaoxqi| | 2018-7-10 18:58 | 只看该作者

#define CPU_F ((double)8000000)
#define delay_us(x) __delay_cycles((long)(CPU_F*(double)x/1000000.0))
#define delay_ms(x) __delay_cycles((long)(CPU_F*(double)x/1000.0))


很精确的延时,

使用特权

评论回复
7
wuhany|  楼主 | 2018-7-10 19:00 | 只看该作者
嗯,我知道了, 多谢啊

使用特权

评论回复
8
usysm| | 2018-7-21 16:30 | 只看该作者
可以考虑使用软件定时器或者系统定时器进行精确定时延时

使用特权

评论回复
9
typeof| | 2018-7-21 16:31 | 只看该作者
使用__NOP()函数

使用特权

评论回复
10
yujielun| | 2018-7-21 16:31 | 只看该作者
一种是硬件延时,要用到定时器/计数器

使用特权

评论回复
11
htmlme| | 2018-7-21 16:31 | 只看该作者
用循环函数延时

使用特权

评论回复
12
pklong| | 2018-7-21 16:32 | 只看该作者
需要精确知道延时函数的具体延时时间。

使用特权

评论回复
13
touser| | 2018-7-21 16:32 | 只看该作者
精确延时有吗

使用特权

评论回复
14
myiclife| | 2018-7-21 16:33 | 只看该作者
C 语言最大的缺点就是实时性差

使用特权

评论回复
15
uytyu| | 2018-7-21 16:33 | 只看该作者
软件延时的基本方法是调用延时子程序

使用特权

评论回复
16
iyoum| | 2018-7-21 16:33 | 只看该作者
很多延时都直接用的 Sleep()

使用特权

评论回复
17
wwppd| | 2018-7-21 16:34 | 只看该作者
C语言不能精确延时

使用特权

评论回复
18
touser| | 2018-7-21 16:34 | 只看该作者
需要精确到什么程度呢?

使用特权

评论回复
19
usysm| | 2018-7-21 16:34 | 只看该作者
通过普通延时函数实现精确的定时

使用特权

评论回复
20
pklong| | 2018-7-21 16:34 | 只看该作者
以C语言编写的单片机延时函数

使用特权

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

本版积分规则

879

主题

10435

帖子

4

粉丝