电子产业一站式赋能平台

PCB联盟网

搜索
查看: 39|回复: 0
收起左侧

ART-PI OLED小时钟+ESP8266获取网络时间(RTT-Studio平台)

[复制链接]

208

主题

208

帖子

1635

积分

三级会员

Rank: 3Rank: 3

积分
1635
发表于 2020-11-21 23:10:00 | 显示全部楼层 |阅读模式
继上次的OLED显示开发之后,觉得RTT的平台挺好玩的,图形化配置,容易上手,这次在上次OLED显示的基础之上,增加ESP8266获取网络时间,同步网络时间并利用模拟RTC模块,做一个精巧的小时钟,ART-PI核心板板载有WIFI模组的,AP6212A ,wifi,蓝牙一体的模块,后面会开发板载模块,童鞋们搬好小板凳就可以啦,嘿嘿!
    来吧,兄弟们,上干货!!!提一句,伙伴们多点点关注,增加增加人气

1k2ihm4au2e64017630823.png

1k2ihm4au2e64017630823.png

1、ESP8266与ART-PI连接图
我这里用到的是ART-PI的UART2串口,即是24(UART2-TX)引脚和26引脚(UART2-RX),杜邦线略显凌乱,哈哈
ART-PI
ESP8266
VCC3.3
VCC
PA2(UART2-TX)
RXD
PA3(UART2-RX)
TXD
GND
GND

2c4lrs3ovfj64017630923.png

2c4lrs3ovfj64017630923.png


ejkaksvn3sc64017631023.jpg

ejkaksvn3sc64017631023.jpg

2、硬件平台很简单,搭建OK之后,下面就开始我们的RTT-Studio的探索之旅啦,伙伴们只需搬好小板凳,配置这种糙活累活交给小飞哥就OK啦。
老规矩,没有枪没有炮,RTT给我们造,感谢RTT模块贡献者们,我们只需要在软件包里面找到at device模块,添加进我们的工程就OK了,然后double click就进入详细配置界面,选择乐鑫ESP8266模块,wifi ssid、wifi密码栏目填入伙伴们自己的wifi账户密码,串口可以根据自己的选择设置,小飞哥这里使用的是UART2,接收缓存尽可能设置大一点,不要太小,否则可能会报一些缓存溢出错误。

flngmk1ga3j64017631124.png

flngmk1ga3j64017631124.png


hthpvegx5ge64017631224.png

hthpvegx5ge64017631224.png


设置完了之后,有手都会的CTRL+S保存,稍等一会之后,就可以看到我们的工程里面已经添加了at device的软件包咯

d53gggfdruv64017631324.png

d53gggfdruv64017631324.png


duvzwjvhxmb64017631424.png

duvzwjvhxmb64017631424.png

3、接下来,需要对一些硬件资源进行配置,主要是我们用到的串口,在uart_config.h文件中我们添加红色方框所示代码,然后我们可以看到很多串口的定义,定义了#define BSP_USING_UART2,关于UART2的一些资源就可以调用了,IO口根据自己选用的IO定义就可以啦

scf4crelxzo64017631524.png

scf4crelxzo64017631524.png


l5nkq44fqhl64017631624.png

l5nkq44fqhl64017631624.png

然后,CTRL+B,不出意外的话,应该是无errors的,嘿嘿

ebg1zoiftfq64017631724.png

ebg1zoiftfq64017631724.png


cwkhzptmtyd64017631825.png

cwkhzptmtyd64017631825.png

4、然后看打印信息,出现了一个错误,也很直白了,是关于DNS的错误,这涉及到ESP8366的固件版本,小飞哥的模块已经尘封了几年了,固件版本是老古董了,也懒得省级啦,大家如果固件比较新的话,就不会出现这个问题,如果有伙伴跟我的一样是老古董,可以自行升级固件,或者像我一样取巧(懒),屏蔽以下代码就可以啦。

4mvn4ifzex464017631925.png

4mvn4ifzex464017631925.png


ue31mukql3b64017632025.png

ue31mukql3b64017632025.png

然后一顿操作猛如虎,就OK啦,连接成功啦,坐下,基操基操。

qi4uxmh4us364017632125.png

qi4uxmh4us364017632125.png

然后,输入ifconfig命令,看一下我们的网卡配置

4cimvbjs1qq64017632225.png

4cimvbjs1qq64017632225.png

然后,来吧,推开网络的大门吧,ping百度,可以看到数据完全无问题咯

4e2dqj3xsnv64017632325.png

4e2dqj3xsnv64017632325.png

5、然后,添加netutils工具软件包,netutils软件包中汇集了RT-Thread可用的全部网络小工具集合,包括NTP工具,方法同其他工具包一样咯,然后配置默认就可以啦。

cwe4med2aac64017632425.png

cwe4med2aac64017632425.png


y5uadb1zwpt64017632525.png

y5uadb1zwpt64017632525.png

同时,开启软件模拟RTC功能,用于我们时间同步之后的本地计时,保存之后,工程已经添加进来了软件包。

as3es4no0rv64017632626.png

as3es4no0rv64017632626.png


ondqb1mdz1m64017632726.png

ondqb1mdz1m64017632726.png


6、编译下载完成之后没可以看到,我们已经添加进来了NTP工具啦,输入ntp_sync命令,时间同步成功,输入date,可以看到当前时间啦。


7、接下来,我们添加固件初始化自动对时,这段代码加在main函数里面






然后在上次的OLED_Display函数中,添加显示时间代码




8、编译完成之后,下载固件,然后输入oled_display,就可以看到我们的精美的时钟啦,哈哈







      

欢迎大家关注 Embeded小飞哥  ,我是小飞哥,让我快点遇到优秀的你,然后一起变得更加优秀,加油!!!
回复

使用道具 举报

发表回复

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

本版积分规则


联系客服 关注微信 下载APP 返回顶部 返回列表