Funpack第十二期-基于 Wio Terminal实现一个天气预报仪
Funpack第十二期- 基于 Wio Terminal实现一个天气预报仪
标签
嵌入式系统
安先生
更新2022-01-10
544

开发板介绍
Wio Terminal 是基于SAMD51的微控制器,具有 Realtek RTL8720DN 支持的无线连接,与Arduino和MicroPython兼容。它的运行速度为 120MHz (最高可达200MHz), 4MB 外部闪存和 192K

功能介绍
制作一个自动联网的天气预报仪,在设计界面显示温湿度、天气情况、空气质量以及未来三天内的天气变化.

升级wifi内核 

首先需要升级wifi core 到最新版本。可以理解为 给8762D升级内核。

升级教程在这里 Overview - Seeed Wiki (seeedstudio.com)

核心升级步骤:

  • 连接usb到电脑
  • 按照如下指令:
cd 到项目根目录
git clone https://github.com/Seeed-Studio/ambd_flash_tool
cd ambd_flash_tool
ambd_flash_tool.exe erase
\ambd_flash_tool.exe flash
  • 等待重启
  • 按照如下工程 观察验证是否正常(非常重要 )
#include "rpcWiFi.h"
 
void setup() {
    Serial.begin(115200);
    while(!Serial); // Wait to open Serial Monitor
    Serial.printf("RTL8720 Firmware Version: %s", rpc_system_version());
}
 
void loop() {
}

 

依赖库 如下:

rpcWiFi
seeed_arduino_lcd

核心代码

  LCD刷新显示

  tft.begin();
  tft.setRotation(3);
 
  tft.setFreeFont(FF21);
  tft.setTextColor(TFT_WHITE,TFT_BLACK);
  tft.drawString("Shenzhen:",0,0);//prints string at (70,80)
  tft.drawString("temperature:",0,48);  
  tft.drawString("humidity:",180,48);

  tft.drawString("AQI:",0,25);
  tft.drawString("PM25:",95,25);
  tft.drawString("AIR:",200,25);
  tft.drawLine(0,85,320,85,TFT_YELLOW );
  tft.drawLine(320/3,85,320/3,240,TFT_YELLOW );
  tft.drawLine(320*2/3,85,320*2/3,240,TFT_YELLOW );
  tft.setTextColor(TFT_GREEN,TFT_BLACK);

wifi连接

  wifiMulti.addAP(ssid, password);

  Serial.println("Connecting Wifi...");
  if (wifiMulti.run() == WL_CONNECTED) {
      Serial.println("");
      Serial.println("WiFi connected");
      Serial.println("IP address: ");
      Serial.println(WiFi.localIP());
      Serial.println(WiFi.SSID());
  }


功能展示

wifi获取到数据显示 与未获取到数据时如下图所示

FtdIIwbeUJ25beq7n5VNJazJv6nMFrrlhsVQkLqIGY97VgcMt8nGCNI9

心得体会
非常好的活动  非常好的开发板 期待下一次惊喜

附件下载
demo.zip
团队介绍
安迪 嵌入式爱好者
评论
0 / 100
查看更多
目录
硬禾服务号
关注最新动态
0512-67862536
info@eetree.cn
江苏省苏州市苏州工业园区新平街388号腾飞创新园A2幢815室
苏州硬禾信息科技有限公司
Copyright © 2023 苏州硬禾信息科技有限公司 All Rights Reserved 苏ICP备19040198号