Neptune开发板 SSD1306+PCF8563实现电子钟功能(网络校正) 原创

发布于 2021-5-7 17:08
浏览
2收藏

Neptune开发板 SSD1306+PCF8563实现电子钟功能(网络校正)-开源基础软件社区通过对Neptune开发板学习 同时参考https://harmonyos.51cto.com/posts/2962 博文 写了一个SSD1306+PCF8563实现电子钟功能:

1,先修改SSID PSK:在net_params 修改SSID PSK

#define PARAM_HOTSPOT_SSID "XXXXXX"  // your AP SSID
#define PARAM_HOTSPOT_PSK  "XXXXXX"  // your AP PSK

2,连接WIFI:

    strcpy(config.ssid, PARAM_HOTSPOT_SSID);
    strcpy(config.preSharedKey, PARAM_HOTSPOT_PSK);
    config.securityType = PARAM_HOTSPOT_TYPE;
    osDelay(10);

    int netId = ConnectToHotspot(&config);//连接WIFI

3,使用Neptune开发板W800 SDK中wm_ntp.h中tls_ntp_client函数获取网络时间:

/**
 * @brief          This function is used to get network time.
 * @param          None
 * @retval         time value
 * @note           None
 */
u32 tls_ntp_client(void);

4,将tls_ntp_client获取的网络时间做处理以写入FC8563模块:

    t=tls_ntp_client();
    tblock = localtime((const time_t *)&t);
    
    gears1[0]=tblock->tm_sec;//秒   
    gears1[1]=tblock->tm_min;//分
    gears1[2]=tblock->tm_hour;//时 
    gears1[3]=tblock->tm_mday;//日
    gears1[4]=tblock->tm_wday;//周 
    gears1[5]=tblock->tm_mon+1;//月 
    gears1[6]=tblock->tm_year-100;//年

    printf("校验成功!\n");

5.处理的数据写入PCF8563:

PCF8563_WriteData(gears1);

 

然后就是时钟显示啦!

 具体看代码吧,现在还没想好WIFI配网方法和数据保存的处理,后续会把功能完善,例如获取天气等。

 

 

©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
pcf8563_demo.rar 20.19K 28次下载
已于2021-5-7 17:08:26修改
4
收藏 2
回复
举报
回复
添加资源
添加资源将有机会获得更多曝光,你也可以直接关联已上传资源 去关联
    相关推荐