OpenEdv-开源电子网

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

新手求助。我需要每分钟对电压值进行一次保存

[复制链接]

2

主题

5

帖子

0

精华

新手上路

积分
28
金钱
28
注册时间
2020-5-8
在线时间
8 小时
发表于 2020-7-16 21:31:14 | 显示全部楼层 |阅读模式
1金钱
我需要每分钟对电压值进行一次保存,考虑到了定时中断,定时中断每10s一次,然后我在定时中断服务函数中加了一个延时函数,发现函数卡在延时里,主函数就不执行了...
有没有什么办法能实现每1分钟保存一次数据,求指点,谢谢!


最佳答案

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

一定时器定一分钟,二定时器还是10s,一个全局变量累加,到6就保存,再清零,很简单的
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

3

主题

808

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3888
金钱
3888
注册时间
2017-3-7
在线时间
1694 小时
发表于 2020-7-16 21:31:15 | 显示全部楼层
一定时器定一分钟,二定时器还是10s,一个全局变量累加,到6就保存,再清零,很简单的
回复

使用道具 举报

11

主题

2148

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4911
金钱
4911
注册时间
2015-1-10
在线时间
615 小时
发表于 2020-7-17 09:52:28 | 显示全部楼层
为毛在定时中断里面要加延时?你直接用定时器定时1分钟不就完了
回复

使用道具 举报

2

主题

5

帖子

0

精华

新手上路

积分
28
金钱
28
注册时间
2020-5-8
在线时间
8 小时
 楼主| 发表于 2020-7-17 10:38:03 | 显示全部楼层
阿侑kevin 发表于 2020-7-17 09:52
为毛在定时中断里面要加延时?你直接用定时器定时1分钟不就完了

定时中断通过设置arr和psc能到一分钟吗?
回复

使用道具 举报

2

主题

459

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4498
金钱
4498
注册时间
2018-5-14
在线时间
962 小时
发表于 2020-7-17 10:54:39 | 显示全部楼层
又是一个在中断中进行长时间计算或者阻塞延时操作的人
回复

使用道具 举报

12

主题

3394

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8665
金钱
8665
注册时间
2020-5-11
在线时间
4131 小时
发表于 2020-7-17 11:29:41 | 显示全部楼层
int n;
char flag=0;
timer(void)
{
n++;
if(n>=60)//60秒
{
  n=0;
  flag=1;//置标志
}
}
main(void)
{
while(1)
{
  if(flag)
{
  flag=0;
  保存();
}
}
}
专治疑难杂症
回复

使用道具 举报

22

主题

2251

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4480
金钱
4480
注册时间
2013-4-22
在线时间
337 小时
发表于 2020-7-17 12:09:24 | 显示全部楼层
又一个不懂写代码的人。
定时器中断定时1分钟置一分钟标志。主程序判断标志是否置了,然后保存数据,清标志。
回复

使用道具 举报

2

主题

5

帖子

0

精华

新手上路

积分
28
金钱
28
注册时间
2020-5-8
在线时间
8 小时
 楼主| 发表于 2020-7-23 11:06:38 | 显示全部楼层
a5820736 发表于 2020-7-17 09:54
一定时器定一分钟,二定时器还是10s,一个全局变量累加,到6就保存,再清零,很简单的

我悟了,谢谢,已解决
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-9 00:56

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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