欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: 用ESP8266控制自動(dòng)聯(lián)網(wǎng)對(duì)時(shí)的VFD時(shí)鐘程序 [打印本頁(yè)]

作者: cyanrain    時(shí)間: 2021-7-29 14:31
標(biāo)題: 用ESP8266控制自動(dòng)聯(lián)網(wǎng)對(duì)時(shí)的VFD時(shí)鐘程序
VFD顯示的時(shí)鐘。用ESP8266控制,自動(dòng)聯(lián)網(wǎng)WiFi對(duì)時(shí)。顯示效果如圖:

直接上代碼:
//用ESP8266控制自動(dòng)聯(lián)網(wǎng)對(duì)時(shí)的VFD時(shí)鐘
//VFD型號(hào):VFD-8-MD-06INKM

  1. #include <NTPClient.h>
  2. #include <ESP8266WiFi.h>
  3. #include <WiFiUdp.h>
  4. #include <time.h>
  5. #include <SPI.h>

  6. #define VFD_MOSI 13
  7. #define VFD_CLK  14
  8. #define VFD_CS   15
  9. #define VFD_RST  16

  10. #define VFD_DIMMING_UP   5     //亮度+
  11. #define VFD_DIMMING_DOWN 4     //亮度-

  12. //修改成需要連接的WiFi
  13. const char *ssid     = "WiFi名稱";
  14. const char *password = "WiFi密碼";

  15. static char VFD_Dimming = 0x8f;  //VFD默認(rèn)亮度

  16. WiFiUDP ntpUDP;
  17. NTPClient timeClient(ntpUDP, "time1.aliyun.com", 28800, 60000);
  18. /*
  19. 參數(shù)說(shuō)明:
  20. 1. udp            : 創(chuàng)建的UDP連接
  21. 2. poolServerName : 服務(wù)器地址, 默認(rèn): time.nist.gov
  22. 3. timeOffset     : 時(shí)區(qū), 默認(rèn)0, 單位秒, 北京在第8時(shí)區(qū) 3600*8
  23. 4. milliseconds   : 刷新時(shí)間間隔, 毫秒
  24. */

  25. void VFD_DISP(char data[8]){
  26.   for(uint8_t i=0; i<8; i++){
  27.     digitalWrite(VFD_CS, LOW);
  28.     SPI.transfer(0x20+i);      //定位
  29.     SPI.transfer(data[i]);     //顯示的數(shù)據(jù)
  30.     digitalWrite(VFD_CS, HIGH);
  31.   }
  32.   digitalWrite(VFD_CS, LOW);
  33.   SPI.transfer(0xe8);          //開(kāi)顯示
  34.   digitalWrite(VFD_CS, HIGH);
  35. }

  36. void VFD_SetDimming(char dimming){
  37.   digitalWrite(VFD_CS, LOW);
  38.   SPI.transfer(0xe4);
  39.   SPI.transfer(dimming);
  40.   digitalWrite(VFD_CS, HIGH);
  41. }

  42. void setup() {

  43.   SPI.begin();

  44.   pinMode(VFD_RST, OUTPUT);
  45.   pinMode(VFD_CS, OUTPUT);
  46.   pinMode(VFD_DIMMING_UP, INPUT);
  47.   pinMode(VFD_DIMMING_DOWN, INPUT);

  48.   //復(fù)位VFD   
  49.   digitalWrite(VFD_RST, LOW);
  50.   delay(500);
  51.   digitalWrite(VFD_RST, HIGH);
  52.   //選通VFD
  53.   digitalWrite(VFD_CS, HIGH);
  54.   //設(shè)置SPI參數(shù)  
  55.   SPI.setBitOrder(LSBFIRST);    //LSB(SPI數(shù)據(jù)格式,低位在前)
  56.   SPI.setClockDivider(SPI_CLOCK_DIV64);    //SPI時(shí)鐘,2~128,(實(shí)測(cè):64->250KHz, 128->125KHz)
  57.   SPI.setDataMode(SPI_MODE3);    //SPI模式,0~3,
  58.   /*
  59.     0:空閑時(shí)時(shí)鐘信號(hào)CLK為低電平,第1個(gè)邊沿開(kāi)始采樣;
  60.     1:空閑時(shí)時(shí)鐘信號(hào)CLK為低電平,第2個(gè)邊沿開(kāi)始采樣;
  61.     2:空閑時(shí)時(shí)鐘信號(hào)CLK為高電平,第1個(gè)邊沿開(kāi)始采樣;
  62.     3:空閑時(shí)時(shí)鐘信號(hào)CLK為高電平,第2個(gè)邊沿開(kāi)始采樣;
  63.    */

  64.   //初始化VFD
  65.   //顯示設(shè)置位數(shù)
  66.   digitalWrite(VFD_CS, LOW);
  67.   SPI.transfer(0xe0);
  68.   SPI.transfer(0x07);   //(8位)
  69.   digitalWrite(VFD_CS, HIGH);
  70.   VFD_SetDimming(VFD_Dimming);
  71.   char s[8] = {0x0d,'W','i','F','i','.','.','.'};
  72.   WiFi.mode(WIFI_STA);
  73.   WiFi.begin(ssid, password);
  74.   while ( WiFi.status() != WL_CONNECTED ) {
  75.     VFD_DISP(s);
  76.     delay (500);
  77.   }
  78.   timeClient.begin();
  79.   delay(1000);
  80. }

  81. void loop() {

  82.   timeClient.update();
  83.   time_t t = timeClient.getEpochTime();  //獲得時(shí)間戳
  84.   struct tm *p = gmtime(&t);
  85.   char sDate[16], sTime[16];
  86.   //strftime(sDate, 16,  "%Y-%m-%d", p);
  87.   strftime(sTime, 16,  "%H:%M:%S", p);
  88.   VFD_DISP(sTime);
  89.   delay(500);

  90.   //調(diào)整VFD亮度
  91.   while(digitalRead(VFD_DIMMING_UP) == LOW){
  92.     if(VFD_Dimming < 0xf0){
  93.       VFD_Dimming++;
  94.       VFD_SetDimming(VFD_Dimming);
  95.       char s[8] = {0x08,'D','i','m','m','i','n','g'};
  96.       VFD_DISP(s);
  97.     }
  98.     delay(50);
  99.   }
  100.   while(digitalRead(VFD_DIMMING_DOWN) == LOW){
  101.     if(VFD_Dimming > 0x01){
  102.       VFD_Dimming--;
  103.       VFD_SetDimming(VFD_Dimming);
  104.       char s[8] = {0x09,'D','i','m','m','i','n','g'};
  105.       VFD_DISP(s);
  106.     }
  107.     delay(50);
  108.   }
  109. }
復(fù)制代碼




作者: intel286    時(shí)間: 2021-12-22 19:59
很好,就是沒(méi)有電路圖
作者: wang_l0650    時(shí)間: 2022-1-7 16:55
電路圖在這里
#define VFD_MOSI 13
#define VFD_CLK  14
#define VFD_CS   15
#define VFD_RST  16
作者: tigerzq    時(shí)間: 2022-3-9 10:23
很不錯(cuò),就是型號(hào),圖片更多點(diǎn)更好了,怎么驅(qū)動(dòng),在哪里買,淘寶上有裸屏,還需什么驅(qū)動(dòng)
作者: 老當(dāng)益壯    時(shí)間: 2022-9-9 22:17
tigerzq 發(fā)表于 2022-3-9 10:23
很不錯(cuò),就是型號(hào),圖片更多點(diǎn)更好了,怎么驅(qū)動(dòng),在哪里買,淘寶上有裸屏,還需什么驅(qū)動(dòng)

不是做廣告,我在咸魚(yú)上買過(guò),一樣的型號(hào),8位5x7點(diǎn),3.3v供電,內(nèi)置驅(qū)動(dòng)芯片和變壓器,
作者: 啤酒瓶子老大    時(shí)間: 2022-9-29 16:53
我也問(wèn)過(guò)。買屏的說(shuō)我可能點(diǎn)不亮。我不會(huì)。哈哈。
作者: 老當(dāng)益壯    時(shí)間: 2023-4-5 10:57
我把樓主的配網(wǎng)改成了ap配網(wǎng),添加了年月日,顯示個(gè)幾秒,然后顯示時(shí)間 ,比這個(gè)寫(xiě)死網(wǎng)絡(luò)的方便,誰(shuí)便拿到哪里都能用,
作者: radio88931    時(shí)間: 2024-2-20 10:56
老當(dāng)益壯 發(fā)表于 2023-4-5 10:57
我把樓主的配網(wǎng)改成了ap配網(wǎng),添加了年月日,顯示個(gè)幾秒,然后顯示時(shí)間 ,比這個(gè)寫(xiě)死網(wǎng)絡(luò)的方便,誰(shuí)便拿到 ...

您好,能否分享代碼學(xué)習(xí)學(xué)習(xí),謝謝!!!
作者: radio88931    時(shí)間: 2024-2-20 11:09
老當(dāng)益壯 發(fā)表于 2023-4-5 10:57
我把樓主的配網(wǎng)改成了ap配網(wǎng),添加了年月日,顯示個(gè)幾秒,然后顯示時(shí)間 ,比這個(gè)寫(xiě)死網(wǎng)絡(luò)的方便,誰(shuí)便拿到 ...

您好,能否分享代碼學(xué)習(xí)學(xué)習(xí),謝謝!
作者: 阿飛7812    時(shí)間: 2024-2-27 09:05
老當(dāng)益壯 發(fā)表于 2023-4-5 10:57
我把樓主的配網(wǎng)改成了ap配網(wǎng),添加了年月日,顯示個(gè)幾秒,然后顯示時(shí)間 ,比這個(gè)寫(xiě)死網(wǎng)絡(luò)的方便,誰(shuí)便拿到 ...

讓我們分享一下你的代碼
作者: radio88931    時(shí)間: 2024-3-24 16:51
老當(dāng)益壯 發(fā)表于 2023-4-5 10:57
我把樓主的配網(wǎng)改成了ap配網(wǎng),添加了年月日,顯示個(gè)幾秒,然后顯示時(shí)間 ,比這個(gè)寫(xiě)死網(wǎng)絡(luò)的方便,誰(shuí)便拿到 ...

您好,能否分享代碼學(xué)習(xí)學(xué)習(xí),謝謝!
作者: 老當(dāng)益壯    時(shí)間: 2025-2-12 22:51
radio88931 發(fā)表于 2024-2-20 10:56
您好,能否分享代碼學(xué)習(xí)學(xué)習(xí),謝謝!!!

用WiFiManager
作者: 老當(dāng)益壯    時(shí)間: 2025-2-12 22:52
radio88931 發(fā)表于 2024-3-24 16:51
您好,能否分享代碼學(xué)習(xí)學(xué)習(xí),謝謝!

用WiFiManager




歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1