这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » STM32 » 【炫Q-STM32】NUCLEO L053R8 边玩边学(三)-点亮OLED

共9条 1/1 1 跳转至

【炫Q-STM32】NUCLEO L053R8 边玩边学(三)-点亮OLED

专家
2015-11-12 22:41:38     打赏

其实上一篇是补的作业,顺便鄙视卓大的帖子都是文字,没有图片,听说可以用屏幕,就翻箱倒柜,可以一块屏幕都没找到,最后找到一块OLED的屏幕,据说升值了,管他呢,IIC接口的,好了就是它了



专家
2015-11-12 22:43:45     打赏
2楼

这种OLED屏的主控芯片一般是SSD1306,听说不用移植,直接搜库“SSD1306”


专家
2015-11-12 22:45:25     打赏
3楼

Adafruit这个标志比较熟悉,好吧就它了,点进去,导入库



专家
2015-11-12 22:46:45     打赏
4楼

下边的代码稍做修改,只要是IIC的引脚要接对,没有RST随便写了一个

/*
 *  Copyright (c) 2012 Neal Horman - http://www.wanlink.com
 *  
 *  License: MIT open source (http://opensource.org/licenses/MIT)
 *      Summary;
 *      Use / modify / distribute / publish it how you want and 
 *      if you use it, or don't, you can't hold me liable for how
 *      it does or doesn't work.
 *      If it doesn't work how you want, don't use it, or change
 *      it so that it does work.
 */
 
#include "mbed.h"
#include "Adafruit_SSD1306.h"
 
DigitalOut myled(LED1);
 
class I2CPreInit : public I2C
{
public:
    I2CPreInit(PinName sda, PinName scl) : I2C(sda, scl)
    {
        frequency(400000);
        start();
    };
};
 
I2CPreInit gI2C(I2C_SDA, I2C_SCL);
Adafruit_SSD1306_I2c gOled2(gI2C,D13,0x78,64,128);
 
int main()
{   uint16_t x=0;
 
    gOled2.printf("%ux%u OLED Display\r\n", gOled2.width(), gOled2.height());
    
    while(1)
    {
        myled = !myled;
        gOled2.printf("%u\r",x);
        gOled2.display();
        x++;
        wait(1.0);
    }
}

 


专家
2015-11-12 22:48:18     打赏
5楼

就这么简单,编译,下载,OLED就亮了起来,有图有真相


专家
2015-11-12 22:50:44     打赏
6楼
好吧,也可以修改库,不过暂时没有这个水平,倒是可以考虑尝试做一些自己的画面,慢慢学习吧

专家
2015-11-12 22:52:36     打赏
7楼
竟然鄙视我

助工
2015-11-12 22:56:53     打赏
8楼
来膜拜

专家
2015-11-12 23:23:35     打赏
9楼
来膜拜

共9条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]