本帖最后由 小张 于 2014-6-6 23:43 编辑
有个OLED,之前的显示部分正常了,上面的字库IC使用样例程序也能读出来,现在想将字库的查询指令写到库里面,增加用到的4个引脚。
原来.h库中只有显示部分的引脚定义如下:
class SSD1306 {
public:
SSD1306(int8_t SID, int8_t SCLK, int8_t DC, int8_t RST, int8_t CS) :sid(SID), sclk(SCLK), dc(DC), rst(RST), cs(CS) {}
SSD1306(int8_t SID, int8_t SCLK, int8_t DC, int8_t RST) :sid(SID), sclk(SCLK), dc(DC), rst(RST), cs(-1) {}
。
。
。
private:
int8_t sid, sclk, dc, rst, cs;
现在原来的基础上增加4个,
class SSD1306 {
public:
75 SSD1306(int8_t SID, int8_t SCLK, int8_t DC, int8_t RST, int8_t CS,int8_t ROMIN, int8_t ROMOUT, int8_t ROMSCK, int8_t ROMCS) :sid(SID), sclk(SCLK), dc(DC), rst(RST), cs(CS) ,romin(ROMIN), romout(ROMOUT), romsck(ROMSCK), romcs(ROMCS){}
76 SSD1306(int8_t SID, int8_t SCLK, int8_t DC, int8_t RST, int8_t ROMIN, int8_t ROMOUT, int8_t ROMSCK, int8_t ROMCS) :sid(SID), sclk(SCLK), dc(DC), rst(RST), cs(-1) , romin(ROMIN), romout(ROMOUT), romsck(ROMSCK), romcs(ROMCS){}
。
。
。
private:
int8_t sid, sclk, dc, rst, cs, romin, romout, romsck, romcs;
在程序中定义如下:
#define OLED_DC 10
#define OLED_CS 12
#define OLED_CLK 13
#define OLED_MOSI 11
#define OLED_RESET 9
#define ROMIN 3 /*字库IC接口定义:Rom_IN就是字库IC的SI*/
#define ROMOUT 2 /*字库IC接口定义:Rom_OUT就是字库IC的SO*/
#define ROMSCK 4 /*字库IC接口定义:Rom_SCK就是字库IC的SCK*/
#define ROMCS 5 /*字库IC接口定义Rom_CS就是字库IC的CS#*/
SSD1306 oled(OLED_MOSI, OLED_CLK, OLED_DC, OLED_RESET, OLED_CS, ROMIN, ROMOUT, ROMSCK, ROMCS);
编译时指示
In file included from SSD1306.ino:13:
I:\Program Files\arduino-1.5.6-r2\libraries\SSD1306/SSD1306.h:75: error: expected ',' or '...' before numeric constant
I:\Program Files\arduino-1.5.6-r2\libraries\SSD1306/SSD1306.h:76: error: expected ',' or '...' before numeric constant
SSD1306.ino:23: error: no matching function for call to 'SSD1306::SSD1306(int, int, int, int, int, int, int, int, int)'
I:\Program Files\arduino-1.5.6-r2\libraries\SSD1306/SSD1306.h:76: note: candidates are: SSD1306::SSD1306(int8_t, int8_t, int8_t, int8_t, int8_t)
I:\Program Files\arduino-1.5.6-r2\libraries\SSD1306/SSD1306.h:75: note: SSD1306::SSD1306(int8_t, int8_t, int8_t, int8_t, int8_t, int8_t)
I:\Program Files\arduino-1.5.6-r2\libraries\SSD1306/SSD1306.h:73: note: SSD1306::SSD1306(const SSD1306&) |