5109| 2
|
[入门教程] 【mind+】物联时钟 |
本帖最后由 rzegkly 于 2020-9-26 16:20 编辑 当我们看到太阳升起时,远在英国的人还在睡梦中。 随着地球自西向东自转,一天中太阳东升西落, 在太阳照射到的地方是白天,太阳照射不到的地方就黑夜, 因此,处在不同时区的地方时不同,时差不同。 我们可以借助使用掌控板板载的无线上网 WIFI,制作一个物联网手表, 1.使用掌控板板载的无线上网 WIFI功能模块,通过网络同步自动获取同步时间, 2.如果网络连接成功,RGB灯绿亮,音乐JUMP_up响起,时间显示到 OLED 显示屏上。 3.OLED 显示屏分别显示:年、月、日、星期、距2021元旦的天数 二、【环境】 1、硬件: 掌控板 2、软件:Mind+ 三、【地理知识】 1.时差: 随着地球自西向东自转,一天中太阳东升西落,在太阳照射到的地方是白天,太阳照射不到的地方就黑夜,因此,处在不同时区的地方时不同,两个地区地方时之间的差别称作为时差。 2.时区(Time Zone) 时区是地球上的区域使用同一个时间定义。1884年在华盛顿召开国际经度会议时,为了克服时间上的混乱,现今全球一共分为 24 个时区,我国土地辽阔,跨越 5 个时区,但都统一采用首都北京所在的东八区的区时作为全国时间,也就是我们常说的北京时间。授时服务器可以自行指定,一般默认为“ntp.ntsc.ac.cn”。 四、配置: 1.进入Mind+,用数据线将掌控板与电脑连接com27, 2.在模块区点击右下角添加扩展按钮,选择——将程序下载到掌控板运行 五、编程 (1)获取时间 在生活中,电脑或手机设备想要连接无线网络,只需要打开无线网络界面,选择一个 WiFi,输入正确的密码就能成功联网了。掌控板联网的原理相同的,但由于掌控板自身无法检测 WiFi进行输入密码连接网络,因此需要使用指令来编程控制连接网络。 在掌控板的左边 WiFi 模块区中有连接 WiFi 的指令,在这个指令中输入需要连接的 WiFi 名称,和对应的正确密码,就能实现无线网络的连接了。连接上网络后,接下来就需要让掌控板获取网络上的时间源,这个时间源就是网络中按照国际标准提供的可靠时间。在 WiFi 模块中,可以找到“同步网络时间”的指令,通过选择不同的时区,来获取当前地区的时间。 (2)显示时间 获取到的时间通过 OLED 显示屏显示出来,为了确保显示正常不会出现其他内容叠加,需要先将 OLED 显示屏原本的内容清空。然后使用“显示文本”的指令进行显示内容,显示的位置 x、y 自行设置,显示的内容即为获取到的时间,在掌控板传感器模块中找到“本地时间”指令,在这个指令中可以选择年月日时分秒等数值。 需要注意的是,“本地时间”指令获取到的是具体的时间数值,属于数字类型,“显示文本”指令中的文本框只能放字符串类型的内容,也就是文本,两者属性不同,所以,“本地时间”指令是无法直接放入“显示文本”指令的文本框中。 因此要使用数据类型转换的指令,将“本地时间”数字类型指令转化为字符串类型,这样就可以放到“显示文本”指令中的文本框了。这样显示出来的便是具体的年份数值,如果要显示“X 年”的格式,则需要在数值后面加多一个“年”字,调整两者之间合适的显示位置 x、y。 同样,如果想要显示“X 年 X 月 X 日 X : X : X”的格式,则把显示的内容按顺序排好,然后对每个显示内容的位置调整到合适,避免内容出现重叠现象。 (3)显示星期 由于星期数在python中从0--6,即0代表星期一 ;6代表星期日 列表变量 赋值给 week,定义列表用单引号和逗号隔开,即'星期一','星期二','星期三','星期四','星期五','星期六','星期日' 本地时间星期从变量week中调用显示出来。 说明 : 设置好显示内容后,一定要加上“ OLED 显示生效”的指令,文本内容才能正常显示出来。另外,时间是在不断变化的,OLED 屏幕上显示的内容也需要不断更新,因此,显示内容和显示生效的指令都要加上重复执行指令,才能保证时间的实时更新。 这样便制作好了一个物联时钟。 |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed