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

远道可思
发布于 2021-5-7 17:08
浏览
3收藏

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 37次下载
已于2021-5-7 17:08:26修改
4
收藏 3
回复
举报
4条回复
按时间正序
/
按时间倒序
红叶亦知秋
红叶亦知秋

可以,期待楼主成品

回复
2021-5-7 18:08:03
起个可爱的昵称
起个可爱的昵称

开发板是楼主自己买的还是公开课抽奖的啊?

回复
2021-5-7 18:14:26
远道可思
远道可思 回复了 起个可爱的昵称
开发板是楼主自己买的还是公开课抽奖的啊?

有抽的,有买的

回复
2021-5-7 18:32:17
-_青艺丶梦之城。1?
-_青艺丶梦之城。1?

期待楼主其他大宝贝

回复
2021-9-22 09:27:11
回复
    相关推荐