OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4092|回复: 11

请问大家有遇到原子的延时函数失效的问题吗?延时不准确,无法延时一秒以上

[复制链接]

12

主题

60

帖子

0

精华

初级会员

Rank: 2

积分
138
金钱
138
注册时间
2018-1-21
在线时间
46 小时
发表于 2019-3-26 13:52:16 | 显示全部楼层 |阅读模式
1金钱
本帖最后由 czw 于 2019-3-26 13:53 编辑


最佳答案

查看完整内容[请看2#楼]

你注意看delay_ms函数的说明,不能直接演示5s的。 论坛有人写过轻松5s延时的函数,你找找
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

109

主题

5564

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
10572
金钱
10572
注册时间
2017-2-18
在线时间
1914 小时
发表于 2019-3-26 13:52:17 | 显示全部楼层
czw 发表于 2019-3-26 16:04
我完全没改过程序,你试试跑原子的跑马灯程序,延时5秒以上试试。

你注意看delay_ms函数的说明,不能直接演示5s的。
论坛有人写过轻松5s延时的函数,你找找
回复

使用道具 举报

12

主题

60

帖子

0

精华

初级会员

Rank: 2

积分
138
金钱
138
注册时间
2018-1-21
在线时间
46 小时
 楼主| 发表于 2019-3-26 13:53:17 | 显示全部楼层
小白求助,之气前F1就遇到此类问题,现在F4也是。
回复

使用道具 举报

153

主题

310

帖子

0

精华

高级会员

Rank: 4

积分
673
金钱
673
注册时间
2019-3-26
在线时间
18 小时
发表于 2019-3-26 14:26:54 | 显示全部楼层
帮你顶一下帖子
http://www.iis7.com/c/90/
回复

使用道具 举报

109

主题

5564

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
10572
金钱
10572
注册时间
2017-2-18
在线时间
1914 小时
发表于 2019-3-26 14:45:29 | 显示全部楼层
是不是你延时函数根据滴答定时器配置有问题?
回复

使用道具 举报

12

主题

60

帖子

0

精华

初级会员

Rank: 2

积分
138
金钱
138
注册时间
2018-1-21
在线时间
46 小时
 楼主| 发表于 2019-3-26 16:02:55 | 显示全部楼层

你也遇到相应问题吗?
回复

使用道具 举报

12

主题

60

帖子

0

精华

初级会员

Rank: 2

积分
138
金钱
138
注册时间
2018-1-21
在线时间
46 小时
 楼主| 发表于 2019-3-26 16:04:35 | 显示全部楼层
peng1554 发表于 2019-3-26 14:45
是不是你延时函数根据滴答定时器配置有问题?

我完全没改过程序,你试试跑原子的跑马灯程序,延时5秒以上试试。
回复

使用道具 举报

35

主题

560

帖子

2

精华

资深版主

Rank: 8Rank: 8

积分
17769
金钱
17769
注册时间
2018-3-3
在线时间
523 小时
发表于 2019-3-26 16:48:46 | 显示全部楼层
原子写的103 毫秒延时只能到1.8秒的。你可以再封装一次的
回复

使用道具 举报

12

主题

60

帖子

0

精华

初级会员

Rank: 2

积分
138
金钱
138
注册时间
2018-1-21
在线时间
46 小时
 楼主| 发表于 2019-3-26 19:17:51 | 显示全部楼层
peng1554 发表于 2019-3-26 16:35
你注意看delay_ms函数的说明,不能直接演示5s的。
论坛有人写过轻松5s延时的函数,你找找

********************* code ***********************
void delay_ms(u16 nms)
{                  
        u8 repeat=nms/540;                                               
                                                                                       
        u16 remain=nms%540;   // 比如超频到248M的时候,delay_xms最大只能延时541左右了
        while(repeat)
        {
                delay_xms(540);
                repeat--;
        }
        if(remain)delay_xms(remain);
}
**********************************************************
好的谢谢
回复

使用道具 举报

12

主题

60

帖子

0

精华

初级会员

Rank: 2

积分
138
金钱
138
注册时间
2018-1-21
在线时间
46 小时
 楼主| 发表于 2019-3-26 19:18:27 | 显示全部楼层
Psheng 发表于 2019-3-26 16:48
原子写的103 毫秒延时只能到1.8秒的。你可以再封装一次的

好的,谢谢你
回复

使用道具 举报

12

主题

60

帖子

0

精华

初级会员

Rank: 2

积分
138
金钱
138
注册时间
2018-1-21
在线时间
46 小时
 楼主| 发表于 2019-3-26 20:02:28 | 显示全部楼层
peng1554 发表于 2019-3-26 14:45
是不是你延时函数根据滴答定时器配置有问题?

但是看他的介绍,是有做超频相应处理,那为什么不能直接延时两秒以上呢?
回复

使用道具 举报

12

主题

60

帖子

0

精华

初级会员

Rank: 2

积分
138
金钱
138
注册时间
2018-1-21
在线时间
46 小时
 楼主| 发表于 2019-3-26 20:04:43 | 显示全部楼层
Psheng 发表于 2019-3-26 16:48
原子写的103 毫秒延时只能到1.8秒的。你可以再封装一次的

但是看他的介绍,是有做超频相应处理,那为什么不能直接延时两秒以上呢?
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-10 04:03

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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