数码之家

 找回密码
 立即注册
搜索
查看: 5513|回复: 57

[Arduino] 在家闲的淡腾 再用ESP8266做个表

[复制链接]
发表于 2020-3-2 17:00:56 | 显示全部楼层 |阅读模式
本帖最后由 qingkong 于 2020-3-2 17:05 编辑

效果么 就是这样的


原型机,里面很多当时没想明白的地方,而且还不会画板。。。。 都是一团糟



说正事。。。。。
结构很简单 AMS 1117  -> ESP01S ->tm1637 了事
外面的塑料桶是一个胶卷筒。这东西TB也有大量卖的


用充电宝比较稳,但是因为正常工作(只显示时间)电流在 10MA 左右,不是显示0.00 就是显示0.01(我的USB电表只能显示到10MA),好的充电宝都拒绝工作。。。
而用一节18650 这个AMD1117 又比较渣 3.8V的时候 显示的数字就有明暗变化了。而4.2V到3.8V 大约24小时左右。。。。
至于啥时候关机就不知道了。

因为18650是买手电送的(手电20包邮),而且我也没有高级充电器可以查看电池的容量。。。

为啥用esp01和ams1117 因为闲的。。。而且总是觉得EPS8266 mini(wemosD1Mini这图网上扒的)


  这种东西带个串口芯片会无端的耗电(其实验证的时候 直接mini搭的并不会多耗啥电 而且也能放入那个桶)而且TB采购的话,ESP01要便宜大约1块钱 :lol:

缺点及注意事项
1.不能检测电池电量 ESP01 没那个腿 。。。但是用 eps8266 mini 就行
2.ESP01 要把电源和使能脚连起来才能工作,否则不上班。。。我用了个50K欧的电阻连了他们
3.LED指示灯费电,小刀挑了
4.AMS1117用电池供电看来不大行(字会闪) 不知道HT7333会不会好一些。。。
5.强烈推荐  Sloeber 这个eclipse 下的 arduino 开发插件,而且他官网还有集成好的可以直接下载使用的包。只是需要把arduino下的库拷进去(或者靠梯子)


代码如下,能用 其他的不考虑:lol:
  1. #include "Arduino.h"
  2. //The setup function is called once at startup of the sketch
  3. /*
  4. ESP 8266 NTP时间 4位数码管 显示
  5. 测试使用的是  ESP01s
  6. 使用的库
  7. Grove 4  Digit Display

  8. 用GPIO0 GPIO2 显示时间 把大部分的串口输出都去掉了,以免esp01上那个蓝灯老是亮

  9. */

  10. #include <ESP8266WiFi.h>
  11. #include <WiFiUdp.h>
  12. #include <time.h>                       // time() ctime()
  13. #include <sys/time.h>                   // struct timeval
  14. //#include <Ticker.h>

  15. #include "TM1637.h"
  16. #define CLK 0//pins definitions for TM1637 and can be changed to other ports  
  17. #define DIO 2
  18. TM1637 tm1637(CLK, DIO);
  19. #define ON 1
  20. #define OFF 0

  21. #ifndef STASSID
  22. #define STASSID "zc_hm"
  23. #define STAPSK  "zc_hodsfds9"
  24. #define TZ              7       // (utc+) TZ in hours  东8区为啥是+7 ???
  25. #define DST_MN          60      // use 60mn for summer time in some countries

  26. #define TZ_MN           ((TZ)*60)
  27. #define NTP0_OR_LOCAL1  1       // 0:use NTP  1:fake external RTC
  28. #define RTC_TEST     1510592825 // 1510592825 = Monday 13 November 2017 17:07:05 UTC

  29. ////////////////////////////////////////////////////////

  30. #define TZ_MN           ((TZ)*60)
  31. #define TZ_SEC          ((TZ)*3600)
  32. #define DST_SEC         ((DST_MN)*60)
  33. #endif

  34. int8_t TimeDisp[] = { 0x00, 0x00, 0x00, 0x00 };
  35. unsigned char ClockPoint = 1;
  36. int Update_date;
  37. unsigned char halfsecond = 0;
  38. unsigned char second;
  39. unsigned char minute = 0;
  40. unsigned char hour = 12;

  41. // for testing purpose:
  42. extern "C" int clock_gettime(clockid_t unused, struct timespec *tp);

  43. const char *ssid = STASSID; // your network SSID (name)
  44. const char *pass = STAPSK;  // your network password
  45. int conts = 0;  //计数器
  46. boolean if_ntp = false;  //是否同步NTP
  47. uint32_t chipId = ESP.getChipId();
  48. unsigned int localPort = 2390;      // local port to listen for UDP packets

  49. /* Don't hardwire the IP address or we won't get the benefits of the pool.
  50. Lookup the IP address for the host name instead */
  51. IPAddress timeServerIP(192, 168, 198, 126); // time.nist.gov NTP server
  52. //IPAddress timeServerIP; // time.nist.gov NTP server address
  53. const char *ntpServerName = "cn.ntp.org.cn"; //换成阿里的NTP的话更快 还有很多 例如 cn.ntp.org.cn

  54. const int NTP_PACKET_SIZE = 48; // NTP time stamp is in the first 48 bytes of the message

  55. byte packetBuffer[NTP_PACKET_SIZE]; //buffer to hold incoming and outgoing packets

  56. timeval tv;
  57. timespec tp;
  58. time_t now;
  59. uint32_t now_ms, now_us;

  60. // A UDP instance to let us send and receive packets over UDP
  61. WiFiUDP udp; // @suppress("Abstract class cannot be instantiated")
  62. //Ticker oneSec; //定时一秒一次
  63. void setup() {
  64.   pinMode(LED_BUILTIN, OUTPUT);
  65.   ESP.wdtEnable(WDTO_4S); //打开看门狗

  66.   Serial.begin(115200);
  67.   // Serial.println();
  68.   // Serial.println();

  69.   // We start by connecting to a WiFi network
  70.   // Serial.print("Connecting to ");
  71.   // Serial.println(ssid);
  72.   WiFi.mode(WIFI_STA);
  73.   WiFi.begin(ssid, pass);

  74.   while (WiFi.status() != WL_CONNECTED) {
  75.     delay(500);
  76.     // Serial.print(".");
  77.   }
  78.   // Serial.println("");

  79. Serial.println("WiFi connected");
  80.   // Serial.println("IP address: ");
  81.   // Serial.println(WiFi.localIP());
  82.   // Serial.println(WiFi.SSID());

  83.   // Serial.println("Starting UDP");
  84.   udp.begin(localPort);
  85.   // Serial.print("Local port: ");
  86.   // Serial.println(udp.localPort());
  87.   tm1637.init();
  88.   tm1637.set(BRIGHT_DARKEST); //BRIGHT_TYPICAL = 2,BRIGHT_DARKEST = 0,BRIGHTEST = 7;

  89.   // oneSec.attach(1, oneSecond); //每秒执行一次

  90. }

  91. void TimingISR() {
  92.   halfsecond++;
  93.   Update_date = 1;

  94.   // // Serial.println(second);
  95.   ClockPoint = !ClockPoint;

  96.   if (halfsecond == 2) {
  97.     halfsecond = 0;

  98.   }
  99. }
  100. void TimeUpdate(void) {
  101.   if (ClockPoint)
  102.     tm1637.point(POINT_ON);
  103.   else
  104.     tm1637.point(POINT_OFF);
  105.   TimeDisp[0] = hour / 10;
  106.   TimeDisp[1] = hour % 10;
  107.   TimeDisp[2] = minute / 10;
  108.   TimeDisp[3] = minute % 10;

  109.   Update_date = 0;
  110. }

  111. void oneSecond() {
  112.   // Serial.print(chipId);
  113.   // // Serial.println(if_ntp);

  114.   if ((conts == 0) or (conts == (30 * 60))
  115.       or (conts == 10 and if_ntp == false)) {
  116.     setTime(ntpServerName); // @suppress("Invalid arguments")
  117.     conts = 0;
  118.   };
  119.   ESP.wdtFeed();
  120.   // gettimeofday(&tv, nullptr);
  121. //  clock_gettime(0, &tp);
  122.   //now = time(nullptr);

  123.   // EPOCH+tz+dst
  124.   // Serial.print(" time:");
  125.   // Serial.print((uint32_t) now);
  126.   print_time();
  127.   TimingISR();
  128.   if (Update_date == 1) {
  129.     TimeUpdate();
  130.     tm1637.display(TimeDisp);
  131.   }
  132.   ESP.wdtFeed();
  133.   //delay(250);

  134.   // human readable
  135.   //// Serial.print(" ctime:(UTC+");
  136.   //// Serial.print((uint32_t) (TZ * 60 + DST_MN));
  137.   //// Serial.print("mn) ");
  138. //  // Serial.print(ctime(&now));

  139.   //// Serial.print(time_t(&now));
  140.   conts++; //计数加1

  141. }

  142. void loop() {

  143.   oneSecond();
  144.   delay(1000);

  145. }

  146. void print_time() {
  147.   gettimeofday(&tv, nullptr);
  148.   clock_gettime(0, &tp);

  149.   now = time(nullptr);
  150.   //// Serial.print(now.yr, now.mon, now.date, now.hr, now.min, now.sec);

  151.   int y = 1970, mon, d, h, m, s, wk;

  152.   wk = ((now / 86400L) % 7 + 4) % 7; //86400 is secons in one day; +1 for 1970/1/1 is 周四
  153.   do {
  154.     unsigned long ys;
  155.     if ((y % 4 == 0 && y % 100 != 0) || y % 400 == 0) {
  156.       ys = 31622400L; //31622400 = 366 * 24 * 3600;
  157.     } else {
  158.       ys = 31536000L;  // 31536000 = 365 * 24 * 3600;
  159.     }
  160.     if (now < (signed long) ys) {
  161.       break;
  162.     } else {
  163.       now -= ys;
  164.       y++;
  165.     }
  166.   } while (1);

  167.   int mons[12] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
  168.   if ((y % 4 == 0 && y % 100 != 0) || y % 400 == 0) {
  169.     mons[1] = 29;
  170.   }
  171.   for (mon = 0; mon < 12; mon++) {
  172.     if (now < mons[mon] * 86400L) {
  173.       break;
  174.     } else {
  175.       now -= mons[mon] * 86400L;
  176.     }
  177.   }

  178.   d = now / 86400L + 1; //86400 = 24 * 3600 = how many seconds in a day
  179.   now = now % 86400L;

  180.   h = now / 3600;
  181.   now = now % 3600;
  182.   m = now / 60;
  183.   s = now % 60;

  184.   char buf[50];
  185.   snprintf(buf, sizeof(buf), "%04d/%02d/%02d %02d:%02d:%02d %0d", y, mon + 1,
  186.       d, h, m, s, wk);
  187.   // Serial.print("DATE: ");
  188.   // Serial.println(buf);

  189.   hour = (int) h;
  190.   minute = (int) m;

  191. }

  192. // send an NTP request to the time server at the given address
  193. void sendNTPpacket(IPAddress &address) {
  194.   // Serial.println("sending NTP packet...");
  195.   // set all bytes in the buffer to 0
  196.   memset(packetBuffer, 0, NTP_PACKET_SIZE);
  197.   // Initialize values needed to form NTP request
  198.   // (see URL above for details on the packets)
  199.   packetBuffer[0] = 0b11100011;   // LI, Version, Mode
  200.   packetBuffer[1] = 0;     // Stratum, or type of clock
  201.   packetBuffer[2] = 6;     // Polling Interval
  202.   packetBuffer[3] = 0xEC;  // Peer Clock Precision
  203.   // 8 bytes of zero for Root Delay & Root Dispersion
  204.   packetBuffer[12] = 49;
  205.   packetBuffer[13] = 0x4E;
  206.   packetBuffer[14] = 49;
  207.   packetBuffer[15] = 52;

  208.   // all NTP fields have been given values, now
  209.   // you can send a packet requesting a timestamp:
  210.   udp.beginPacket(address, 123); //NTP requests are to port 123
  211.   udp.write(packetBuffer, NTP_PACKET_SIZE);
  212.   udp.endPacket();
  213. }
  214. void setTime(const char *ntpServerName) {
  215.   //get a random server from the pool
  216.   // WiFi.hostByName(ntpServerName, timeServerIP);
  217.   digitalWrite(LED_BUILTIN, LOW);

  218.   // Serial.println(timeServerIP);
  219.   sendNTPpacket(timeServerIP); // send an NTP packet to a time server
  220.   // wait to see if a reply is available
  221.   delay(100);

  222.   int cb = udp.parsePacket();
  223.   if (!cb) {
  224.     // Serial.println("no packet yet");
  225.     if_ntp = false;
  226.   } else {
  227.     digitalWrite(LED_BUILTIN, HIGH);
  228.     if_ntp = true;
  229.     // Serial.print("packet received, length=");
  230.     // Serial.println(cb);
  231.     // We've received a packet, read the data from it
  232.     udp.read(packetBuffer, NTP_PACKET_SIZE); // read the packet into the buffer

  233.     //the timestamp starts at byte 40 of the received packet and is four bytes,
  234.     // or two words, long. First, esxtract the two words:

  235.     unsigned long highWord = word(packetBuffer[40], packetBuffer[41]);
  236.     unsigned long lowWord = word(packetBuffer[42], packetBuffer[43]);
  237.     // combine the four bytes (two words) into a long integer
  238.     // this is NTP time (seconds since Jan 1 1900):
  239.     unsigned long secsSince1900 = highWord << 16 | lowWord;
  240.     //   // Serial.print("Seconds since Jan 1 1900 = ");
  241.     //   // Serial.println(secsSince1900);

  242.     //    // now convert NTP time into everyday time:
  243.     //   // Serial.print("Unix time = ");
  244.     // Unix time starts on Jan 1 1970. In seconds, that's 2208988800:
  245.     const unsigned long seventyYears = 2208988800UL;
  246.     // subtract seventy years:
  247.     unsigned long epoch = secsSince1900 - seventyYears;
  248.     // print Unix time:
  249.     //  // Serial.println(epoch);

  250.     time_t rtc = epoch;
  251.     timeval tv = { rtc, 0 };
  252.     timezone tz = { TZ_MN + DST_MN, 0 };
  253.     settimeofday(&tv, &tz);

  254.     // print the hour, minute and second:
  255.     // Serial.print("The UTC time is "); // UTC is the time at Greenwich Meridian (GMT)
  256.     // Serial.print((epoch % 86400L) / 3600); // print the hour (86400 equals secs per day)
  257.     // Serial.print(':');
  258.     if (((epoch % 3600) / 60) < 10) {
  259.       // In the first 10 minutes of each hour, we'll want a leading '0'
  260.       // Serial.print('0');
  261.     }
  262.     // Serial.print((epoch % 3600) / 60); // print the minute (3600 equals secs per minute)
  263.     // Serial.print(':');
  264.     if ((epoch % 60) < 10) {
  265.       // In the first 10 seconds of each minute, we'll want a leading '0'
  266.       // Serial.print('0');
  267.     }
  268.     // Serial.println(epoch % 60); // print the second
  269.   }
  270.   // wait ten seconds before asking for the time again

  271. }
复制代码







本帖子中包含更多资源

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

x

打赏

参与人数 3家元 +70 收起 理由
家睦 + 50
温力口 + 10 谢谢分享。。。。不是说用了库,代码会变小.
人艰不拆了 + 10

查看全部打赏

发表于 2020-3-2 18:26:57 | 显示全部楼层
本来也想试试,一看要敲这么多行代码啊,况且自己根本就不懂编程。还是算了。
回复 支持 反对

使用道具 举报

发表于 2020-3-2 18:43:13 | 显示全部楼层
弄个狗子干啥!?:titter:
回复 支持 反对

使用道具 举报

发表于 2020-3-2 19:00:21 | 显示全部楼层
“LED指示灯费电,小刀挑了”     这位同学太搞笑了
回复 支持 反对

使用道具 举报

发表于 2020-3-2 20:17:07 | 显示全部楼层
石墨 发表于 2020-3-2 19:00
“LED指示灯费电,小刀挑了”     这位同学太搞笑了

楼主的确好有创意,我也是小白,应该可以用代码处理灯亮的问题的。
回复 支持 反对

使用道具 举报

发表于 2020-3-2 20:44:55 | 显示全部楼层
有电路原理图吗?
回复 支持 反对

使用道具 举报

发表于 2020-3-2 21:14:27 | 显示全部楼层
推荐楼主用这种盒子,1元。










本帖子中包含更多资源

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

x
回复 支持 1 反对 0

使用道具 举报

发表于 2020-3-3 08:34:44 | 显示全部楼层
Arduino:1.8.5 (Windows 7), 开发板:"NodeMCU 1.0 (ESP-12E Module), 80 MHz, Flash, Legacy (new can return nullptr), All SSL ciphers (most compatible), 4MB (FS:2MB OTA:~1019KB), 2, v2 Lower Memory, Disabled, None, Only Sketch, 115200"

构建选项已变更,全部重新构建
sketch_mar03a:28: error: expected primary-expression before '?' token

#define STAPSK??"zc_hodsfds9"

               ^

C:\Users\ADMINI~1\AppData\Local\Temp\arduino_modified_sketch_410864\sketch_mar03a.ino:55:20: note: in expansion of macro 'STAPSK'

const char *pass = STAPSK;??// your network password

                    ^

sketch_mar03a:28: error: expected primary-expression before '?' token

#define STAPSK??"zc_hodsfds9"

                ^

C:\Users\ADMINI~1\AppData\Local\Temp\arduino_modified_sketch_410864\sketch_mar03a.ino:55:20: note: in expansion of macro 'STAPSK'

const char *pass = STAPSK;??// your network password

                    ^

sketch_mar03a:55: error: expected ':' before ';' token

const char *pass = STAPSK;??// your network password

                          ^

sketch_mar03a:55: error: expected primary-expression before ';' token

sketch_mar03a:55: error: expected ':' before ';' token

sketch_mar03a:55: error: expected primary-expression before ';' token

sketch_mar03a:55: error: expected unqualified-id before '?' token

const char *pass = STAPSK;??// your network password

                           ^

sketch_mar03a:56: error: expected unqualified-id before '?' token

int conts = 0;??//计数器

               ^

sketch_mar03a:57: error: expected unqualified-id before '?' token

boolean if_ntp = false;??//是否同步NTP

                        ^

sketch_mar03a:59: error: expected unqualified-id before '?' token

unsigned int localPort = 2390;? ?? ?// local port to listen for UDP packets

                               ^

C:\Users\ADMINI~1\AppData\Local\Temp\arduino_modified_sketch_410864\sketch_mar03a.ino: In function 'void setup()':

sketch_mar03a:80: error: expected primary-expression before '?' token

??pinMode(LED_BUILTIN, OUTPUT);

^

sketch_mar03a:80: error: expected primary-expression before '?' token

??pinMode(LED_BUILTIN, OUTPUT);

  ^

sketch_mar03a:80: error: expected ':' before ';' token

??pinMode(LED_BUILTIN, OUTPUT);

                               ^

sketch_mar03a:80: error: expected primary-expression before ';' token

sketch_mar03a:80: error: expected ':' before ';' token

sketch_mar03a:80: error: expected primary-expression before ';' token

sketch_mar03a:81: error: expected primary-expression before '?' token

??ESP.wdtEnable(WDTO_4S); //打开看门狗

^

sketch_mar03a:81: error: expected primary-expression before '?' token

??ESP.wdtEnable(WDTO_4S); //打开看门狗

  ^

sketch_mar03a:81: error: expected ':' before ';' token

??ESP.wdtEnable(WDTO_4S); //打开看门狗

                         ^

sketch_mar03a:81: error: expected primary-expression before ';' token

sketch_mar03a:81: error: expected ':' before ';' token

sketch_mar03a:81: error: expected primary-expression before ';' token

sketch_mar03a:83: error: expected primary-expression before '?' token

??Serial.begin(115200);

^

sketch_mar03a:83: error: expected primary-expression before '?' token

??Serial.begin(115200);

  ^

sketch_mar03a:83: error: expected ':' before ';' token

??Serial.begin(115200);

                       ^

sketch_mar03a:83: error: expected primary-expression before ';' token

sketch_mar03a:83: error: expected ':' before ';' token

sketch_mar03a:83: error: expected primary-expression before ';' token

sketch_mar03a:84: error: expected primary-expression before '?' token

??// Serial.println();

^

sketch_mar03a:84: error: expected primary-expression before '?' token

??// Serial.println();

  ^

sketch_mar03a:85: error: expected primary-expression before '?' token

??// Serial.println();

^

sketch_mar03a:85: error: expected primary-expression before '?' token

??// Serial.println();

  ^

sketch_mar03a:87: error: expected primary-expression before '?' token

??// We start by connecting to a WiFi network

^

sketch_mar03a:87: error: expected primary-expression before '?' token

??// We start by connecting to a WiFi network

  ^

sketch_mar03a:88: error: expected primary-expression before '?' token

??// Serial.print("Connecting to ");

^

sketch_mar03a:88: error: expected primary-expression before '?' token

??// Serial.print("Connecting to ");

  ^

sketch_mar03a:89: error: expected primary-expression before '?' token

??// Serial.println(ssid);

^

sketch_mar03a:89: error: expected primary-expression before '?' token

??// Serial.println(ssid);

  ^

sketch_mar03a:90: error: expected primary-expression before '?' token

??WiFi.mode(WIFI_STA);

^

sketch_mar03a:90: error: expected primary-expression before '?' token

??WiFi.mode(WIFI_STA);

  ^

sketch_mar03a:90: error: expected ':' before ';' token

??WiFi.mode(WIFI_STA);

                      ^

sketch_mar03a:90: error: expected primary-expression before ';' token

sketch_mar03a:90: error: expected ':' before ';' token

sketch_mar03a:90: error: expected primary-expression before ';' token

sketch_mar03a:90: error: expected ':' before ';' token

sketch_mar03a:90: error: expected primary-expression before ';' token

sketch_mar03a:90: error: expected ':' before ';' token

sketch_mar03a:90: error: expected primary-expression before ';' token

sketch_mar03a:90: error: expected ':' before ';' token

sketch_mar03a:90: error: expected primary-expression before ';' token

sketch_mar03a:90: error: expected ':' before ';' token

sketch_mar03a:90: error: expected primary-expression before ';' token

sketch_mar03a:90: error: expected ':' before ';' token

sketch_mar03a:90: error: expected primary-expression before ';' token

sketch_mar03a:90: error: expected ':' before ';' token

sketch_mar03a:90: error: expected primary-expression before ';' token

sketch_mar03a:90: error: expected ':' before ';' token

sketch_mar03a:90: error: expected primary-expression before ';' token

sketch_mar03a:90: error: expected ':' before ';' token

sketch_mar03a:90: error: expected primary-expression before ';' token

sketch_mar03a:90: error: expected ':' before ';' token

sketch_mar03a:90: error: expected primary-expression before ';' token

sketch_mar03a:90: error: expected ':' before ';' token

sketch_mar03a:90: error: expected primary-expression before ';' token

sketch_mar03a:91: error: expected primary-expression before '?' token

??WiFi.begin(ssid, pass);

^

sketch_mar03a:91: error: expected primary-expression before '?' token

??WiFi.begin(ssid, pass);

  ^

sketch_mar03a:91: error: expected ':' before ';' token

??WiFi.begin(ssid, pass);

                         ^

sketch_mar03a:91: error: expected primary-expression before ';' token

sketch_mar03a:91: error: expected ':' before ';' token

sketch_mar03a:91: error: expected primary-expression before ';' token

sketch_mar03a:93: error: expected primary-expression before '?' token

??while (WiFi.status() != WL_CONNECTED) {

^

sketch_mar03a:93: error: expected primary-expression before '?' token

??while (WiFi.status() != WL_CONNECTED) {

  ^

sketch_mar03a:93: error: expected primary-expression before 'while'

??while (WiFi.status() != WL_CONNECTED) {

   ^

sketch_mar03a:93: error: expected ':' before 'while'

sketch_mar03a:93: error: expected primary-expression before 'while'

sketch_mar03a:93: error: expected ':' before 'while'

sketch_mar03a:93: error: expected primary-expression before 'while'

sketch_mar03a:93: error: expected ';' before 'while'

sketch_mar03a:97: error: expected primary-expression before '?' token

??// Serial.println("");

^

sketch_mar03a:97: error: expected primary-expression before '?' token

??// Serial.println("");

  ^

sketch_mar03a:99: error: expected ':' before ';' token

  Serial.println("WiFi connected");

                                  ^

sketch_mar03a:99: error: expected primary-expression before ';' token

sketch_mar03a:99: error: expected ':' before ';' token

sketch_mar03a:99: error: expected primary-expression before ';' token

sketch_mar03a:100: error: expected primary-expression before '?' token

??// Serial.println("IP address: ");

^

sketch_mar03a:100: error: expected primary-expression before '?' token

??// Serial.println("IP address: ");

  ^

sketch_mar03a:101: error: expected primary-expression before '?' token

??// Serial.println(WiFi.localIP());

^

sketch_mar03a:101: error: expected primary-expression before '?' token

??// Serial.println(WiFi.localIP());

  ^

sketch_mar03a:102: error: expected primary-expression before '?' token

??// Serial.println(WiFi.SSID());

^

sketch_mar03a:102: error: expected primary-expression before '?' token

??// Serial.println(WiFi.SSID());

  ^

sketch_mar03a:104: error: expected primary-expression before '?' token

??// Serial.println("Starting UDP");

^

sketch_mar03a:104: error: expected primary-expression before '?' token

??// Serial.println("Starting UDP");

  ^

sketch_mar03a:105: error: expected primary-expression before '?' token

??udp.begin(localPort);

^

sketch_mar03a:105: error: expected primary-expression before '?' token

??udp.begin(localPort);

  ^

sketch_mar03a:105: error: expected ':' before ';' token

??udp.begin(localPort);

                       ^

sketch_mar03a:105: error: expected primary-expression before ';' token

sketch_mar03a:105: error: expected ':' before ';' token

sketch_mar03a:105: error: expected primary-expression before ';' token

sketch_mar03a:105: error: expected ':' before ';' token

sketch_mar03a:105: error: expected primary-expression before ';' token

sketch_mar03a:105: error: expected ':' before ';' token

sketch_mar03a:105: error: expected primary-expression before ';' token

sketch_mar03a:105: error: expected ':' before ';' token

sketch_mar03a:105: error: expected primary-expression before ';' token

sketch_mar03a:105: error: expected ':' before ';' token

sketch_mar03a:105: error: expected primary-expression before ';' token

sketch_mar03a:105: error: expected ':' before ';' token

sketch_mar03a:105: error: expected primary-expression before ';' token

sketch_mar03a:105: error: expected ':' before ';' token

sketch_mar03a:105: error: expected primary-expression before ';' token

sketch_mar03a:105: error: expected ':' before ';' token

sketch_mar03a:105: error: expected primary-expression before ';' token

sketch_mar03a:105: error: expected ':' before ';' token

sketch_mar03a:105: error: expected primary-expression before ';' token

sketch_mar03a:106: error: expected primary-expression before '?' token

??// Serial.print("Local port: ");

^

sketch_mar03a:106: error: expected primary-expression before '?' token

??// Serial.print("Local port: ");

  ^

sketch_mar03a:107: error: expected primary-expression before '?' token

??// Serial.println(udp.localPort());

^

sketch_mar03a:107: error: expected primary-expression before '?' token

??// Serial.println(udp.localPort());

  ^

sketch_mar03a:108: error: expected primary-expression before '?' token

??tm1637.init();

^

sketch_mar03a:108: error: expected primary-expression before '?' token

??tm1637.init();

  ^

sketch_mar03a:108: error: expected ':' before ';' token

??tm1637.init();

                ^

sketch_mar03a:108: error: expected primary-expression before ';' token

sketch_mar03a:108: error: expected ':' before ';' token

sketch_mar03a:108: error: expected primary-expression before ';' token

sketch_mar03a:108: error: expected ':' before ';' token

sketch_mar03a:108: error: expected primary-expression before ';' token

sketch_mar03a:108: error: expected ':' before ';' token

sketch_mar03a:108: error: expected primary-expression before ';' token

sketch_mar03a:108: error: expected ':' before ';' token

sketch_mar03a:108: error: expected primary-expression before ';' token

sketch_mar03a:108: error: expected ':' before ';' token

sketch_mar03a:108: error: expected primary-expression before ';' token

sketch_mar03a:109: error: expected primary-expression before '?' token

??tm1637.set(BRIGHT_DARKEST); //BRIGHT_TYPICAL = 2,BRIGHT_DARKEST = 0,BRIGHTEST = 7;

^

sketch_mar03a:109: error: expected primary-expression before '?' token

??tm1637.set(BRIGHT_DARKEST); //BRIGHT_TYPICAL = 2,BRIGHT_DARKEST = 0,BRIGHTEST = 7;

  ^

sketch_mar03a:109: error: 'class TM1637' has no member named 'set'

??tm1637.set(BRIGHT_DARKEST); //BRIGHT_TYPICAL = 2,BRIGHT_DARKEST = 0,BRIGHTEST = 7;

          ^

sketch_mar03a:109: error: 'BRIGHT_DARKEST' was not declared in this scope

??tm1637.set(BRIGHT_DARKEST); //BRIGHT_TYPICAL = 2,BRIGHT_DARKEST = 0,BRIGHTEST = 7;

              ^

sketch_mar03a:109: error: expected ':' before ';' token

??tm1637.set(BRIGHT_DARKEST); //BRIGHT_TYPICAL = 2,BRIGHT_DARKEST = 0,BRIGHTEST = 7;

                             ^

sketch_mar03a:109: error: expected primary-expression before ';' token

sketch_mar03a:109: error: expected ':' before ';' token

sketch_mar03a:109: error: expected primary-expression before ';' token

sketch_mar03a:111: error: expected primary-expression before '?' token

??// oneSec.attach(1, oneSecond); //每秒执行一次

^

sketch_mar03a:111: error: expected primary-expression before '?' token

??// oneSec.attach(1, oneSecond); //每秒执行一次

  ^

sketch_mar03a:113: error: expected primary-expression before '}' token

}

^

sketch_mar03a:113: error: expected ':' before '}' token

sketch_mar03a:113: error: expected primary-expression before '}' token

sketch_mar03a:113: error: expected ':' before '}' token

sketch_mar03a:113: error: expected primary-expression before '}' token

sketch_mar03a:113: error: expected ';' before '}' token

C:\Users\ADMINI~1\AppData\Local\Temp\arduino_modified_sketch_410864\sketch_mar03a.ino: In function 'void TimingISR()':

sketch_mar03a:116: error: expected primary-expression before '?' token

??halfsecond++;

^

sketch_mar03a:116: error: expected primary-expression before '?' token

??halfsecond++;

  ^

sketch_mar03a:116: error: expected ':' before ';' token

??halfsecond++;

               ^

sketch_mar03a:116: error: expected primary-expression before ';' token

sketch_mar03a:116: error: expected ':' before ';' token

sketch_mar03a:116: error: expected primary-expression before ';' token

sketch_mar03a:117: error: expected primary-expression before '?' token

??Update_date = 1;

^

sketch_mar03a:117: error: expected primary-expression before '?' token

??Update_date = 1;

  ^

sketch_mar03a:117: error: expected ':' before ';' token

??Update_date = 1;

                  ^

sketch_mar03a:117: error: expected primary-expression before ';' token

sketch_mar03a:117: error: expected ':' before ';' token

sketch_mar03a:117: error: expected primary-expression before ';' token

sketch_mar03a:119: error: expected primary-expression before '?' token

??// // Serial.println(second);

^

sketch_mar03a:119: error: expected primary-expression before '?' token

??// // Serial.println(second);

  ^

sketch_mar03a:120: error: expected primary-expression before '?' token

??ClockPoint = !ClockPoint;

^

sketch_mar03a:120: error: expected primary-expression before '?' token

??ClockPoint = !ClockPoint;

  ^

sketch_mar03a:120: error: expected ':' before ';' token

??ClockPoint = !ClockPoint;

                           ^

sketch_mar03a:120: error: expected primary-expression before ';' token

sketch_mar03a:120: error: expected ':' before ';' token

sketch_mar03a:120: error: expected primary-expression before ';' token

sketch_mar03a:120: error: expected ':' before ';' token

sketch_mar03a:120: error: expected primary-expression before ';' token

sketch_mar03a:120: error: expected ':' before ';' token

sketch_mar03a:120: error: expected primary-expression before ';' token

sketch_mar03a:122: error: expected primary-expression before '?' token

??if (halfsecond == 2) {

^

sketch_mar03a:122: error: expected primary-expression before '?' token

??if (halfsecond == 2) {

  ^

sketch_mar03a:122: error: expected primary-expression before 'if'

??if (halfsecond == 2) {

   ^

sketch_mar03a:122: error: expected ':' before 'if'

sketch_mar03a:122: error: expected primary-expression before 'if'

sketch_mar03a:122: error: expected ':' before 'if'

sketch_mar03a:122: error: expected primary-expression before 'if'

sketch_mar03a:122: error: expected ';' before 'if'

C:\Users\ADMINI~1\AppData\Local\Temp\arduino_modified_sketch_410864\sketch_mar03a.ino: In function 'void TimeUpdate()':

sketch_mar03a:128: error: expected primary-expression before '?' token

??if (ClockPoint)

^

sketch_mar03a:128: error: expected primary-expression before '?' token

??if (ClockPoint)

  ^

sketch_mar03a:128: error: expected primary-expression before 'if'

??if (ClockPoint)

   ^

sketch_mar03a:128: error: expected ':' before 'if'

sketch_mar03a:128: error: expected primary-expression before 'if'

sketch_mar03a:128: error: expected ':' before 'if'

sketch_mar03a:128: error: expected primary-expression before 'if'

sketch_mar03a:128: error: expected ';' before 'if'

sketch_mar03a:130: error: expected primary-expression before '?' token

??else

^

sketch_mar03a:130: error: expected primary-expression before '?' token

??else

  ^

sketch_mar03a:130: error: expected primary-expression before 'else'

??else

   ^

sketch_mar03a:130: error: expected ':' before 'else'

sketch_mar03a:130: error: expected primary-expression before 'else'

sketch_mar03a:130: error: expected ':' before 'else'

sketch_mar03a:130: error: expected primary-expression before 'else'

sketch_mar03a:130: error: expected ';' before 'else'

sketch_mar03a:132: error: expected primary-expression before '?' token

??TimeDisp[0] = hour / 10;

^

sketch_mar03a:132: error: expected primary-expression before '?' token

??TimeDisp[0] = hour / 10;

  ^

sketch_mar03a:132: error: expected ':' before ';' token

??TimeDisp[0] = hour / 10;

                          ^

sketch_mar03a:132: error: expected primary-expression before ';' token

sketch_mar03a:132: error: expected ':' before ';' token

sketch_mar03a:132: error: expected primary-expression before ';' token

sketch_mar03a:133: error: expected primary-expression before '?' token

??TimeDisp[1] = hour % 10;

^

sketch_mar03a:133: error: expected primary-expression before '?' token

??TimeDisp[1] = hour % 10;

  ^

sketch_mar03a:133: error: expected ':' before ';' token

??TimeDisp[1] = hour % 10;

                          ^

sketch_mar03a:133: error: expected primary-expression before ';' token

sketch_mar03a:133: error: expected ':' before ';' token

sketch_mar03a:133: error: expected primary-expression before ';' token

sketch_mar03a:134: error: expected primary-expression before '?' token

??TimeDisp[2] = minute / 10;

^

sketch_mar03a:134: error: expected primary-expression before '?' token

??TimeDisp[2] = minute / 10;

  ^

sketch_mar03a:134: error: expected ':' before ';' token

??TimeDisp[2] = minute / 10;

                            ^

sketch_mar03a:134: error: expected primary-expression before ';' token

sketch_mar03a:134: error: expected ':' before ';' token

sketch_mar03a:134: error: expected primary-expression before ';' token

sketch_mar03a:135: error: expected primary-expression before '?' token

??TimeDisp[3] = minute % 10;

^

sketch_mar03a:135: error: expected primary-expression before '?' token

??TimeDisp[3] = minute % 10;

  ^

sketch_mar03a:135: error: expected ':' before ';' token

??TimeDisp[3] = minute % 10;

                            ^

sketch_mar03a:135: error: expected primary-expression before ';' token

sketch_mar03a:135: error: expected ':' before ';' token

sketch_mar03a:135: error: expected primary-expression before ';' token

sketch_mar03a:137: error: expected primary-expression before '?' token

??Update_date = 0;

^

sketch_mar03a:137: error: expected primary-expression before '?' token

??Update_date = 0;

  ^

sketch_mar03a:137: error: expected ':' before ';' token

??Update_date = 0;

                  ^

sketch_mar03a:137: error: expected primary-expression before ';' token

sketch_mar03a:137: error: expected ':' before ';' token

sketch_mar03a:137: error: expected primary-expression before ';' token

C:\Users\ADMINI~1\AppData\Local\Temp\arduino_modified_sketch_410864\sketch_mar03a.ino: In function 'void oneSecond()':

sketch_mar03a:141: error: expected primary-expression before '?' token

??// Serial.print(chipId);

^

sketch_mar03a:141: error: expected primary-expression before '?' token

??// Serial.print(chipId);

  ^

sketch_mar03a:142: error: expected primary-expression before '?' token

??// // Serial.println(if_ntp);

^

sketch_mar03a:142: error: expected primary-expression before '?' token

??// // Serial.println(if_ntp);

  ^

sketch_mar03a:144: error: expected primary-expression before '?' token

??if ((conts == 0) or (conts == (30 * 60))

^

sketch_mar03a:144: error: expected primary-expression before '?' token

??if ((conts == 0) or (conts == (30 * 60))

  ^

sketch_mar03a:144: error: expected primary-expression before 'if'

??if ((conts == 0) or (conts == (30 * 60))

   ^

sketch_mar03a:144: error: expected ':' before 'if'

sketch_mar03a:144: error: expected primary-expression before 'if'

sketch_mar03a:144: error: expected ':' before 'if'

sketch_mar03a:144: error: expected primary-expression before 'if'

sketch_mar03a:144: error: expected ':' before 'if'

sketch_mar03a:144: error: expected primary-expression before 'if'

sketch_mar03a:144: error: expected ':' before 'if'

sketch_mar03a:144: error: expected primary-expression before 'if'

sketch_mar03a:144: error: expected ':' before 'if'

sketch_mar03a:144: error: expected primary-expression before 'if'

sketch_mar03a:144: error: expected ':' before 'if'

sketch_mar03a:144: error: expected primary-expression before 'if'

sketch_mar03a:144: error: expected ';' before 'if'

sketch_mar03a:149: error: expected primary-expression before '?' token

??ESP.wdtFeed();

^

sketch_mar03a:149: error: expected primary-expression before '?' token

??ESP.wdtFeed();

  ^

sketch_mar03a:149: error: expected ':' before ';' token

??ESP.wdtFeed();

                ^

sketch_mar03a:149: error: expected primary-expression before ';' token

sketch_mar03a:149: error: expected ':' before ';' token

sketch_mar03a:149: error: expected primary-expression before ';' token

sketch_mar03a:150: error: expected primary-expression before '?' token

??// gettimeofday(&tv, nullptr);

^

sketch_mar03a:150: error: expected primary-expression before '?' token

??// gettimeofday(&tv, nullptr);

  ^

sketch_mar03a:152: error: expected primary-expression before '?' token

??//now = time(nullptr);

^

sketch_mar03a:152: error: expected primary-expression before '?' token

??//now = time(nullptr);

  ^

sketch_mar03a:154: error: expected primary-expression before '?' token

??// EPOCH+tz+dst

^

sketch_mar03a:154: error: expected primary-expression before '?' token

??// EPOCH+tz+dst

  ^

sketch_mar03a:155: error: expected primary-expression before '?' token

??// Serial.print(" time:");

^

sketch_mar03a:155: error: expected primary-expression before '?' token

??// Serial.print(" time:");

  ^

sketch_mar03a:156: error: expected primary-expression before '?' token

??// Serial.print((uint32_t) now);

^

sketch_mar03a:156: error: expected primary-expression before '?' token

??// Serial.print((uint32_t) now);

  ^

sketch_mar03a:157: error: expected primary-expression before '?' token

??print_time();

^

sketch_mar03a:157: error: expected primary-expression before '?' token

??print_time();

  ^

sketch_mar03a:157: error: expected ':' before ';' token

??print_time();

               ^

sketch_mar03a:157: error: expected primary-expression before ';' token

sketch_mar03a:157: error: expected ':' before ';' token

sketch_mar03a:157: error: expected primary-expression before ';' token

sketch_mar03a:157: error: expected ':' before ';' token

sketch_mar03a:157: error: expected primary-expression before ';' token

sketch_mar03a:157: error: expected ':' before ';' token

sketch_mar03a:157: error: expected primary-expression before ';' token

sketch_mar03a:157: error: expected ':' before ';' token

sketch_mar03a:157: error: expected primary-expression before ';' token

sketch_mar03a:157: error: expected ':' before ';' token

sketch_mar03a:157: error: expected primary-expression before ';' token

sketch_mar03a:157: error: expected ':' before ';' token

sketch_mar03a:157: error: expected primary-expression before ';' token

sketch_mar03a:157: error: expected ':' before ';' token

sketch_mar03a:157: error: expected primary-expression before ';' token

sketch_mar03a:157: error: expected ':' before ';' token

sketch_mar03a:157: error: expected primary-expression before ';' token

sketch_mar03a:157: error: expected ':' before ';' token

sketch_mar03a:157: error: expected primary-expression before ';' token

sketch_mar03a:157: error: expected ':' before ';' token

sketch_mar03a:157: error: expected primary-expression before ';' token

sketch_mar03a:157: error: expected ':' before ';' token

sketch_mar03a:157: error: expected primary-expression before ';' token

sketch_mar03a:158: error: expected primary-expression before '?' token

??TimingISR();

^

sketch_mar03a:158: error: expected primary-expression before '?' token

??TimingISR();

  ^

sketch_mar03a:158: error: expected ':' before ';' token

??TimingISR();

              ^

sketch_mar03a:158: error: expected primary-expression before ';' token

sketch_mar03a:158: error: expected ':' before ';' token

sketch_mar03a:158: error: expected primary-expression before ';' token

sketch_mar03a:159: error: expected primary-expression before '?' token

??if (Update_date == 1) {

^

sketch_mar03a:159: error: expected primary-expression before '?' token

??if (Update_date == 1) {

  ^

sketch_mar03a:159: error: expected primary-expression before 'if'

??if (Update_date == 1) {

   ^

sketch_mar03a:159: error: expected ':' before 'if'

sketch_mar03a:159: error: expected primary-expression before 'if'

sketch_mar03a:159: error: expected ':' before 'if'

sketch_mar03a:159: error: expected primary-expression before 'if'

sketch_mar03a:159: error: expected ';' before 'if'

sketch_mar03a:163: error: expected primary-expression before '?' token

??ESP.wdtFeed();

^

sketch_mar03a:163: error: expected primary-expression before '?' token

??ESP.wdtFeed();

  ^

sketch_mar03a:163: error: expected ':' before ';' token

??ESP.wdtFeed();

                ^

sketch_mar03a:163: error: expected primary-expression before ';' token

sketch_mar03a:163: error: expected ':' before ';' token

sketch_mar03a:163: error: expected primary-expression before ';' token

sketch_mar03a:164: error: expected primary-expression before '?' token

??//delay(250);

^

sketch_mar03a:164: error: expected primary-expression before '?' token

??//delay(250);

  ^

sketch_mar03a:166: error: expected primary-expression before '?' token

??// human readable

^

sketch_mar03a:166: error: expected primary-expression before '?' token

??// human readable

  ^

sketch_mar03a:167: error: expected primary-expression before '?' token

??//// Serial.print(" ctime:(UTC+");

^

sketch_mar03a:167: error: expected primary-expression before '?' token

??//// Serial.print(" ctime:(UTC+");

  ^

sketch_mar03a:168: error: expected primary-expression before '?' token

??//// Serial.print((uint32_t) (TZ * 60 + DST_MN));

^

sketch_mar03a:168: error: expected primary-expression before '?' token

??//// Serial.print((uint32_t) (TZ * 60 + DST_MN));

  ^

sketch_mar03a:169: error: expected primary-expression before '?' token

??//// Serial.print("mn) ");

^

sketch_mar03a:169: error: expected primary-expression before '?' token

??//// Serial.print("mn) ");

  ^

sketch_mar03a:172: error: expected primary-expression before '?' token

??//// Serial.print(time_t(&now));

^

sketch_mar03a:172: error: expected primary-expression before '?' token

??//// Serial.print(time_t(&now));

  ^

sketch_mar03a:173: error: expected primary-expression before '?' token

??conts++; //计数加1

^

sketch_mar03a:173: error: expected primary-expression before '?' token

??conts++; //计数加1

  ^

sketch_mar03a:173: error: 'conts' was not declared in this scope

??conts++; //计数加1

   ^

sketch_mar03a:173: error: expected ':' before ';' token

??conts++; //计数加1

          ^

sketch_mar03a:173: error: expected primary-expression before ';' token

sketch_mar03a:173: error: expected ':' before ';' token

sketch_mar03a:173: error: expected primary-expression before ';' token

sketch_mar03a:173: error: expected ':' before ';' token

sketch_mar03a:173: error: expected primary-expression before ';' token

sketch_mar03a:173: error: expected ':' before ';' token

sketch_mar03a:173: error: expected primary-expression before ';' token

sketch_mar03a:173: error: expected ':' before ';' token

sketch_mar03a:173: error: expected primary-expression before ';' token

sketch_mar03a:173: error: expected ':' before ';' token

sketch_mar03a:173: error: expected primary-expression before ';' token

sketch_mar03a:173: error: expected ':' before ';' token

sketch_mar03a:173: error: expected primary-expression before ';' token

sketch_mar03a:173: error: expected ':' before ';' token

sketch_mar03a:173: error: expected primary-expression before ';' token

sketch_mar03a:173: error: expected ':' before ';' token

sketch_mar03a:173: error: expected primary-expression before ';' token

sketch_mar03a:173: error: expected ':' before ';' token

sketch_mar03a:173: error: expected primary-expression before ';' token

sketch_mar03a:173: error: expected ':' before ';' token

sketch_mar03a:173: error: expected primary-expression before ';' token

sketch_mar03a:173: error: expected ':' before ';' token

sketch_mar03a:173: error: expected primary-expression before ';' token

sketch_mar03a:173: error: expected ':' before ';' token

sketch_mar03a:173: error: expected primary-expression before ';' token

sketch_mar03a:173: error: expected ':' before ';' token

sketch_mar03a:173: error: expected primary-expression before ';' token

C:\Users\ADMINI~1\AppData\Local\Temp\arduino_modified_sketch_410864\sketch_mar03a.ino: In function 'void loop()':

sketch_mar03a:179: error: expected primary-expression before '?' token

??oneSecond();

^

sketch_mar03a:179: error: expected primary-expression before '?' token

??oneSecond();

  ^

sketch_mar03a:179: error: expected ':' before ';' token

??oneSecond();

              ^

sketch_mar03a:179: error: expected primary-expression before ';' token

sketch_mar03a:179: error: expected ':' before ';' token

sketch_mar03a:179: error: expected primary-expression before ';' token

sketch_mar03a:180: error: expected primary-expression before '?' token

??delay(1000);

^

sketch_mar03a:180: error: expected primary-expression before '?' token

??delay(1000);

  ^

sketch_mar03a:180: error: expected ':' before ';' token

??delay(1000);

              ^

sketch_mar03a:180: error: expected primary-expression before ';' token

sketch_mar03a:180: error: expected ':' before ';' token

sketch_mar03a:180: error: expected primary-expression before ';' token

C:\Users\ADMINI~1\AppData\Local\Temp\arduino_modified_sketch_410864\sketch_mar03a.ino: In function 'void print_time()':

sketch_mar03a:185: error: expected primary-expression before '?' token

??gettimeofday(&tv, nullptr);

^

sketch_mar03a:185: error: expected primary-expression before '?' token

??gettimeofday(&tv, nullptr);

  ^

sketch_mar03a:185: error: expected ':' before ';' token

??gettimeofday(&tv, nullptr);

                             ^

sketch_mar03a:185: error: expected primary-expression before ';' token

sketch_mar03a:185: error: expected ':' before ';' token

sketch_mar03a:185: error: expected primary-expression before ';' token

sketch_mar03a:186: error: expected primary-expression before '?' token

??clock_gettime(0, &tp);

^

sketch_mar03a:186: error: expected primary-expression before '?' token

??clock_gettime(0, &tp);

  ^

sketch_mar03a:186: error: expected ':' before ';' token

??clock_gettime(0, &tp);

                        ^

sketch_mar03a:186: error: expected primary-expression before ';' token

sketch_mar03a:186: error: expected ':' before ';' token

sketch_mar03a:186: error: expected primary-expression before ';' token

sketch_mar03a:188: error: expected primary-expression before '?' token

??now = time(nullptr);

^

sketch_mar03a:188: error: expected primary-expression before '?' token

??now = time(nullptr);

  ^

sketch_mar03a:188: error: expected ':' before ';' token

??now = time(nullptr);

                      ^

sketch_mar03a:188: error: expected primary-expression before ';' token

sketch_mar03a:188: error: expected ':' before ';' token

sketch_mar03a:188: error: expected primary-expression before ';' token

sketch_mar03a:189: error: expected primary-expression before '?' token

??//// Serial.print(now.yr, now.mon, now.date, now.hr, now.min, now.sec);

^

sketch_mar03a:189: error: expected primary-expression before '?' token

??//// Serial.print(now.yr, now.mon, now.date, now.hr, now.min, now.sec);

  ^

sketch_mar03a:191: error: expected primary-expression before '?' token

??int y = 1970, mon, d, h, m, s, wk;

^

sketch_mar03a:191: error: expected primary-expression before '?' token

??int y = 1970, mon, d, h, m, s, wk;

  ^

sketch_mar03a:191: error: expected primary-expression before 'int'

??int y = 1970, mon, d, h, m, s, wk;

   ^

sketch_mar03a:191: error: expected ':' before 'int'

sketch_mar03a:191: error: expected primary-expression before 'int'

sketch_mar03a:191: error: expected ':' before 'int'

sketch_mar03a:191: error: expected primary-expression before 'int'

sketch_mar03a:191: error: expected ':' before 'int'

sketch_mar03a:191: error: expected primary-expression before 'int'

sketch_mar03a:191: error: expected ':' before 'int'

sketch_mar03a:191: error: expected primary-expression before 'int'

sketch_mar03a:191: error: expected ';' before 'int'

sketch_mar03a:193: error: expected primary-expression before '?' token

??wk = ((now / 86400L) % 7 + 4) % 7; //86400 is secons in one day; +1 for 1970/1/1 is 周四

^

sketch_mar03a:193: error: expected primary-expression before '?' token

??wk = ((now / 86400L) % 7 + 4) % 7; //86400 is secons in one day; +1 for 1970/1/1 is 周四

  ^

sketch_mar03a:193: error: 'wk' was not declared in this scope

??wk = ((now / 86400L) % 7 + 4) % 7; //86400 is secons in one day; +1 for 1970/1/1 is 周四

   ^

sketch_mar03a:193: error: expected ':' before ';' token

??wk = ((now / 86400L) % 7 + 4) % 7; //86400 is secons in one day; +1 for 1970/1/1 is 周四

                                    ^

sketch_mar03a:193: error: expected primary-expression before ';' token

sketch_mar03a:193: error: expected ':' before ';' token

sketch_mar03a:193: error: expected primary-expression before ';' token

sketch_mar03a:194: error: expected primary-expression before '?' token

??do {

^

sketch_mar03a:194: error: expected primary-expression before '?' token

??do {

  ^

sketch_mar03a:194: error: expected primary-expression before 'do'

??do {

   ^

sketch_mar03a:194: error: expected ':' before 'do'

sketch_mar03a:194: error: expected primary-expression before 'do'

sketch_mar03a:194: error: expected ':' before 'do'

sketch_mar03a:194: error: expected primary-expression before 'do'

sketch_mar03a:194: error: expected ';' before 'do'

sketch_mar03a:328: error: expected '}' at end of input

}

^

exit status 1
expected primary-expression before '?' token

在文件 -> 首选项开启
“编译过程中显示详细输出”选项
这份报告会包含更多信息。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-3 08:55:57 | 显示全部楼层
本帖最后由 qingkong 于 2020-3-3 09:28 编辑
lyy-cy 发表于 2020-3-2 21:14
推荐楼主用这种盒子,1元。

有的 有的 当年看了你的贴子 很快就TB采购了 :lol:
顺便采购了几个尼龙螺丝,换下了套装里的金属螺丝

只是我是用底面板做了这个东西的前面板,我感觉这个面更平一点。。。。


那个筒就是胶卷筒的近似款(这个筒是柯达的胶卷筒,帖子首图是富士的)。。。




我这个是跑mircopython的
功能
1.NTP对时  更新DS1307的时间
2.推送DS1307的时间给TM637

3.MQTT BMP180 DHT11 数据给百度云服务器
4.开着WebREPL用于远程改代码

如果不要DHT11的话 上面的esp8266模块也可以改成ESP01
gpio 0,2 给 tm1637
gpio 1,3 (也就是tx rx) 给i2c 总线 驱动ds1307 和 bmp180

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-3 08:59:39 | 显示全部楼层
本帖最后由 qingkong 于 2020-3-3 09:15 编辑
xiaoxiao80 发表于 2020-3-3 08:34
Arduino:1.8.5 (Windows 7), 开发板:"NodeMCU 1.0 (ESP-12E Module), 80 MHz, Flash, Legacy (new can ret ...

tab 换行符到了网页改成 ?? 了?

代码是eclipse格式化过的 它喜欢tab符 :smile:

另外 我的代码里是直连我家的orange pi pc 来NTP 时间的

如果要联公网上的NTP服务器,可以自己看看代码 改改注释部分
这里面的

  1.   // WiFi.hostByName(ntpServerName, timeServerIP);
  2.   digitalWrite(LED_BUILTIN, LOW);

  3.   // Serial.println(timeServerIP);
  4.   sendNTPpacket(timeServerIP); // send an NTP packet to a time server
  5.   // wait to see if a reply is available
  6.   delay(100);
复制代码
弄开这个就去DNS查IP,然后更新
  1. // WiFi.hostByName(ntpServerName, timeServerIP);
复制代码
从外网同步NTP的话,建议这个时间改长一点
  1. delay(100);
复制代码



回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-3 09:01:59 | 显示全部楼层
hainanhaibei 发表于 2020-3-2 18:26
本来也想试试,一看要敲这么多行代码啊,况且自己根本就不懂编程。还是算了。 ...

其实 复制粘贴不是

要是换用mircopython 代码可以短很多

因为 ntp 部分mircopython 有个写好的库,但是你要改 mircopython 库里的ntp服务器 要么把那个文件考出来改 要么git 源代码 重新编译
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-3 09:03:19 | 显示全部楼层
hzw6834 发表于 2020-3-2 20:17
楼主的确好有创意,我也是小白,应该可以用代码处理灯亮的问题的。

这个。。。我主要是刀挑了电源指示LED
那个东西 ams1117 esp01 上都有。。。。
而且是直接电阻到电源的,靠代码可能。。。大概。。。。基本上 。。。。。 不可能。。。。。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-3 09:05:27 | 显示全部楼层
xiaoxiao80 发表于 2020-3-2 20:44
有电路原理图吗?

这个。。。主要是不会画,也不知道拿啥画

联线很简单。。。

所有vcc在一块 所有 gnd 在一块
eps01的 gpio0 连到tm1637的clk  gpio2 联到 DIO
完事

数据线的链接,其实代码里就能看出来
  1. #define CLK 0//pins definitions for TM1637 and can be changed to other ports  
  2. #define DIO 2
复制代码
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-3 09:08:25 | 显示全部楼层
本帖最后由 qingkong 于 2020-3-3 09:38 编辑

????

看门狗么?防止死了啊,拔电多麻烦


我是打算让他自己执行千万年的 :lol:

“工业应用”必须上狗啊 :lol:

其实是看了这报道后莫名的恐惧啊:lol:
  1. Clementine是美国航空航天局在1994年1月25日发射的空间环境下测试传感器和航天器部件的卫星。由于缺乏几条看门狗程序,她的任务于1994年5月7日失效
复制代码



回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-3 11:33:23 | 显示全部楼层
:lol: 另外 再说说另外一个ESP8266的项目 --------easyesp

easyesp 这个arduino写的项目 堪称IOT胡作经典啊 可以0代码上http mqtt ntp N多传感器,还带部分LED LCD显示输出
关键是运行还算稳定,办公室和父母家的都运行2年左右了 一切OK  :victory:
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-3 15:40:46 | 显示全部楼层
:sad: 18650 工作了2.5天 不显示了

奇怪的是 拿出电池 量了下电压 -- 2.3V 怎么到这么低的。。。。
回复 支持 反对

使用道具 举报

发表于 2020-3-3 16:00:55 | 显示全部楼层
我编译老是错误,可能是库文件tm1637下载的不正确
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-3 16:38:04 | 显示全部楼层
xiaoxiao80 发表于 2020-3-3 16:00
我编译老是错误,可能是库文件tm1637下载的不正确

我的注释里有 我用的这个库驱动 tm1637
Grove 4  Digit Display
回复 支持 反对

使用道具 举报

发表于 2020-3-3 16:45:35 | 显示全部楼层
本帖最后由 fryefryefrye 于 2020-3-3 16:47 编辑

你测过单独的8266正常电流多少吗?

那个带串口的MINI D1,USB供电口正常电流在200ma左右,长时间运行能感觉到温热。
另外你发的图片是 ESP32 Mini。 不是 ESP8266 Mini。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-3 16:56:51 | 显示全部楼层
fryefryefrye 发表于 2020-3-3 16:45
你测过单独的8266正常电流多少吗?

那个带串口的MINI D1,USB供电口正常电流在200ma左右,长时间运行能感 ...


懒得找图了,只是说明下 反正大家都知道它长啥样了  :lol:

就我那个USB电表 开机0.05 然后就是 0.00 0.01 MINI D1也是那样

温有点,热算不上,毕竟我办公室那个运行了2年左右了 就是直接手机充电线伺候的


我做的这些表,实际上都不能让小米充电宝长时间给供电。。。。
除非用的库或者方式有问题,让eps8266一直闲不下来。。。。
回复 支持 反对

使用道具 举报

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

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2024-4-24 12:24 , Processed in 0.202801 second(s), 16 queries , Redis On.

Powered by Discuz!

© 2006-2023 smzj.net

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