极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 22673|回复: 7

求助SSD1306的oled点不亮

[复制链接]
发表于 2015-12-31 22:55:30 | 显示全部楼层 |阅读模式

刚刚到手的,如图


我用的是uno
clk接了13 mosi接了12 dc接了9 cs接了8

代码


  1. #include "U8glib.h"
  2. U8GLIB_SSD1306_128X64 u8g(13, 12, 9, 8);

  3. void draw(void) {
  4.   
  5.   u8g.setFont(u8g_font_unifont);

  6.   u8g.drawStr( 0, 22, "Hello World!");
  7. }

  8. void setup(void) {
  9.    
  10.   
  11.   if ( u8g.getMode() == U8G_MODE_R3G3B2 ) {
  12.     u8g.setColorIndex(255);     // white
  13.   }
  14.   else if ( u8g.getMode() == U8G_MODE_GRAY2BIT ) {
  15.     u8g.setColorIndex(3);         // max intensity
  16.   }
  17.   else if ( u8g.getMode() == U8G_MODE_BW ) {
  18.     u8g.setColorIndex(1);         // pixel on
  19.   }
  20.   else if ( u8g.getMode() == U8G_MODE_HICOLOR ) {
  21.     u8g.setHiColorByRGB(255,255,255);
  22.   }
  23. }

  24. void loop(void) {
  25.   // picture loop
  26.   u8g.firstPage();  
  27.   do {
  28.     draw();
  29.   } while( u8g.nextPage() );
  30.    
  31.   // rebuild the picture after some delay
  32.   delay(50);
  33. }
复制代码


oled没反应 TAT

商品链接
https://item.taobao.com/item.htm?spm=a1z09.2.0.0.QS5c82&id=40534977779&_u=v4ovuec2d71

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

发表于 2015-12-31 23:54:01 | 显示全部楼层
最好用卖方,有时发光板后电路不一样所用的驱动也不一样的。
回复 支持 反对

使用道具 举报

发表于 2016-1-1 23:43:21 | 显示全部楼层
本帖最后由 老来疯 于 2016-1-1 23:47 编辑

U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9);        // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9

u8g  的这个驱动语句 是属于软件模拟 SPI 驱动方式,对于括号里面的  引脚编号不做限制,只要是数字端口就行,但是,他的 引脚编号顺序必须正确,就像他在 其后的 注释语句里 说明的那样,不能搞错。

括号里面的数字按顺序: 1. SCK= 时钟,  2.  MOSI=主出从入,  3.  CS=片选 也称 SS,你的屏是 CS1,   4.  A0=数据/命令 也称 DC,

你把  第 3  和 第 4 脚 接反了。
回复 支持 反对

使用道具 举报

发表于 2016-1-3 11:09:50 | 显示全部楼层
你的接腳是不是沒有焊接啊
回复 支持 反对

使用道具 举报

发表于 2016-1-8 13:56:23 | 显示全部楼层
我的oled是iic的,用u8glib也是死活不亮,用卖家提供的Adafruit_ssd1306就可以点亮,我也没找到原因
我还在继续试验中
回复 支持 反对

使用道具 举报

发表于 2016-12-27 08:20:53 | 显示全部楼层
lovezypj 发表于 2016-1-8 13:56
我的oled是iic的,用u8glib也是死活不亮,用卖家提供的Adafruit_ssd1306就可以点亮,我也没找到原因
我还 ...

同病相怜  感觉Adafruit_ssd1306简单多了
回复 支持 反对

使用道具 举报

发表于 2017-1-22 23:29:06 来自手机 | 显示全部楼层
楼主买了不看说明书吗?这个液晶板采用spi接线,必须知道ret重启键的引脚,否则永远点不亮。
回复 支持 反对

使用道具 举报

发表于 2017-2-20 14:51:15 | 显示全部楼层
本帖最后由 galaxy 于 2017-2-20 14:57 编辑
  1. // 必需用 1.0  版才能過

  2. #include "U8glib.h"

  3. // setup u8g object, please remove comment from one of the following constructor calls
  4. // IMPORTANT NOTE: The complete list of supported devices is here: http://code.google.com/p/u8glib/wiki/device

  5. //U8GLIB_NHD27OLED_BW u8g(13, 11, 10, 9);       // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9
  6. //U8GLIB_NHD27OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9
  7. //U8GLIB_NHD27OLED_GR u8g(13, 11, 10, 9);       // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9
  8. //U8GLIB_NHD27OLED_2X_GR u8g(13, 11, 10, 9);  // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9
  9. //U8GLIB_NHD31OLED_BW u8g(13, 11, 10, 9);       // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9
  10. //U8GLIB_NHD31OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9
  11. //U8GLIB_NHD31OLED_GR u8g(13, 11, 10, 9);       // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9
  12. //U8GLIB_NHD31OLED_2X_GR u8g(13, 11, 10, 9);  // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9
  13. //U8GLIB_DOGS102 u8g(13, 11, 10, 9);                    // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9
  14. //U8GLIB_DOGM132 u8g(13, 11, 10, 9);                    // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9
  15. //U8GLIB_DOGM128 u8g(13, 11, 10, 9);                    // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9
  16. //U8GLIB_ST7920_128X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, U8G_PIN_NONE, U8G_PIN_NONE, 17, 16);   // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16
  17. //U8GLIB_ST7920_128X64 u8g(18, 16, 17, U8G_PIN_NONE);                  // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17
  18. //U8GLIB_ST7920_192X32 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, U8G_PIN_NONE, U8G_PIN_NONE, 17, 16);   // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16
  19. //U8GLIB_ST7920_192X32 u8g(18, 16, 17, U8G_PIN_NONE);                  // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17
  20. //U8GLIB_ST7920_192X32 u8g(13, 11, 10, U8G_PIN_NONE);                  // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10
  21. //U8GLIB_ST7920_192X32 u8g(10, U8G_PIN_NONE);                  // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10, HW SPI
  22. //U8GLIB_LM6059 u8g(13, 11, 10, 9);                    // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9
  23. //U8GLIB_LM6063 u8g(13, 11, 10, 9);                    // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9
  24. //U8GLIB_DOGXL160_BW u8g(10, 9);            // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9
  25. //U8GLIB_DOGXL160_GR u8g(13, 11, 10, 9);             // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9
  26. //U8GLIB_DOGXL160_2X_BW u8g(13, 11, 10, 9);            // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9
  27. //U8GLIB_DOGXL160_2X_GR u8g(13, 11, 10, 9);             // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9
  28. //U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8);                    // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8
  29. //U8GLIB_PCF8812 u8g(13, 11, 10, 9, 8);                    // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8
  30. //U8GLIB_KS0108_128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs1=14, cs2=15,di=17,rw=16
  31. //U8GLIB_T6963_240X128 u8g(8, 9, 10, 11,  4, 5, 6, 7,  17, 14, 15, U8G_PIN_NONE, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 wr=en=17, cs=14, a0=di=15,rd=U8G_PIN_NONE,reset=16
  32. //U8GLIB_LC7981_160X80 u8g(8, 9, 10, 11, 4, 5, 6, 7,  18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16
  33. //U8GLIB_LC7981_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7,  18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16
  34. //U8GLIB_LC7981_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7,  18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16
  35. //U8GLIB_ILI9325D_320x240 u8g(18,17,19,U8G_PIN_NONE,16 );  // 8Bit Com: D0..D7: 0,1,2,3,4,5,6,7 en=wr=18, cs=17, rs=19, rd=U8G_PIN_NONE, reset = 16
  36. //U8GLIB_SBN1661_122X32 u8g(8,9,10,11,4,5,6,7,14,15, 17, U8G_PIN_NONE, 16); ; // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 cs1=14, cs2=15,di=17,rw=16,reset = 16
  37. //U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9);             // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9
  38. //U8GLIB_SSD1306_128X64 u8g(10, 9);             // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are  SCK = 13 and MOSI = 11)
  39. //U8GLIB_SSD1309_128X64 u8g(13, 11, 10, 9);                    // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9
  40. //U8GLIB_SSD1327_96X96_GR u8g(U8G_I2C_OPT_NONE);             // I2C
  41. //U8GLIB_SSD1327_96X96_2X_GR u8g(U8G_I2C_OPT_NONE);             // I2C
  42. //U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8);                    // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8
  43. //U8GLIB_NHD_C12832 u8g(13, 11, 10, 9, 8);                    // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8

  44. U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); //這一行就是定義 SSD1306 的介面方式

  45. void draw(void) {
  46.   // graphic commands to redraw the complete screen should be placed here  
  47.   
  48.   // assign default font
  49.   u8g.setFont(u8g_font_unifont);
  50.   
  51.   // pointer to strings in flash memory can be stored in a special type
  52.   const __FlashStringHelper *flash_ptr;
  53.   
  54.   // the result of the F() macro can be assigned to this pointer
  55.   flash_ptr = F("Hello World!");
  56.   
  57.   // this pointer can be used as argument to the draw procedures
  58.   u8g.drawStr( 0+1, 20+1, flash_ptr);
  59.   u8g.drawStr( 0, 20, flash_ptr);
  60.   
  61.   // of course, the F() macro can be used directly
  62.   u8g.drawStr( 0, 40, F("PROGMEM"));

  63. }

  64. void setup(void) {
  65.   // flip screen, if required
  66.   // u8g.setRot180();
  67. }

  68. void loop(void) {
  69.   // picture loop
  70.   u8g.firstPage();  
  71.   do {
  72.     draw();
  73.   } while( u8g.nextPage() );
  74.   
  75.   // rebuild the picture after some delay
  76.   delay(500);
  77. }
复制代码


這是 u8g 庫裡面的範例,我試過可以用 (iic 的 SSD1306 可以正常顯示)
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-3-29 15:18 , Processed in 0.044188 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表