在進(jìn)行后續(xù)的ESP8266學(xué)習(xí)前,我們先來對(duì)OLED屏進(jìn)行驅(qū)動(dòng),為后續(xù)學(xué)習(xí)提供直觀的信息顯示。
1. 安裝驅(qū)動(dòng)庫(kù)
在之前的Arduino系列教程中,也有對(duì)OLED進(jìn)行驅(qū)動(dòng)的示例。這里我們依然使用「Adafruit_SSD1306」驅(qū)動(dòng)庫(kù)。
在Arduino IDE中點(diǎn)擊「項(xiàng)目」—「加載庫(kù)」—「管理庫(kù)」,查找選擇最新版本,點(diǎn)擊安裝,然后在彈出的對(duì)話框中選擇Install all,安裝全部的關(guān)聯(lián)庫(kù)。
安裝驅(qū)動(dòng)庫(kù)
2.硬件連接
這里使用IIC驅(qū)動(dòng)屏,在IOT Kit開發(fā)板上,ESP8266的GPIO4和GPIO5分別通過跳線帽連接到OLED屏的SDA和SCL引腳。
IOT Kit連接
3.編程下載
在Arduino IDE中新建sketch,拷貝如下代碼并保存。
/*
* oled
* ESP8266驅(qū)動(dòng)OLED屏
*/
#include
#include
#include
Adafruit_SSD1306 oled(128, 64, &Wire,-1);
void setup()
{
oled.begin(SSD1306_SWITCHCAPVCC,0x3C);
oled.setTextColor(WHITE);//開像素點(diǎn)發(fā)光
oled.clearDisplay();//清屏
oled.setTextSize(1); //設(shè)置字體大小
oled.setCursor(35, 5);//設(shè)置顯示位置
oled.println("-TonyCode-");
oled.setTextSize(2);//設(shè)置字體大小
oled.setCursor(15, 30);//設(shè)置顯示位置
oled.println("OLED TEST");
oled.display(); // 開顯示
}
void loop() {}
電腦連接開發(fā)板,在「工具」—「開發(fā)板」—「端口」中選擇正確的端口號(hào),點(diǎn)擊上傳,程序編譯并上傳。
程序下載
上傳完成后,可以看到OLED可以顯示了。
實(shí)驗(yàn)現(xiàn)象
4. 顯示W(wǎng)iFi信息
在完成對(duì)OLED屏的驅(qū)動(dòng)后,結(jié)合前篇連接網(wǎng)絡(luò)的例程,我們就可以在OLED屏上查看連網(wǎng)信息了。
拷貝如下程序編譯上傳,之前在串口顯示的連網(wǎng)信息就可以在OLED屏上顯示了。
/*
* oled_infor
* OLED顯示連網(wǎng)信息
*/
#include
#include
#include
#include
const char* ssid = "your-ssid";//連接WIFI名(SSID)
const char* password = "your-password";//WIFI密碼
Adafruit_SSD1306 oled(128, 64, &Wire,-1);
void setup()
{
oled.begin(SSD1306_SWITCHCAPVCC,0x3C);
oled.setTextColor(WHITE);//開像素點(diǎn)發(fā)光
oled.clearDisplay();//清屏
oled.setTextSize(1); //設(shè)置字體大小
oled.setCursor(15, 5);//設(shè)置顯示位置
oled.println("WiFi Information");
oled.setCursor(2, 20);//設(shè)置顯示位置
WiFi.begin(ssid,password);//啟動(dòng)網(wǎng)絡(luò)連接
while (WiFi.status() != WL_CONNECTED)//檢測(cè)網(wǎng)絡(luò)是否連接成功
{
delay(500);
oled.print(".");//設(shè)置顯示位置
oled.display(); // 開顯示
}
oled.setTextSize(1);//設(shè)置字體大小
oled.setCursor(2, 35);//設(shè)置顯示位置
oled.println("Connected,IP address:");
oled.println();
oled.println(WiFi.localIP());
oled.display(); // 開顯示
}
void loop() {}
實(shí)驗(yàn)現(xiàn)象
-
OLED屏
+關(guān)注
關(guān)注
0文章
162瀏覽量
21348 -
開發(fā)板
+關(guān)注
關(guān)注
25文章
5683瀏覽量
104905 -
GPIO
+關(guān)注
關(guān)注
16文章
1280瀏覽量
54132 -
Arduino
+關(guān)注
關(guān)注
190文章
6498瀏覽量
192255 -
ESP8266
+關(guān)注
關(guān)注
51文章
965瀏覽量
47435
發(fā)布評(píng)論請(qǐng)先 登錄
將OLED顯示屏與NodeMCU ESP8266連接的方法
ESP8266驅(qū)動(dòng)OLED顯示屏的方法
ESP8266 nodemcu使用arduino編程點(diǎn)亮OLED測(cè)試

ESP8266(NodeMCU)OLED的使用

正點(diǎn)原子ESP8266的使用

esp8266 nodemcu oled_esp8266開發(fā)筆記(二):OLED顯示屏制作網(wǎng)絡(luò)時(shí)鐘

SSD1306 OLED上的ESP8266 NTP時(shí)鐘

esp8266驅(qū)動(dòng)電機(jī)

評(píng)論