But, the initial action of SPI and Graphics module must be in the onInit() function. why?
And the RST pin must be connected! The cs option must be defined too.
var g;
function start(){
// write some text
g.drawString("Hello Espruino!", 2, 2);
// write to the screen
g.flip();
}
function onInit(){
SPI2.setup({sck:18, mosi:23});
g = require("mySSD1306").connectSPI(SPI2, 16 /*DC*/, 12 /*RST*/, start, {cs:17});
}
save();
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
In SSD1306.js, connectSPI() has some codes not work well on ESP32, such as digitalPulse(rst,0,10), cs.reset() and cs.set() .
Just rewrite some lines:
cs.reset() --> digitalWrite(cs,0)
cs.set() --> digitalWrite(cs,1)
digitalPulse(rst,0,10) --> for(var i = 0; i<10; i++){ digitalWrite(rst,0); digitalWrite(rst,1); }
:-)
The OLED module works well.
But, the initial action of SPI and Graphics module must be in the onInit() function. why?
And the RST pin must be connected! The cs option must be defined too.