无法通过 USB 将计算机时间同步到 Arduino

2024-01-04

我想将时间从我的电脑同步到arduino。我正在使用他们的时间库,但它不起作用。

如何让arduino与我的电脑上的时间相同?我目前使用的是Mac。

他们的文件说:

在unix系统上,可以使用shell命令设置时间:

TZ_adjust=-8; echo T$(($(date +%s)+6060$TZ_adjust)) > /dev/tty.usbserial-A8008pym

我在终端上尝试过

>export TZ_adjust=-8; echo T$(($(date +%s)+6060$TZ_adjust)) > /dev/tty.usbmodemfd131 

我的权限被拒绝。

我究竟做错了什么? 有没有更简单的方法将arduino上的时间与我的电脑同步?

The Code

#include <Time.h>  

#define TIME_MSG_LEN  11   // time sync to PC is HEADER followed by unix time_t as ten ascii digits
#define TIME_HEADER  'T'   // Header tag for serial time sync message
#define TIME_REQUEST  7    // ASCII bell character requests a time sync message 

void setup()  {
  Serial.begin(9600);
  setSyncProvider( requestSync);  //set function to call when sync required
  Serial.println("Waiting for sync message");
}

void loop(){    
  if(Serial.available() ) 
  {
    processSyncMessage();
  }
  if(timeStatus()!= timeNotSet)   
  {
    digitalWrite(13,timeStatus() == timeSet); // on if synced, off if needs refresh  
    digitalClockDisplay();  
  }
  delay(1000);
}

void digitalClockDisplay(){
  // digital clock display of the time
  Serial.print(hour());
  printDigits(minute());
  printDigits(second());
  Serial.print(" ");
  Serial.print(day());
  Serial.print(" ");
  Serial.print(month());
  Serial.print(" ");
  Serial.print(year()); 
  Serial.println(); 
}

void printDigits(int digits){
  // utility function for digital clock display: prints preceding colon and leading 0
  Serial.print(":");
  if(digits < 10)
    Serial.print('0');
  Serial.print(digits);
}

void processSyncMessage() {
  // if time sync available from serial port, update time and return true
  while(Serial.available() >=  TIME_MSG_LEN ){  // time message consists of a header and ten ascii digits
    char c = Serial.read() ; 
    Serial.print(c);  
    if( c == TIME_HEADER ) {       
      time_t pctime = 0;
      for(int i=0; i < TIME_MSG_LEN -1; i++){   
        c = Serial.read();          
        if( c >= '0' && c <= '9'){   
          pctime = (10 * pctime) + (c - '0') ; // convert digits to a number    
        }
      }   
      setTime(pctime);   // Sync Arduino clock to the time received on the serial port
    }  
  }
}

time_t requestSync()
{
  Serial.print(TIME_REQUEST,BYTE);  
  return 0; // the time will be sent later in response to serial mesg
}

康拉德和我后来发现了解决方案20分钟的聊天 https://chat.stackoverflow.com/rooms/19409/discussion-between-david-k-and-conrad-c:

To set the variable to EST
TZ_adjust=-5;

sudo echo "T$(($(date +%s)+60*60*$TZ_adjust))" >/dev/tty.usbmodemfa131
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法通过 USB 将计算机时间同步到 Arduino 的相关文章

  • 如何在 Windows 上获取 Arduino 草图的汇编语言列表?

    我希望能够看到我的 Arduino 草图的汇编语言列表 我怎样才能实现这个目标 Update 我正在 Windows 机器上运行 Arduino 软件 一种方法是使用avr objdump on the elf构建创建的文件 例如 在 OS
  • 在Java中,是否可以执行一个方法一段时间,并在达到时间限制后停止?

    我有下载网页的代码 HttpURLConnection connection private String downloadContent InputStream content Source parser try content conn
  • 时间格式说明(Google Directions API)

    我已阅读用于提出方向请求的 Google Directions API 文档 URL 的示例如下 http maps googleapis com maps api directions json origin Brooklyn desti
  • 如何从 gmtime() 的时间+日期输出中获取自纪元以来的秒数?

    你如何做反向gmtime 你把时间 日期放在哪里并获取秒数 我有像这样的字符串 Jul 9 2009 20 02 58 UTC 我想获取该纪元与 2009 年 7 月 9 日之间的秒数 我努力了time strftime但我不知道如何正确使
  • Java JFormattedTextfield 时间格式化

    我在代码中使用时间时遇到了一些麻烦 txtDauer new JFormattedTextField txtDauer setFormatterFactory new DefaultFormatterFactory new DateForm
  • 为什么在处理.org java pdf 导出时只显示一个框?

    下面是我的代码 在运行时它显示了我想要的多个框 但是当我尝试导出时 它只在该帧位置显示一个框 我尝试在特定帧生成输出 但它有同样的问题 import processing pdf int ofs 500 boolean record voi
  • 如何降级旧版 Android 中的 java.time 代码?

    我有这个简洁的代码 它生成两个日期之间的天数列表 然后是当天的日期 以及它在列表中的位置 最重要的是 所有日期都采用相同的格式 这使得很容易比较它们 Create list of days String s 2018 08 28 Strin
  • Socat串口嗅探

    我目前正在尝试访问连接到应用程序的串行端口的两个方向上的数据 我想做的是 ttymxc0 socat sniff ttyV0 应用程序ttymxc0 是真实端口 ttyV0 是虚拟端口 我发现 socat 命令适用于 Ubuntu 16 0
  • 获取以 UTC 表示的当前时间的最简单 PowerShell 方法

    我已查看该帖子在 PowerShell 中创建具有特定 UTC 日期时间的 DateTime 对象 https stackoverflow com questions 10487011 creating a datetime object
  • Golang - 如何在特定时间执行函数

    我需要在一天中的特定时间运行一个函数 例如 0010 0610 1210 1810 我目前的方法使用自动收报机for range time Tick 21600 time Second 我以这些时间间隔之一 例如 1210 手动启动该程序
  • HTML 时间输入类型 - 如何在单击任意位置而不仅仅是单击时钟图标时选择时间菜单视图

    I working on the time input type in HTML my problem is when I click on the small clock icon on the right side of the inp
  • 如何使用Intent限制录音时间?

    使用意图时如何限制录制 我尝试了这段代码 Intent intent new Intent MediaStore ACTION VIDEO CAPTURE intent putExtra android intent extra durat
  • Linux环境下串口数据转换为TCP/IP

    我需要从Linux系统的串口获取数据并将其转换为TCP IP发送到服务器 这很难做到吗 我有一些基本的编程经验 但对 Linux 的经验不多 有没有开源应用程序可以做到这一点 在 Linux 中您不需要编写程序来执行此操作 只是pipe h
  • qt 读取就绪信号

    我正在尝试与运行 1996 年处理器的设备建立串行连接 这意味着数据传输回我可能需要几秒钟的时间 我知道readyRead每次有新数据可用时都会生成信号 但我的问题是生成多长时间 这也是我可以测试就绪读取是否较低的一种方法 因为如果当它们不
  • 在 JavaScript 中,如何让函数在特定时间运行?

    我有一个托管仪表板的网站 我可以编辑页面上的 JavaScript 目前每五秒刷新一次 我现在正在尝试获得window print 每天早上8点跑步 我怎么能这样做呢 JavaScript 是not用于此目的的工具 如果您希望某些东西在每天
  • 当我启动程序时,Arduino IDE (Win10) 崩溃

    我的 Arduino IDE Win10 上的版本为 1 8 12 在启动时崩溃 运行arduino debug exe我收到此错误消息 C Program Files x86 Arduino gt arduino debug exe Se
  • 建议一种每分钟更新时间的方法

    我有一个完整的ajax应用程序 我正在使用下面的代码每分钟更新一次时间 但如果我保持浏览器打开超过 10 分钟 浏览器就会变得无响应 缓慢 建议更好的代码 function tick var d new Date var time padN
  • 哪些语言可以很好地进行日期、时间和日历操作? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 这可能是一个过分的要求 但是有没有一种语言能够真正出色地表示时间和日期操作呢 我会立即承认这是真的很难编写一个真正伟大的时间库 也就是
  • time() 会返回相同的输出吗?

    当用户注册时 我正在为 PHP 中的用户生成令牌 我想知道两个用户是否可以获得相同的令牌 因为这会破坏系统 请让我知道这是否足够 token md5 rand time 编辑 我现在正在使用我在另一个问题上找到的generate uuid
  • 将秒整数转换为 HH:MM,iPhone

    我正在为此苦苦挣扎 我想以 HH MM 格式在标签中显示一个以秒为单位的值 我在互联网上搜索了很长时间并找到了一些答案 但要么没有完全理解它们 要么它们看起来像是一种奇怪的做我想做的事情的方式 如果有人能帮助我解决这个问题 那就太好了 请记

随机推荐

  • NSJSONSerialization 和 Unicode 不能很好地结合在一起

    我正在制作一个使用套接字和 JSON 与 Nodejs 服务器通信的应用程序 由于 iOS 5 有自己的 NSJSONSerialization 我认为这可能是我要遵循的道路 之前我使用的是轻量级的yail库 无论如何 在迁移到 NSJSO
  • 如何在 sbt shell 中设置子项目的设置(不使用项目命令)?

    在 sbt shell 中如何设置子项目 我知道我可以project subproject then set key value 但我不想一直切换项目 理想情况下 与以下内容没有太大不同 set key in subproject valu
  • 淘汰ViewModel基类,Javascript继承

    我最近在很多项目中使用了 Knockout js 并且编写了很多重复的代码 我希望能够定义一个BaseViewModel类并让我的特定于页面的 ViewModel 继承它 我对 Javascript 如何做到这一点有点困惑 这是我的基本Ba
  • 在用户睡觉时处理我的 BLE 监控应用程序上的 Android-Doze 模式

    我制作了一个在睡眠时间监控人的健康状况的设备 它通过 BLE 连接到智能手机 它与 iOS 应用程序配合得很好 但自从 Android 世界出现 Doze 模式以来 这真的很难处理 因为我的设备在他的睡眠时间工作 主要功能是它可以检测特定的
  • 如何在 Rails 中建模“喜欢”?

    我有 3 个模型 用户 对象 喜欢 目前 我有这样的模型 一个用户有很多对象 我该如何进行建模 1 一个用户可以喜欢很多对象 2 一个对象可以有很多喜欢 来自不同的用户 所以我希望能够做这样的事情 User likes 用户喜欢的对象列表
  • 将 jar 添加到 maven exec:java classpath

    我有一个批处理文件 它使用依赖于tools jar 来自JDK 的maven 运行java 类 例如 mvn f pom xml e exec java Dfile encoding UTF 8 Dexec mainClass MyClas
  • 按元素过滤 XML [重复]

    这个问题在这里已经有答案了
  • omp 的行为对嵌套并行级别至关重要

    考虑以下场景 函数A创建一层OMP并行区域 每个OMP线程调用函数B 函数B本身包含另一层OMP并行区域 那么 如果在函数 B 的并行区域内 存在一个 OMP 临界区域 那么 该区域对于函数 A 和 B 创建的所有线程来说是 全局 临界的
  • istio:VirtualService 重写为根 url

    我有一个 Istio 1 4 6 VirtualService 其匹配项和 url 重写定义如下 match authority prefix example com uri prefix foo bar rewrite uri route
  • (-) MonthBegin 的 Pandas 日期时间锚定偏移量无法按预期工作

    我需要回到月初 但如果我已经在月初 我想留在那里 Pandas 锚定偏移量 n 0 应该正是这样做的 但它不会在 MonthBegin 的锚定点之间产生预期结果 例如对于这个pd Timestamp 2017 01 06 00 00 00
  • 如何将变量中的列表附加到 R 中数据帧的特定行中的列表?

    我创建了一个 RMarkdown 来检查错误 其输出print指定错误以及需要更正哪些行号的语句 这将检查df以下 我创建了另一个数据框 df index在下面的示例中 来跟踪每列需要更正的行 即df 本质上 我需要添加一个列来存储需要为每
  • 如何从intent中获取文件名?

    这是我的清单文件 使用意图过滤器后 我从邮件附件下载 ics 文件 当我打开下载的文件时 它会启动我的应用程序 我需要获取应用程序中所选文件的文件名和数据 我应该在清单和java文件中做什么 我对 Android 很陌生 有人可以帮助我吗
  • 为什么我的 create-react-app 显示 README.md,而不是 index.html?

    为什么我的 create react app 显示 README md 而不是 index html 我已经运行 npm run build gt yarn run deploy 多次检查文件结构并阅读 gh pages 文档 找不到任何其
  • Angular 7+:将静态 html 文件注入组件视图中间

    我无法找到将文件中的静态 html 注入视图中间的最佳方法 我有一个名为 eula dialog 的组件 其中该组件尚未执行任何操作 但视图如下所示 eula dialog component html h1 Sign EULA h1
  • 持续集成、持续交付、持续部署

    这三个术语有什么区别 我的大学提供了以下定义 持续集成基本上只是意味着开发人员的工作副本每天与共享主线同步多次 持续交付被描述为持续集成的逻辑演变 始终能够将产品投入生产 持续部署被描述为持续交付后合乎逻辑的下一步 只要产品通过 QA 就自
  • 计算任意大整数的整数平方根 (isqrt) 的有效算法

    Notice 对于解决方案Erlang or C C go to Trial 4 below 维基百科文章 整数平方根 http en wikipedia org wiki Integer square root 整数平方根 的定义可以在这
  • 请求的 JSON 解析失败

    由于某种原因 下面的 ajax 代码存在解析错误 我怎样才能找出它是什么 和 或有人能看到出了什么问题吗 listElements sortable revert true update function event ui var orde
  • 我是否必须切换到 https 才能在 Chrome 92 中使用“SharedArrayBuffer”?

    我的网站不适用于 Chrome 92 使用 Chrome 91 一切都很好 问题是SharedArrayBuffer自 Chrome 92 起未启用 当我尝试通过添加标题 Cross Origin Embedder Policy requr
  • 从命令行创建新的 Visual Studio 解决方案

    有没有办法使用 devenv 从我制作的多项目模板创建新的 Visual Studio 解决方案 有很多关于使用命令行构建的资源 但我似乎找不到任何关于创建新解决方案的信息 我希望能够从我制作的代码生成器的模板中打开一个新的解决方案 以便我
  • 无法通过 USB 将计算机时间同步到 Arduino

    我想将时间从我的电脑同步到arduino 我正在使用他们的时间库 但它不起作用 如何让arduino与我的电脑上的时间相同 我目前使用的是Mac 他们的文件说 在unix系统上 可以使用shell命令设置时间 TZ adjust 8 ech