Specification:
- Model: DS12864OLED-3W
- Power Supply: 2.5V to 7.5V
- Power consumption: maximum 20mA when all dots light on
- Communication mode: UART/I2C/SPI, detect your setting automatically
- Receiving buffer: 256 bytes
- Work with all microcontroller and microprocessor
- Communication signal can work on 3.3V and 5.0V TTL
- Default setting: UART baud 9600bps, I2C 0x27 address
- UART baud (bps): 300, 1200, 2400, 4800, 9600, 14400, 19200, 28800, 38400, 57600, 115200, 203400, 406800.
|
- Pixels: 128x64, 0.23x0.23mm, high bright self light emitting
- Screen size: 29.4x14.7mm
- Product size: (WxHxD):33x28x4.8mm (1.2X1.1x0.19")
- Simple command sets, easy to remember
- Simple graphic engine integrated
- 7 preloaded fonts, font’s data structure full compatible with U8Glib
- 5 individual out put pins with High current sink/source 25 mA/25 mA, can drive LED/relay and more
|
Design the interface on this display by using Digole's online emulator in few minutes(https://www.digole.com/digole-emu.php)


HIGHLIGHT FUTURE:
- Works with 2.7V/3.3V/5.0V logic systems, 4bit/8bit/16bit/32bit micro-controllers. it EVEN works stand-alone.
-
Support serial (Hardware or Software): UART, I2C and SPI, set by the jumpers on PCB, support all four SPI mo.
-
7 fonts and graphic engine embedded, touch screen and flash chip drivers embedded(if touch screen or 2 to 16MB flash chip installed), custom fonts can be downloaded to the module's flash.
-
Firmware upgrade-able and custom-able: Visit Digole's firmware upgrade page.
-
High level commands set (61 commands total) are easy to remember and understand, eg.: send 5 bytes: "CCabc" will draw a ratio=c pixels circle at coordinate (a,b) on the screen; 5 bytes "DNALL" will put the module to sleep mode(<0.1mA), and more...
-
Online forum and technical support: Visit the Forum of Digole Serial Dispaly Module
-
Video clips on youtube.
-
Program manual, sample code and library for multiple platform.
-
Multiple online tools to make custom fonts, convert images and more, accelerate product development.


AMOLED vs PMOLED
These terms relate to the driving method of the OLED display. A PMOLED (Passive-Matrix OLED) is limited in size and resolution, but is cheaper and easier to make than an AMOLED (which uses an Active-Matrix). An AMOLED uses an active-matrix TFT array and storage capacitors. While these displays are more efficient and can be made large, they are also more complicated to make.
PMOLED displays are used in mp3 players or secondary displays on cell phones while AMOLEDs are used in smartphone displays, digital cameras and TVs.
Raspberry Pi demo code (Contribute by Javier Sagrera, Thanks!)
// Pin-out using I2C
// Raspberry Pi -- Digole LCD
// 1 - 3.3.v -- 5 VCC
// 3 - SDA0 -- 4 DATA
// 5 - SCL0 -- 3 SCK
// 6 - GND -- 1 GND
/*
// Communication set up command
* "SB":Baud (ascII bytes end with 0x00/0x0A/0x0D) -- set UART Baud Rate
* "SI2CA":Address(1 byte <127) -- Set I2C address, default address is:0x27
* "DC":1/0(1byte) -- set config display on/off, if set to 1, displayer will display current commucation setting when power on
// Text Function command
* "CL": -- Clear screen--OK
* "CS":1/0 (1 byte)-- Cursor on/off
* "TP":x(1 byte) y(1 byte) -- set text position
* "TT":string(bytes) end with 0x00/0x0A/0x0D -- display string under regular mode
// Graphic function command
* "GP":x(1byte) y(1byte) -- set current graphic position
* "DM":"C/!/~/&/|/^"(ASCII 1byte) -- set drawing mode--C="Copy",! and ~ = "Not", & = "And", | = "Or", ^ = "Xor"
* "SC":1/0 (1byte) -- set draw color--only 1 and 0
* "LN":x0(1byte) y0(1byte) x1(1byte) y2(1byte)--draw line from x0,y0 to x1,y1,set new pot to x1,y1
* "LT":x(1byte) y(1byte) -- draw line from current pos to x,y
* "CC":x(1byte) y(1byte) ratio(byte) -- draw circle at x,y with ratio
* "DP":x(1byte) y(1byte) Color(1byte) -- draw a pixel--OK
* "DR":x0(1byte) y0(1byte) x1(1byte) y2(1byte)--draw rectangle, top-left:x0,y0; right-bottom:x1,y1
* "FR":x0(1byte) y0(1byte) x1(1byte) y2(1byte)--draw filled rectangle, top-left:x0,y0; right-bottom:x1,y1
*/
#include <stdio.h>
#include <stdlib.h>
#include <linux/i2c-dev.h>
#include <fcntl.h>
#include <string.h>
#include <sys/ioctl.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
int main(int argc, char **argv)
{
int fd;
char *fileName = "/dev/i2c-1"; // Name of the port we will be using, Rasberry Pi model B (i2c-1)
int address = 0x27; // Address of I2C device
char buf[100];
if ((fd = open (fileName, O_RDWR)) < 0) { // Open port for reading and writing
printf("Failed to open i2c port\n");
exit(1);
}
if (ioctl(fd, I2C_SLAVE, address) < 0) { // Set the port options and set the address of the device
printf("Unable to get bus access to talk to slave\n");
exit(1);
}
if (argc>1)
{
sprintf(buf,argv[1]);
//printf("%s %d %s\n",buf,strlen(buf),buf[strlen(buf)]);
if ((write(fd, buf, strlen(buf)+1)) != strlen(buf)+1) {
printf("Error writing to i2c slave\n");
exit(1);
}
} else {
printf(" Simple tool to send commands to Digole graphic adapter\nexamples:\n");
printf(" rpi_lcd \"CLTTHello Word\" - Clear the screen (CL) and prints \"Hello Word\" (TT)\n");
printf(" rpi_lcd \"CC002\" - Draws a cirle at x=30 (0), y=30 (0) with a radio of 32 (2)\n"); //not for Character LCD
}
return 0;
}
Download Programing Manual
Download Arduino lib and demo code
Other lib and sample code
Online tools:
Convert image to Digole(u8g) user fonts
All other online tools from Digole
Watch Arduino Demo Code Video on Youtube
Digole Serial Display List
|