PLATFORMIO学习文档之esp8266 驱动SSD1306 128x64OLED显示屏示例
创始人
2024-02-02 06:49:57
0

写文章也是为了记录自己的学习过程,顺便给后来人指指路,迷路了可别怪我~~~~~~
开发环境:PLATFORMIO

1、首先上一张我用的ESP8266开发板ESP-12E
在这里插入图片描述
在这里插入图片描述

首先新建一个工程,输入项目名称,选择自己所用的开发板,
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

U8G2_SSD1306_128X64_NONAME_1_SW_I2C u8g2(U8G2_R0, /* clock=SCL*/ 14, /* data=SDA*/ 2, /* reset=*/ U8X8_PIN_NONE); 

这里我选了一个时钟的示例程序如下所示,傻傻的复制过来一运行发现报错额,原来是需要根据自己的板子选择一个其驱动类
构造器的名字包括以下几方面:
U8G2是前缀,
SSD1306是显示器的驱动芯片型号,
128X64_NONAME显示器像素,
1表示缓存大小Buffer Size,可取如下:
1 保持一页的缓冲区,用于firstPage/nextPage的PageMode.
2 保持两页的缓冲区,用于firstPage/nextPage的PageMode…
F 获取整个屏幕的缓冲区,ram消耗大,一般用在ram空间比较大的arduino板子.
4W_SW_SPI表示的是Communication通信协议:
4W_SW_SPI 4-wire (clock, data, cs and dc) software emulated SPI
4W_HW_SPI 4-wire (clock, data, cs and dc) hardware SPI (based on Arduino SPI library)
2ND_4W_HW_SPI If supported, second 4-wire hardware SPI (based on Arduino SPI library)
3W_SW_SPI 3-wire (clock, data and cs) software emulated SPI
SW_I2C Software emulated I2C/TWI
HW_I2C Hardware I2C based on the Arduino Wire library
2ND_HW_I2C If supported, use second hardware I2C (Arduino Wire lib)
6800 8-bit parallel interface, 6800 protocol
8080 8-bit parallel interface, 8080 protocol

参数除了第一个,后面的看注释就知道是什么意思了,但要注意填写的数字是ESP8266的GPIOx的数字x。


#include 
#include #ifdef U8X8_HAVE_HW_SPI
#include 
#endif
#ifdef U8X8_HAVE_HW_I2C
#include 
#endif
//我的板子驱动类如下所示U8G2_SSD1306_128X64_NONAME_1_SW_I2C u8g2(U8G2_R0, /* clock=SCL*/ 14, /* data=SDA*/ 2, /* reset=*/ U8X8_PIN_NONE);   //  // End of constructor listvoid setup(void) {/* U8g2 Project: SSD1306 Test Board *///pinMode(10, OUTPUT);//pinMode(9, OUTPUT);//digitalWrite(10, 0);//digitalWrite(9, 0);		/* U8g2 Project: T6963 Test Board *///pinMode(18, OUTPUT);//digitalWrite(18, 1);	/* U8g2 Project: KS0108 Test Board *///pinMode(16, OUTPUT);//digitalWrite(16, 0);	/* U8g2 Project: LC7981 Test Board, connect RW to GND *///pinMode(17, OUTPUT);//digitalWrite(17, 0);	/* U8g2 Project: Pax Instruments Shield: Enable Backlight *///pinMode(6, OUTPUT);//digitalWrite(6, 0);	u8g2.begin();  
}uint8_t m = 24;void loop(void) {char m_str[3];strcpy(m_str, u8x8_u8toa(m, 2));		/* convert m to a string with two digits */u8g2.firstPage();do {u8g2.setFont(u8g2_font_logisoso62_tn);u8g2.drawStr(0,63,"9");u8g2.drawStr(33,63,":");u8g2.drawStr(50,63,m_str);} while ( u8g2.nextPage() );delay(1000);m++;if ( m == 60 )m = 0;
}

运行效果图
在这里插入图片描述

相关内容

热门资讯

喜欢穿一身黑的男生性格(喜欢穿... 今天百科达人给各位分享喜欢穿一身黑的男生性格的知识,其中也会对喜欢穿一身黑衣服的男人人好相处吗进行解...
发春是什么意思(思春和发春是什... 本篇文章极速百科给大家谈谈发春是什么意思,以及思春和发春是什么意思对应的知识点,希望对各位有所帮助,...
网络用语zl是什么意思(zl是... 今天给各位分享网络用语zl是什么意思的知识,其中也会对zl是啥意思是什么网络用语进行解释,如果能碰巧...
为什么酷狗音乐自己唱的歌不能下... 本篇文章极速百科小编给大家谈谈为什么酷狗音乐自己唱的歌不能下载到本地?,以及为什么酷狗下载的歌曲不是...
华为下载未安装的文件去哪找(华... 今天百科达人给各位分享华为下载未安装的文件去哪找的知识,其中也会对华为下载未安装的文件去哪找到进行解...
怎么往应用助手里添加应用(应用... 今天百科达人给各位分享怎么往应用助手里添加应用的知识,其中也会对应用助手怎么添加微信进行解释,如果能...
家里可以做假山养金鱼吗(假山能... 今天百科达人给各位分享家里可以做假山养金鱼吗的知识,其中也会对假山能放鱼缸里吗进行解释,如果能碰巧解...
四分五裂是什么生肖什么动物(四... 本篇文章极速百科小编给大家谈谈四分五裂是什么生肖什么动物,以及四分五裂打一生肖是什么对应的知识点,希...
一帆风顺二龙腾飞三阳开泰祝福语... 本篇文章极速百科给大家谈谈一帆风顺二龙腾飞三阳开泰祝福语,以及一帆风顺二龙腾飞三阳开泰祝福语结婚对应...
美团联名卡审核成功待激活(美团... 今天百科达人给各位分享美团联名卡审核成功待激活的知识,其中也会对美团联名卡审核未通过进行解释,如果能...