本帖最后由 ddllxxrr 于 2015-10-5 17:32 编辑
我很早就从淘宝拍了两块SSD1306的OLED的显示屏。今天没有事了,拿出来跑跑,本来以为上午就搞定。搞了一天。原因是第一个OLED开焊了。
就是下边这款,卖家么我不打了,有做广告的味道。。。。。
搞了一天是因为我买了两块,我拿出第一块怎么也点不亮。我又去问渡娘。也下了例程。从上午一直到下午2点。
我有点**眼了。我那出了我的示波器去查,泥妈好像有波形。我又到别的坛子下来人家跑过的例程,也不亮。
我这才想到换一个OLED,居然亮了。我这次开仓放粮我把我用到的所有软件都传一下,省得大家再找哈。
那个坏屏,我咨询了卖家。卖家态度老好了,让我自己修一下。我说怎么修?他说用烙铁焊一下后边的屏的排线。
听人劝吃饱饭,我就细心地焊哈,但我焊了两遍都不好用。我正要发火时,突然想到用万用表测一下。
我测第二个管脚时好像万用表响得很吃力。我就象蜘蛛拉丝似的焊。终于焊好。
我手里现在有两个好OLED屏啦。
卖家说我技术八错。虽然谦虚了一下,但心里美啊。
书归正转哈:
我用D21是因为板子放久了不用一下不好,我就拿出来用了,就像军队没事时拉练一样。所以就用D21了
先建空工程然后加入DELAY延时模块。
管脚及高低电平定义如下:
#define SSD1306_DIN_PIN PIN_PB22
#define SSD1306_CLK_PIN PIN_PB23
#define SSD1306_CS_PIN PIN_PB17
#define SSD1306_DC_PIN PIN_PB30
#define SSD1306_RES_PIN PIN_PA27
#define u8 unsigned char
#define u32 uint32_t
//-----------------OLED端口定义----------------
#define OLED_SCLK_Clr() port_pin_set_output_level(PIN_PB23,0)//CLK
#define OLED_SCLK_Set() port_pin_set_output_level(PIN_PB23,1)
#define OLED_SDIN_Clr() port_pin_set_output_level(PIN_PB22,0)//DIN
#define OLED_SDIN_Set() port_pin_set_output_level(PIN_PB22,1)
#define OLED_RST_Clr() port_pin_set_output_level(PIN_PA27,0)//RES
#define OLED_RST_Set() port_pin_set_output_level(PIN_PA27,1)
#define OLED_DC_Clr() port_pin_set_output_level(PIN_PB30,0)//DC
#define OLED_DC_Set() port_pin_set_output_level(PIN_PB30,1)
#define OLED_CS_Clr() port_pin_set_output_level(PIN_PB17,0)//CS
#define OLED_CS_Set() port_pin_set_output_level(PIN_PB17,1)
#define OLED_CMD 0 //写命令
#define OLED_DATA 1 //写数据
还有一个关键是管脚初始化:
struct port_config config_port_pin;
port_get_config_defaults(&config_port_pin);
config_port_pin.direction=PORT_PIN_DIR_OUTPUT;
config_port_pin.PORT_PIN_PULL_UP;
port_pin_set_config(SSD1306_DIN_PIN,&port_pin_set_config);
port_pin_set_config(SSD1306_CLK_PIN PIN_PB23,&port_pin_set_config);
port_pin_set_config(SSD1306_CS_PIN PIN_PB17,&port_pin_set_config);
port_pin_set_config(SSD1306_DC_PIN PIN_PB30,&port_pin_set_config);
port_pin_set_config(SSD1306_RES_PIN PIN_PA27,&port_pin_set_config);
然后我把所有的OLED有关的统统放入一个目录哈:这样比较方便。
打包哈省得大家找:
GccBoardProject3.rar
(3.8 MB)
最后的运行结果:
全部连线:
取模软件:
PCtoLCD2002.zip
(907.5 KB)
这个取模软件按下图配置就行:
|