关于esp8266 OLED气象图标显示和对应关系
先把资料备上:
1.开源气象站资料。https://codeload.github.com/ThingPulse/esp8266-weather-station/zip/master
2.Meteocons weather icons,https://www.alessioatzeni.com/meteocons/
3.和风天气图标代码同样也是和调用心知天气的图标代码使用。https://dev.qweather.com/docs/start/icons/
心知天气现象图标地址:https://docs.seniverse.com/api/start/code.html
和风气象图标:https://github.com/qwd/WeatherIcon
统一调用的代码格式:
其实这些图标取模数据都封装在了WeatherStationFonts.h,,在开源的气象站资源里也包含有,在做网络时钟的时候是必不可少的库,明白了是如何调用的,就再也不用担心在显示屏上,显示N/A是个什么鬼。
String HeFeng::getMeteoconIcon(String cond_code){
if(cond_code=="100"||cond_code=="9006"){return "B";}
if(cond_code=="999"){return ")";}
if(cond_code=="104"){return "D";}
if(cond_code=="500"){return "E";}
if(cond_code=="503"||cond_code=="504"||cond_code=="507"||cond_code=="508"){return "F";}
if(cond_code=="499"||cond_code=="901"){return "G";}
if(cond_code=="103"){return "H";}
if(cond_code=="502"||cond_code=="511"||cond_code=="512"||cond_code=="513"){return "L";}
if(cond_code=="501"||cond_code=="509"||cond_code=="510"||cond_code=="514"||cond_code=="515"){return "M";}
if(cond_code=="102"){return "N";}
if(cond_code=="213"){return "O";}
if(cond_code=="302"||cond_code=="303"){return "P";}
if(cond_code=="305"||cond_code=="308"||cond_code=="309"||cond_code=="314"||cond_code=="399"){return "Q";}
if(cond_code=="306"||cond_code=="307"||cond_code=="310"||cond_code=="311"||cond_code=="312"||cond_code=="315"||cond_code=="316"||cond_code=="317"||cond_code=="318"){return "R";}
if(cond_code=="200"||cond_code=="201"||cond_code=="202"||cond_code=="203"||cond_code=="204"||cond_code=="205"||cond_code=="206"||cond_code=="207"||cond_code=="208"||cond_code=="209"||cond_code=="210"||cond_code=="211"||cond_code=="212"){return "S";}
if(cond_code=="300"||cond_code=="301"){return "T";}
if(cond_code=="400"||cond_code=="408"){return "U";}
if(cond_code=="407"){return "V";}
if(cond_code=="401"||cond_code=="402"||cond_code=="403"||cond_code=="409"||cond_code=="410"){return "W";}
if(cond_code=="304"||cond_code=="313"||cond_code=="404"||cond_code=="405"||cond_code=="406"){return "X";}
if(cond_code=="101"){return "Y";}
return ")";
}
初一看,是不是感觉一脸懵的感觉,这Return这么多,,这20多个字母都指向深渊的感觉,有没有。
上一张字母和气象图标对照表,就茅塞顿开了。
看到气象图标下面对应的字母了没,这就是对应的关系表。
然后结合,气象网站API返回的气象值,当然你也可以通过直接输入浏览器,看返回json数据,这个我把程序烧录到esp8266里面之后,通过串口打印json返回的相关气象数据信息。
代码里面调用返回的对应字母就是“C”,在液晶屏幕上显示的就是150图标,对应Return返回的就是字母“C”。
这个文件资料在:https://github.com/qwd/WeatherIcon
在这个和风开发文档里也可以看到:https://dev.qweather.com/docs/start/icons/
知道气象图标和字母对照关系,在代码调用的时候,你就驾轻就熟,随心所欲了,知其然,知其所以然了。
天气气象图标对照表:
链接:https://pan.baidu.com/s/1Le4QlNL6wGFuRqdiu3Gqug
提取码:4hkc