极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

楼主: suoma

sd卡创建变量文件名再讨论

[复制链接]
发表于 2017-4-21 11:23:51 | 显示全部楼层 |阅读模式
接上一篇帖子
http://www.geek-workshop.com/thread-28247-1-1.html

帖子中实现了文件的时间的变量名命名,但是程序使用了延时函数delay(),所以里面的数据未更新。

现在要求10s新建一个文件,原文件保存。
现在使用arduino uno,DS1302时钟模块,SD存储模块,想了想,如果用mills()函数作为计时去判断,如下如果>10s,就不会写入数据了。想了下通过标志位标示>10s,保存了文件,但是这样不能下一个10s保存,大家有什么好办法?指点一下

  1. unsigned long Rt=millis()/1000;
  2. ...
  3.    
  4. File  myFile = SD.open(buf, FILE_WRITE);
  5.    if (myFile)
  6.         {
  7.                 if(Rt>10)  // 每10s保存一次
  8.                     {
  9.                     myFile.close();
  10.                     }   
  11.    myFile.println(buf);
  12.    myFile.close();
  13.    }
复制代码
回复

使用道具 举报

发表于 2017-4-21 13:52:45 | 显示全部楼层
记录下mills的时间,然后加上10s,循环判断mills是不是等于或者大于上一个时间+10s。
比起delay来,不占用系统太多的时间,好处还是挺多的。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-4-21 18:04:06 | 显示全部楼层
164335413 发表于 2017-4-21 13:52
记录下mills的时间,然后加上10s,循环判断mills是不是等于或者大于上一个时间+10s。
比起delay来,不占用 ...


如图,实现了变量命名,但是里面的数据未更新,程序是保存时钟日时分秒信息

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

发表于 2017-4-21 19:18:31 | 显示全部楼层
suoma 发表于 2017-4-21 18:04
如图,实现了变量命名,但是里面的数据未更新,程序是保存时钟日时分秒信息

这是什么模块啊。。。感觉我用时钟模块的时候没遇到这么多问题。。。我的sd卡读写实验也是文件名变量,然后要记录时间。。。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-4-21 20:16:05 | 显示全部楼层
zjz5717 发表于 2017-4-21 19:18
这是什么模块啊。。。感觉我用时钟模块的时候没遇到这么多问题。。。我的sd卡读写实验也是文件名变量,然 ...

DS1302+SD啊,定时新建、存储。文件名用时间变量命名(也不一定,但要文件名不能相同),SD卡记录时钟信息。
回复 支持 反对

使用道具 举报

发表于 2017-4-21 22:19:25 | 显示全部楼层
suoma 发表于 2017-4-21 20:16
DS1302+SD啊,定时新建、存储。文件名用时间变量命名(也不一定,但要文件名不能相同),SD卡记录时钟信 ...

为啥你的时钟信息看上去那么诡异。。。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-4-22 11:23:53 | 显示全部楼层
zjz5717 发表于 2017-4-21 22:19
为啥你的时钟信息看上去那么诡异。。。

我的文件里面只获取了日时分秒,因为文件命名的时候就是这么命名的,所以直接把文件命名时的时钟信息写到SD卡了
回复 支持 反对

使用道具 举报

发表于 2017-4-22 17:54:28 | 显示全部楼层
suoma 发表于 2017-4-22 11:23
我的文件里面只获取了日时分秒,因为文件命名的时候就是这么命名的,所以直接把文件命名时的时钟信息写到 ...

我觉得他不变化是有道理的,内容变化了不就下一个文件了吗
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-4-22 20:00:01 | 显示全部楼层
zjz5717 发表于 2017-4-22 17:54
我觉得他不变化是有道理的,内容变化了不就下一个文件了吗

原想记录10s内的时钟变化保存,然后新建文件再记录。看来要通过中断了,感觉中断不能实现
回复 支持 反对

使用道具 举报

发表于 2017-4-23 09:27:46 | 显示全部楼层
suoma 发表于 2017-4-22 20:00
原想记录10s内的时钟变化保存,然后新建文件再记录。看来要通过中断了,感觉中断不能实现


但是。。。你时间+1s就会新建一个文件啊
会不会那打错了。。。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-4-23 19:53:06 | 显示全部楼层
zjz5717 发表于 2017-4-23 09:27
但是。。。你时间+1s就会新建一个文件啊
会不会那打错了。。。

我再看看,这个问题要解决的
回复 支持 反对

使用道具 举报

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

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-4-19 19:44 , Processed in 0.050425 second(s), 19 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

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