我可以在Nano上同时运行128x64 OLED和CC3000突破吗?

时间:2017-11-22 20:30:50

标签: arduino

我正在建造一个小型温度站,我打算使用OLED屏幕进行即时检查,并使用网络界面进行远程检查。

我的计划是从Arduino调用托管服务器上的REST接口。

我开始构建传感器并写入Serial,然后我添加了屏幕并写入屏幕。当这有效时,我连接了 CC3000 突破并运行了 Adafruit buildtest,其工作正常。

然后,我尝试构建一个草图,该草图将连接到WiFi并使用数据托管一个小型服务器,然后碰到一堵砖墙(实际上是一个 SRAM 墙)。

在大量使用F()函数来减少string内存占用后,我仍然无法将草图放在内存中,我想这是由于库的大量使用,如下所示:

#include <SPI.h>
#include <Wire.h>
#include <Adafruit_GFX.h> // external screen library
#include <Adafruit_SSD1306.h> // external screen controller
#include <Adafruit_CC3000.h> // for wifi board
#include "DHT.h" // temperature sensor library
#include <aREST.h> // to make a REST server

因此我担心有三种可能性:

  • 我的代码太丑了,需要进行严格的返工以减少内存占用
  • 我可以使用一些不太密集的库(如果有的话)/编写特定的代码,因为我确切地知道我的硬件,而不是像良好的库这样的通用代码...
  • Nano V3对于屏幕和WiFi都太受限制了,我需要放弃一个(或者可能为屏幕添加另一个Nano,通过引脚连接......)

如果有人可以在这里排除某种可能性,那会有所帮助!

0 个答案:

没有答案