久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 7426|回復: 2
打印 上一主題 下一主題
收起左側

使用stm32和esp8266以及DS1302的開機自動網絡授時的時鐘程序

  [復制鏈接]
跳轉到指定樓層
樓主
采用stm32f10制作了一個網絡授時時鐘,通過連接esp8266獲得網絡上的北京時間,使用www點k780點com提供的免費api,有興趣的小伙伴們,可以去官方研究下。這里簡要的說一下制作這個網絡授時時鐘的思路,大概就是先使用串口調試助手調試好esp8266的波特率、工作模式等,然后將其連接入家庭的路由器,或者開啟手機熱點讓esp8266連接進去。我這里設置其波特率為115200,工作模式為AP模式。設置好這些基本的參數之后,就是開啟單連接模式,連接入遠程的tcp服務器,開啟透傳模式,發送get+數據商提供的key,獲得北京時間的JSON信息,然后采用cJSON庫進行,json的數據解析工作,可以解析出北京時間,然后再將得到的時間更新給DS1302模塊,之后就開始不停的從DS1302模塊里面獲取時間了。當然大家感興趣的。還可以獲取天氣等信息呢。

制作出來的實物圖如下:

單片機源程序如下:
  1. #include "sys.h"
  2. #include "delay.h"
  3. #include "usart.h"
  4. #include "led.h"                           
  5. #include "key.h"     
  6. #include "malloc.h"        
  7. #include "usart3.h"
  8. #include "wifista.h"
  9. #include "weather.h"
  10. #include "cJSON.h"
  11. #include "ds1302.h"
  12. #include "oled12864.h"


  13. void show_time(void);
  14. u8 IntegralPointFlag = 0;

  15. int main(void)
  16. {         
  17.         u8 key;
  18.         u16 t=0;
  19.         u8 constate=0;                         // 連接狀態
  20.         delay_init();                     // 延時函數初始化         
  21.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);// 設置中斷優先級分組為組2:2位搶占優先級,2位響應優先級
  22.         uart_init(115200);                 // 串口初始化為115200
  23.         
  24.          LED_Init();                                          //初始化與LED連接的硬件接口
  25.          
  26.         KEY_Init();                                        //初始化按鍵
  27.         usart3_init(115200);                //初始化串口3

  28.         DS1302_Init();
  29.          
  30.         OLED_Init();
  31. //         Step_Num
  32.         OLED_P8x16Num(0,0,1);  // 顯示屏初始化
  33.         OLED_P8x16Num(8,0,9);
  34.         OLED_P8x16Str(16,0,"-");
  35.         OLED_P8x16Num(24,0,0);
  36.         OLED_P8x16Num(32,0,5);
  37.         OLED_P8x16Str(40,0,"-");
  38.         OLED_P8x16Num(48,0,0);
  39.         OLED_P8x16Num(56,0,7);


  40.         OLED_P8x16Num(64,2,2);
  41.         OLED_P8x16Num(72,2,2);
  42.         OLED_P8x16Str(80,2,":");
  43.         OLED_P8x16Num(88,2,2);
  44.         OLED_P8x16Num(96,2,9);
  45.         OLED_P8x16Str(104,2,":");
  46.         OLED_P8x16Num(112,2,1);
  47.         OLED_P8x16Num(120,2,9);
  48.         
  49.         delay_ms(200);


  50.         atk_8266_wifista_config();
  51.         
  52.         printf("wifi init ok!");
  53.         
  54.         delay_ms(1000);

  55.         get_beijing_time();
  56.         
  57.         delay_ms(1000);
  58.         delay_ms(1000);
  59.         
  60.         get_beijing_time();
  61.         delay_ms(1000);
  62.         
  63.         printf("Time: %d-%d-%d  %d:%d:%d\r\n",nwt.year,nwt.month,nwt.date,nwt.hour,nwt.min,nwt.sec);
  64.         DS1302_Write_Time();

  65.         
  66.         while(1)
  67.         {
  68. // DS1302_Get_Time(time);
  69.                
  70.                 key = KEY_Scan(0);
  71.                 if(key==WKUP_PRES)
  72.                 {
  73.                         get_beijing_time();
  74.                         printf("Time: %d-%d-%d  %d:%d:%d\r\n",nwt.year,nwt.month,nwt.date,nwt.hour,nwt.min,nwt.sec);
  75.                         DS1302_Write_Time();
  76.                 }
  77.                 delay_ms(10);
  78.                 t++;
  79.                 if(t==1000)
  80.                 {
  81.                         constate=atk_8266_consta_check();//得到連接狀態         
  82.                         t=0;
  83.                 }
  84.                 else if((t%100)==0)
  85.                 {
  86.                         LED1 = !LED1;
  87.                         show_time();
  88.                 }
  89.                 atk_8266_at_response(1);
  90.         }
  91. }

  92. void show_time(void)
  93. {
  94. //                DS1302_Read_Time();
  95. //                printf("%d-%d-%d  %d:%d:%d\r\n",nwt.year,nwt.month,nwt.date,nwt.hour,nwt.min,nwt.sec);
  96.                 u8 time[15];
  97.                 DS1302_Get_Time(time);
  98. //                printf("%d%d%d%d年%d%d月%d%d日 ", time[0],time[1],time[2],time[3],time[4],time[5],time[6],time[7]);
  99. //                printf("%d%d時%d%d分%d%d秒 星期%d\n", time[9],time[10],time[11],time[12],time[13],time[14],time[8]);

  100.         OLED_P8x16Num(0,0,time[2]);  
  101.         OLED_P8x16Num(8,0,time[3]);
  102.         OLED_P8x16Num(24,0,time[4]);
  103.         OLED_P8x16Num(32,0,time[5]);
  104.         OLED_P8x16Num(48,0,time[6]);
  105.         OLED_P8x16Num(56,0,time[7]);
  106.         
  107.         OLED_P8x16Num(64,2,time[9]);
  108.         OLED_P8x16Num(72,2,time[10]);
  109.         
  110.         OLED_P8x16Num(88,2,time[11]);
  111.         OLED_P8x16Num(96,2,time[12]);
  112.         
  113.         OLED_P8x16Num(112,2,time[13]);
  114.         OLED_P8x16Num(120,2,time[14]);

  115.         // 判斷分鐘為0  秒 小于等于 3 則可以判斷 當前時間為整點  啟動報時
  116.         if(time[11] == 0 && time[12] == 0 && time[13] == 0 && time[14] <= 1)
  117.         {
  118.                         
  119.                
  120.                
  121.         }
  122. }
復制代碼

所有資料51hei提供下載:
ESP8266.7z (474.02 KB, 下載次數: 204)


評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏8 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:142699 發表于 2019-11-11 17:37 | 只看該作者
原子的代碼移植真是太麻煩了,一點都不方便.
回復

使用道具 舉報

板凳
ID:1046983 發表于 2022-10-11 10:42 | 只看該作者
太棒了,收藏了
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日韩午夜网站 | 天天天天操 | 日韩欧美一区二区三区免费观看 | 二区精品 | 黄色一级免费观看 | 91人人爽| 一区二区三区四区不卡视频 | 久久性| 久久99视频 | 毛片久久久| 99国产精品99久久久久久粉嫩 | 日韩欧美一区二区三区在线播放 | 91视频正在播放 | 久久久久国产一区二区三区四区 | 四虎影院在线免费观看 | 久久激情网| 精品国产精品三级精品av网址 | 欧美一级久久精品 | 伊人久久成人 | 一区二区在线 | 国产玖玖| 99re视频在线免费观看 | 欧美精品一区二区在线观看 | 成人午夜电影在线观看 | 夜夜精品浪潮av一区二区三区 | 夜夜爽99久久国产综合精品女不卡 | 欧美日韩在线观看一区二区三区 | 国产成人精品免费视频大全最热 | 欧美一区二区免费 | 精品国产精品国产偷麻豆 | av一区二区三区 | 亚洲精品永久免费 | 国产网站在线免费观看 | 日韩成人在线观看 | 久久免费精品 | 国产一在线观看 | 黄色av网站在线观看 | 亚洲国产精品成人无久久精品 | av一级久久 | 欧美性吧| 久久久久九九九女人毛片 |