This 1.8” LCD monochrome graphical display has a resolution of 128x64 pixels with pixel colour being black on a white backlit background.
For interfacing via a microcontroller the display uses an ST7565 serial controller consisting of a single clock and data pin for communication plus chip select and data/command pins for control. These pins plus power and reset are all available via a soldered 8 pin 0.1” header.
For Arduino users this module is supported by our HCDisplay library. See bottom of this post for more information.
NOTES:
This is a 3.3V display. If using with a 5V microcontroller level shifters must be used.
Specification:
Product code: HCMODU0246
Supply voltage: 3.3V
Supply current (Backlight on): 11mA
Supply current (Backlight off): <1mA
Screen size: 1.8”
Display controller: ST7565
Interface: Serial SPI (clock, data, chip select, data/command select, reset)
Interface header: 8 pin 0.1” SIL header
Outer LCD size: 44.5mm x 29mm
Module size: 47.5mm x 37mm
Arduino Example:
- /* File: HCDisplay_Hello_World.ino
- * Version: 1.0
- *
- * This is a simple sketch to demonstrate how to print text at specified locations
- * on the display. The sketch also shows how to change font style and
- * foreground/background colour.
- *
- * IMPORTANT: To use this sketch you must first select your display type
- * by opening up the Options.txt file (found the HCDisplay library folder)
- * in a text editor and uncommenting the line:
- *
- * #define ST7565
- *
- * Please see Lincence.txt file in the library folder for terms of use
- */
- #include "HCDisplay.h"
- // Default pins
- #define CE_PIN A0
- #define DC_PIN A1
- #define CLK_PIN A2
- #define DIN_PIN A3
- //#define RST_PIN 2 // Optional reset pin
- HCDisplay HCDisplay; //Creates an instance of the HCDisplay library
- unsigned int MaxX, MaxY;
- boolean FGColour = 1;
- void setup()
- {
- // Initialise the display - Note HCMODU0246 must be reset after powering up!
- HCDisplay.Init(DIN_PIN, CLK_PIN, CE_PIN, DC_PIN /*, RST_PIN*/);
- // Uncomment if screen contrast needs adjusting (contrast = 0 to 255)
- // HCDisplay.Contrast(16);
- /* Get the screens X & Y resolution */
- MaxX = HCDisplay.ResX() - 1;
- MaxY = HCDisplay.ResY() - 1;
- /* Draw a boarder */
- HCDisplay.Rect(0 , 0, MaxX, MaxY, OUTLINE, 1);
- HCDisplay.Rect(0 + 3 , 0 + 3, MaxX - 3, MaxY - 3, OUTLINE, 1);
- /* Print some text */
- HCDisplay.Pos(44,8);
- HCDisplay.Print("Hobby");
- HCDisplay.Pos(24,18);
- HCDisplay.Print("Components");
- HCDisplay.Pos(32,30);
- HCDisplay.Print("2.8\" LCD");
- /* Change the font */
- HCDisplay.SetFont(MedProp_12ptFont);
- }
- void loop()
- {
- /* Make some text flash by swapping the texts foreground and background colours */
- HCDisplay.SetFG(FGColour);
- HCDisplay.SetBG(!FGColour);
- HCDisplay.Pos(8,42);
- HCDisplay.Print("HCMODU0245");
- FGColour = !FGColour;
- delay(200);
- }
HCDisplay Arduino library:
viewtopic.php?f=58&t=2827
Please ensure that have V1.2.0 or greater of the HCDisplay library installed.
Libraries, example code, and diagrams are provided as an additional free service by Hobby Components and are not sold as part of this product. We do no provide any guarantees or warranties as to their accuracy or fitness for purpose.
Descriptions and diagrams on this page are copyright Hobby Components Ltd and may not be reproduced without permission.