Hexiwear OLED Display Driver
Dependents: Hexi_OLED_TextImage_Example Hexi_OLED_Text_Example Hexi_OLED_Image_Example security-console-app ... more
Diff: Hexi_OLED_SSD1351.cpp
- Revision:
- 3:4121d3cd9f60
- Parent:
- 2:fc06b5b5bf6a
- Child:
- 4:38086393d75b
--- a/Hexi_OLED_SSD1351.cpp Fri Aug 19 23:05:58 2016 +0000
+++ b/Hexi_OLED_SSD1351.cpp Fri Aug 26 15:21:54 2016 +0000
@@ -84,92 +84,6 @@
OLED_CMD_DISPLAYON, CMD_BYTE
};
-#if 0
-/* oled_init arrays*/
-const uint32_t oled_init_cmd[] = {
- OLED_CMD_SET_CMD_LOCK,
- OLED_UNLOCK,
- OLED_CMD_SET_CMD_LOCK,
- OLED_ACC_TO_CMD_YES,
- OLED_CMD_DISPLAYOFF,
- OLED_CMD_SET_OSC_FREQ_AND_CLOCKDIV,
- 0xF1,
- OLED_CMD_SET_MUX_RATIO,
- 0x5F,
- OLED_CMD_SET_REMAP,
- OLED_REMAP_SETTINGS,
- OLED_CMD_SET_COLUMN,
- 0x00,
- 0x5F,
- OLED_CMD_SET_ROW,
- 0x00,
- 0x5F,
- OLED_CMD_STARTLINE,
- 0x80,
- OLED_CMD_DISPLAYOFFSET,
- 0x60,
- OLED_CMD_PRECHARGE,
- 0x32,
- OLED_CMD_VCOMH,
- 0x05,
- OLED_CMD_NORMALDISPLAY,
- OLED_CMD_CONTRASTABC,
- 0x8A,
- 0x51,
- 0x8A,
- OLED_CMD_CONTRASTMASTER,
- 0xCF,
- OLED_CMD_SETVSL,
- 0xA0,
- 0xB5,
- 0x55,
- OLED_CMD_PRECHARGE2,
- 0x01,
- OLED_CMD_DISPLAYON };
-
-
-const uint8_t oled_init_isFirst[] = {
- CMD_BYTE,
- DATA_BYTE,
- CMD_BYTE,
- DATA_BYTE,
- CMD_BYTE,
- CMD_BYTE,
- DATA_BYTE,
- CMD_BYTE,
- DATA_BYTE,
- CMD_BYTE,
- DATA_BYTE,
- CMD_BYTE,
- DATA_BYTE,
- DATA_BYTE,
- CMD_BYTE,
- DATA_BYTE,
- DATA_BYTE,
- CMD_BYTE,
- DATA_BYTE,
- CMD_BYTE,
- DATA_BYTE,
- CMD_BYTE,
- CMD_BYTE,
- CMD_BYTE,
- CMD_BYTE,
- CMD_BYTE,
- CMD_BYTE,
- DATA_BYTE,
- DATA_BYTE,
- DATA_BYTE,
- CMD_BYTE,
- DATA_BYTE,
- CMD_BYTE,
- DATA_BYTE,
- DATA_BYTE,
- DATA_BYTE,
- CMD_BYTE,
- DATA_BYTE,
- CMD_BYTE};
-#endif
-
SSD1351::SSD1351(PinName mosiPin,PinName sclkPin,PinName pwrPin, PinName csPin,PinName rstPin, PinName dcPin): spi(mosiPin,NC,sclkPin) , power(pwrPin), cs(csPin),rst(rstPin),dc(dcPin)
@@ -194,7 +108,7 @@
oled_text_properties.alignParam = OLED_TEXT_ALIGN_CENTER;
oled_text_properties.background = NULL;
- oled_text_properties.font = oledFont_Tahoma_8_Regular;
+ oled_text_properties.font = OpenSans_10x15_Regular;
oled_text_properties.fontColor = COLOR_RED;
oled_dynamic_area.areaBuffer = NULL;
@@ -207,7 +121,6 @@
for (int i=0;i<39;i++)
{
- //SendCmd(oled_init_cmd[i],oled_init_isFirst[i]);
SendCmd(seq[i].cmd, seq[i].type);
}
@@ -828,28 +741,6 @@
-oled_status_t SSD1351::DrawText ( const uint8_t* text,uint8_t xCrd, uint8_t yCrd )
-{
-
- if ( NULL == text )
- {
- return OLED_STATUS_ERROR;
- }
-
- AddText(text,xCrd,yCrd);
-
- // set the locations
- SetBorders( oled_dynamic_area.xCrd, oled_dynamic_area.yCrd, oled_dynamic_area.width, oled_dynamic_area.height );
-
- // fill the GRAM
- SendData( (const uint8_t*)oled_dynamic_area.areaBuffer, oled_dynamic_area.width * oled_dynamic_area.height * OLED_BYTES_PER_PIXEL );
-
-
-// free( currentTextAreaImage );
- return OLED_STATUS_SUCCESS;
-}
-
-
oled_status_t SSD1351::DrawText( const uint8_t* text)
{
@@ -869,12 +760,6 @@
}
-
-
-
-
-
-
void SSD1351::GetImageDimensions(uint8_t *width, uint8_t *height, const uint8_t* image)
{
*height = image[2] + (image[3] << 8);
@@ -1045,6 +930,50 @@
}
}
+
+oled_status_t SSD1351::Label ( const uint8_t* text,uint8_t xCrd, uint8_t yCrd )
+{
+
+ if ( NULL == text )
+ {
+ return OLED_STATUS_ERROR;
+ }
+
+ AddText(text,xCrd,yCrd);
+
+ // set the locations
+ SetBorders( oled_dynamic_area.xCrd, oled_dynamic_area.yCrd, oled_dynamic_area.width, oled_dynamic_area.height );
+
+ // fill the GRAM
+ SendData( (const uint8_t*)oled_dynamic_area.areaBuffer, oled_dynamic_area.width * oled_dynamic_area.height * OLED_BYTES_PER_PIXEL );
+
+// free( currentTextAreaImage );
+ return OLED_STATUS_SUCCESS;
+}
+
+
+oled_status_t SSD1351::TextBox(const uint8_t* text,uint8_t xCrd, uint8_t yCrd,uint8_t width,uint8_t height)
+{
+
+ if ( NULL == text )
+ {
+ return OLED_STATUS_ERROR;
+ }
+
+ oled_dynamic_area_t textArea;
+ textArea.width = width;
+ textArea.height = height;
+ textArea.xCrd = xCrd;
+ textArea.yCrd = yCrd;
+
+ SetDynamicArea(&textArea);
+ DrawText(text);
+
+ return OLED_STATUS_SUCCESS;
+
+}
+
+
/* Internal Functions */
/**
@@ -1494,7 +1423,7 @@
if ( 0 == isFontInitialized )
{
// default font
- SetFont( oledFont_Tahoma_8_Regular, COLOR_WHITE );
+ SetFont( OpenSans_10x15_Regular, COLOR_WHITE );
}
// allocate space for char image