diff -r 5b1e0b384d31 -r 86f099bda525 lib/unigraphic/SSD1322.cpp --- a/lib/unigraphic/SSD1322.cpp Sun Aug 30 22:53:15 2020 +0200 +++ b/lib/unigraphic/SSD1322.cpp Thu Oct 15 01:11:03 2020 +0200 @@ -2,7 +2,7 @@ * Copyright (c) 2015 Peter Drescher * Released under the MIT License: http://mbed.org/license/mit */ - + #include "platform.h" #include "SSD1322.h" @@ -46,7 +46,7 @@ #define SSD1322_CMD_DISPLAY_ENHANCEMENT_B 0xD1 #define SSD1322_CMD_SET_COMMAND_LOCK 0xFD -// set for some OLED displays +// set for some OLED displays //#define ALTERNATE_OLED_VERSION @@ -95,7 +95,7 @@ SSD1322::SSD1322(int Hz, PinName mosi, PinName miso, PinName sclk, PinName CS, PinName reset, PinName DC, - const char *name) + const char *name) : GraphicsDisplay(name), screensize_X(DISPLAY_WIDTH), screensize_Y(DISPLAY_HEIGHT), _BPP(BPP), _PAGES(DISPLAY_HEIGHT/8*BPP), @@ -164,7 +164,7 @@ } else { set_width(screensize_Y); set_height(screensize_X); - } + } switch (o) { case (0):// portrait view -90° mirrorXY(Y); @@ -202,11 +202,11 @@ break; case(XY): d = 0x12; - break; + break; } - wr_cmd8(SSD1322_CMD_SET_REMAP); + wr_cmd8(SSD1322_CMD_SET_REMAP); wr_data8(d); - wr_data8(0x11); + wr_data8(0x11); } void SSD1322::invert(unsigned char o) @@ -265,6 +265,7 @@ count--; } } + void SSD1322::window_pushpixelbuf(unsigned short* color, unsigned int lenght) { while(lenght) { @@ -360,8 +361,9 @@ set_column_address(0); memcpy((void*)_trBuffer, - (const void*)_pixelBuffer, - DISPLAY_BUFFER_ELEMENTS * sizeof(DISPLAY_BUFFER_TYPE)); + (const void*)_pixelBuffer, + DISPLAY_BUFFER_ELEMENTS * sizeof(DISPLAY_BUFFER_TYPE)); + wr_cmd8(SSD1322_CMD_WRITE_RAM); #ifdef DEVICE_SPI_ASYNCH @@ -369,8 +371,8 @@ _spi.transfer((uint8_t*) _trBuffer, 64*128, (uint8_t*) NULL, 0, _spiEventCb); #else i = 0; - for(y=0; y<64; y++) - for(x=0; x<128; x++) + for(y=0; y<64; y++) + for(x=0; x<128; x++) wr_data8(_trBuffer[i++]); #endif } @@ -385,15 +387,15 @@ to_row = 0x3F; memcpy((void*)_trBuffer, - (const void*)_pixelBuffer, - DISPLAY_BUFFER_ELEMENTS * sizeof(DISPLAY_BUFFER_TYPE)); - + (const void*)_pixelBuffer, + DISPLAY_BUFFER_ELEMENTS * sizeof(DISPLAY_BUFFER_TYPE)); + set_row_address(from_row, to_row); set_column_address(from_col, to_col); wr_cmd8(SSD1322_CMD_WRITE_RAM); for(y=from_row; y<=to_row; y++) { - for(x=from_col; x<=to_col; x++) { + for(x=from_col; x<=to_col; x++) { wr_data8(_trBuffer[y*128 + 2*x]); wr_data8(_trBuffer[y*128 + 2*x + 1]); }