Products LCD Display SLD1602B-BW12 16x2 LCD Display B/W


SLD1602B-BW12 16x2 LCD Display B/W


SLD1602B-BW12 16x2 LCD Display B/W, LCD Display, from Signal HK OEM Part in Stock Hong Kong The SLD1602B-BW1 is a standard 16x2 character LCD display module designed for embedded systems and industrial user interface applications. It features

The image is for illustrative purposes only; please refer to the product data sheet for precise specifications.


GET QUOTE NOW!

Part Number SLD1602B-BW12 16x2 LCD Display B/W
Manufacturer Signal HK OEM Part Official Vector Logo Signal HK OEM Part
Description The SLD1602B-BW1 is a standard 16x2 character LCD display module designed for embedded systems and industrial user interface applications. It features a 16-character × 2-line display format, providing clear and reliable text output for a wide range of electronic devices.

Based on industry-standard controller architecture (HD44780 compatible), the module supports 4-bit and 8-bit parallel interface modes, allowing easy integration with microcontrollers such as Arduino, PIC, AVR, and other embedded platforms. This ensures high compatibility and simplified firmware development.

The display utilizes STN LCD technology with LED backlight (typically blue background with white characters), offering good contrast and readability in various lighting conditions. It operates with a typical 5V supply voltage and includes a contrast adjustment pin for flexible visual tuning.

Mechanically, the module follows the common 1602 LCD footprint, making it interchangeable with other standard 16x2 displays. Typical modules in this category have dimensions around 80 × 36 mm and are widely used due to their reliability and ease of integration .

The SLD1602B-BW1 is commonly used in applications such as industrial control panels, measurement devices, home appliances, IoT systems, and educational electronics projects where simple text-based display output is required. Its low power consumption, robust structure, and wide compatibility make it a cost-effective and dependable display solution.
Product Group LCD Display
MOQ 500 pcs
SPQ 25 pcs
Figure/Case 80x36 LCD Module
Package TRAY Pack
PDF PDF Datasheet
Ship From Hong Kong
Shipment Way DHL / Fedex / TNT / UPS / Others
Delivery Term Ex-Works
Send RFQ sales@signalhk.com


STM8 Example Code for 16x2 LCD Test

STM8S103F3 test code according to COSMIC C Compiler


/*=========================================================
  STM8 + 16x2 LCD (4-bit mode) - COSMIC C
  Example target: STM8S103F3 / STM8S003
=========================================================*/

#include "iostm8s103f3.h"

/* LCD control pins on Port D */
#define LCD_RS_PORT   PD_ODR
#define LCD_RS_DDR    PD_DDR
#define LCD_RS_CR1    PD_CR1
#define LCD_RS_PIN    2

#define LCD_E_PORT    PD_ODR
#define LCD_E_DDR     PD_DDR
#define LCD_E_CR1     PD_CR1
#define LCD_E_PIN     3

/* LCD data pins D4-D7 on Port C */
#define LCD_D4_PORT   PC_ODR
#define LCD_D4_DDR    PC_DDR
#define LCD_D4_CR1    PC_CR1
#define LCD_D4_PIN    4

#define LCD_D5_PORT   PC_ODR
#define LCD_D5_DDR    PC_DDR
#define LCD_D5_CR1    PC_CR1
#define LCD_D5_PIN    5

#define LCD_D6_PORT   PC_ODR
#define LCD_D6_DDR    PC_DDR
#define LCD_D6_CR1    PC_CR1
#define LCD_D6_PIN    6

#define LCD_D7_PORT   PC_ODR
#define LCD_D7_DDR    PC_DDR
#define LCD_D7_CR1    PC_CR1
#define LCD_D7_PIN    7

/* Small delay using NOP */
static void delay_cycles(volatile unsigned long n)
{
    while (n--)
    {
        __asm("nop");
    }
}

/* Approximate millisecond delay
   Adjust loop count according to system clock */
static void delay_ms(unsigned int ms)
{
    unsigned int i;
    while (ms--)
    {
        for (i = 0; i < 1600; i++)
        {
            __asm("nop");
        }
    }
}

/* Configure LCD GPIO pins as push-pull outputs */
static void gpio_init(void)
{
    /* RS and E as output push-pull */
    LCD_RS_DDR |= (1 << LCD_RS_PIN);
    LCD_RS_CR1 |= (1 << LCD_RS_PIN);

    LCD_E_DDR  |= (1 << LCD_E_PIN);
    LCD_E_CR1  |= (1 << LCD_E_PIN);

    /* D4-D7 as output push-pull */
    LCD_D4_DDR |= (1 << LCD_D4_PIN);
    LCD_D4_CR1 |= (1 << LCD_D4_PIN);

    LCD_D5_DDR |= (1 << LCD_D5_PIN);
    LCD_D5_CR1 |= (1 << LCD_D5_PIN);

    LCD_D6_DDR |= (1 << LCD_D6_PIN);
    LCD_D6_CR1 |= (1 << LCD_D6_PIN);

    LCD_D7_DDR |= (1 << LCD_D7_PIN);
    LCD_D7_CR1 |= (1 << LCD_D7_PIN);
}

/* Write one logic value to a port pin */
static void lcd_set_pin(volatile unsigned char *port, unsigned char pin, unsigned char val)
{
    if (val)
        *port |=  (1 << pin);
    else
        *port &= ~(1 << pin);
}

/* Generate enable pulse */
static void lcd_pulse_enable(void)
{
    lcd_set_pin(&LCD_E_PORT, LCD_E_PIN, 0);
    delay_cycles(50);
    lcd_set_pin(&LCD_E_PORT, LCD_E_PIN, 1);
    delay_cycles(200);
    lcd_set_pin(&LCD_E_PORT, LCD_E_PIN, 0);
    delay_cycles(200);
}

/* Send 4-bit nibble to LCD */
static void lcd_write4(unsigned char nibble)
{
    lcd_set_pin(&LCD_D4_PORT, LCD_D4_PIN, (nibble >> 0) & 0x01);
    lcd_set_pin(&LCD_D5_PORT, LCD_D5_PIN, (nibble >> 1) & 0x01);
    lcd_set_pin(&LCD_D6_PORT, LCD_D6_PIN, (nibble >> 2) & 0x01);
    lcd_set_pin(&LCD_D7_PORT, LCD_D7_PIN, (nibble >> 3) & 0x01);

    lcd_pulse_enable();
}

/* Send full byte in 4-bit mode
   rs = 0 for command, 1 for data */
static void lcd_write_byte(unsigned char rs, unsigned char data)
{
    lcd_set_pin(&LCD_RS_PORT, LCD_RS_PIN, rs);

    /* Send high nibble first */
    lcd_write4((data >> 4) & 0x0F);
    /* Then low nibble */
    lcd_write4(data & 0x0F);

    delay_ms(2);
}

/* Send LCD command */
static void lcd_cmd(unsigned char cmd)
{
    lcd_write_byte(0, cmd);
}

/* Send LCD data character */
static void lcd_data(unsigned char data)
{
    lcd_write_byte(1, data);
}

/* Initialize LCD in 4-bit mode */
static void lcd_init(void)
{
    delay_ms(40);

    lcd_set_pin(&LCD_RS_PORT, LCD_RS_PIN, 0);

    /* Standard 4-bit initialization sequence */
    lcd_write4(0x03);
    delay_ms(5);

    lcd_write4(0x03);
    delay_ms(2);

    lcd_write4(0x03);
    delay_ms(2);

    lcd_write4(0x02);   /* Switch to 4-bit mode */
    delay_ms(2);

    lcd_cmd(0x28);      /* 4-bit, 2 lines, 5x8 font */
    lcd_cmd(0x0C);      /* Display ON, cursor OFF */
    lcd_cmd(0x06);      /* Entry mode set */
    lcd_cmd(0x01);      /* Clear display */
    delay_ms(2);
}

/* Set cursor position */
static void lcd_gotoxy(unsigned char row, unsigned char col)
{
    unsigned char addr;

    if (row == 0)
        addr = 0x80 + col;
    else
        addr = 0xC0 + col;

    lcd_cmd(addr);
}

/* Print null-terminated string */
static void lcd_puts(const char *s)
{
    while (*s)
    {
        lcd_data((unsigned char)*s);
        s++;
    }
}

void main(void)
{
    /* Optional: set clock divider to full speed if supported */
    CLK_CKDIVR = 0x00;

    gpio_init();
    lcd_init();

    lcd_gotoxy(0, 0);
    lcd_puts("STM8 COSMIC");

    lcd_gotoxy(1, 0);
    lcd_puts("LCD Test OK");

    while (1)
    {
        /* Main loop */
    }
}


STM32 Example Code for 16x2 LCD Test

STM32F103C8test code according to COSMIC C Compiler



/*=========================================================
  STM32 + 16x2 LCD (4-bit mode) - COSMIC C
  Example target: STM32F103C8
=========================================================*/

#include "stm32f10x.h"

/* LCD pin mapping on GPIOA */
#define LCD_RS_PIN    0
#define LCD_E_PIN     1
#define LCD_D4_PIN    4
#define LCD_D5_PIN    5
#define LCD_D6_PIN    6
#define LCD_D7_PIN    7

/* Small delay using NOP */
static void delay_cycles(volatile unsigned long n)
{
    while (n--)
    {
        __asm("nop");
    }
}

/* Approximate millisecond delay
   Adjust according to MCU clock */
static void delay_ms(unsigned int ms)
{
    while (ms--)
    {
        delay_cycles(8000);
    }
}

/* Initialize GPIOA pins for LCD */
static void gpio_init(void)
{
    /* Enable GPIOA peripheral clock */
    RCC->APB2ENR |= RCC_APB2ENR_IOPAEN;

    /* Configure PA0, PA1, PA4, PA5, PA6, PA7
       as output push-pull, 2 MHz */
    GPIOA->CRL &= ~(
          (0xF << (LCD_RS_PIN * 4))
        | (0xF << (LCD_E_PIN  * 4))
        | (0xF << (LCD_D4_PIN * 4))
        | (0xF << (LCD_D5_PIN * 4))
        | (0xF << (LCD_D6_PIN * 4))
        | (0xF << (LCD_D7_PIN * 4))
    );

    GPIOA->CRL |= (
          (0x2 << (LCD_RS_PIN * 4))
        | (0x2 << (LCD_E_PIN  * 4))
        | (0x2 << (LCD_D4_PIN * 4))
        | (0x2 << (LCD_D5_PIN * 4))
        | (0x2 << (LCD_D6_PIN * 4))
        | (0x2 << (LCD_D7_PIN * 4))
    );
}

/* Write one logic value to a GPIO pin */
static void lcd_pin_write(unsigned char pin, unsigned char val)
{
    if (val)
        GPIOA->BSRR = (1U << pin);
    else
        GPIOA->BRR  = (1U << pin);
}

/* Generate enable pulse */
static void lcd_pulse_enable(void)
{
    lcd_pin_write(LCD_E_PIN, 0);
    delay_cycles(50);
    lcd_pin_write(LCD_E_PIN, 1);
    delay_cycles(300);
    lcd_pin_write(LCD_E_PIN, 0);
    delay_cycles(300);
}

/* Send 4-bit nibble to LCD */
static void lcd_write4(unsigned char nibble)
{
    lcd_pin_write(LCD_D4_PIN, (nibble >> 0) & 0x01);
    lcd_pin_write(LCD_D5_PIN, (nibble >> 1) & 0x01);
    lcd_pin_write(LCD_D6_PIN, (nibble >> 2) & 0x01);
    lcd_pin_write(LCD_D7_PIN, (nibble >> 3) & 0x01);

    lcd_pulse_enable();
}

/* Send full byte in 4-bit mode
   rs = 0 for command, 1 for data */
static void lcd_write_byte(unsigned char rs, unsigned char data)
{
    lcd_pin_write(LCD_RS_PIN, rs);

    /* Send high nibble first */
    lcd_write4((data >> 4) & 0x0F);
    /* Then low nibble */
    lcd_write4(data & 0x0F);

    delay_ms(2);
}

/* Send LCD command */
static void lcd_cmd(unsigned char cmd)
{
    lcd_write_byte(0, cmd);
}

/* Send LCD data character */
static void lcd_data(unsigned char data)
{
    lcd_write_byte(1, data);
}

/* Initialize LCD in 4-bit mode */
static void lcd_init(void)
{
    delay_ms(40);

    lcd_pin_write(LCD_RS_PIN, 0);

    /* Standard 4-bit initialization sequence */
    lcd_write4(0x03);
    delay_ms(5);

    lcd_write4(0x03);
    delay_ms(2);

    lcd_write4(0x03);
    delay_ms(2);

    lcd_write4(0x02);
    delay_ms(2);

    lcd_cmd(0x28);   /* 4-bit, 2 lines, 5x8 font */
    lcd_cmd(0x0C);   /* Display ON, cursor OFF */
    lcd_cmd(0x06);   /* Entry mode set */
    lcd_cmd(0x01);   /* Clear display */
    delay_ms(2);
}

/* Set cursor position */
static void lcd_gotoxy(unsigned char row, unsigned char col)
{
    if (row == 0)
        lcd_cmd(0x80 + col);
    else
        lcd_cmd(0xC0 + col);
}

/* Print null-terminated string */
static void lcd_puts(const char *s)
{
    while (*s)
    {
        lcd_data((unsigned char)*s);
        s++;
    }
}

int main(void)
{
    gpio_init();
    lcd_init();

    lcd_gotoxy(0, 0);
    lcd_puts("STM32 COSMIC");

    lcd_gotoxy(1, 0);
    lcd_puts("LCD Test OK");

    while (1)
    {
        /* Main loop */
    }
}


Equivalent : 
162G BC BW, 162J BC BW, 162J CC BC-3LP, ACM1602KC-NLW-BBW-R, ACM1602K-FL-GTW, ACM1602K-FL-YBH, ACM1602K-FL-YBW, ACM1602K-FLY-YBW, ACM1602KR-FL-YBW, ACM1602K-RN-GBW, AMC1602AR-B-B6WTDW, AMC1602AR-B-B6WTDW-I2C, AMC1602AR-B-B6WTDW-SPI, AMC1602AR-B-T6WTDY, AMC1602AR-B-Y6NFDY-STY-S11, AMC1602AR-B-Y6WFDY, AMC1602AR-B-Y6WFDY-I2C, AMC1602AR-B-Y6WFDY-SPI, C162A-BW-LW63, C162A-BW-LW65, C162A-FTW-DS23, C162A-FTW-LW63, C162A-FTW-LW65, C162A-FTY-LW65, C162ALBFGS16WN55PAB, C162ALBFGS16WN55PABS, C162ALBFGS16WT55PAB, C162ALBFGS16WT55PABS, C162ALBFGSW6WN55PAB, C162ALBSBSW6WN55XAA, C162ALBSGLW6WT33PAB, C162ALBSGLW6WT33PAB1, C162ALBSYLY6WTC3PAA, C162AS-BW-LW63, C162AS-BW-LW65, C162AS-FTW-LW63, C162AS-FTW-LW65, C162AS-YTY-LW63, C162AS-YTY-LW65, C162A-YTY-LW63, C162A-YTY-LW65, CN0293, EA SER162-N3LW, EA W162-N3LED, FIT0127, GFC1602AK-BNFA-JP, GFC1602AK-YPOE-JP07, GFC1602AK-YPOEJT, GFC1602K-BNFA-JP01, GFC1602K-BNFEJSP03, GFC1602K-FPFEJPB08, GFC1602K-HRNEJS01, GFC1602K-TRNEJS01, GFC1602L-YPOA-JP01, LCM-H01602DSF/A-A, LCM-H01602DWF/A-P, LCM-S01602DSF/A, LCM-S01602DSF/A-W, LCM-S01602DSF/AYVM, LCM-S01602DSR/A, LCM-S01602DTF/A, LCM-S01602DTR/A, LCM-S01602DTR/A-3, LCR-U01602DSF/AWH, LK162-12, LK162-12-E, LK162-12-GW, LK162-12-GW-E, LK162-12-GW-V, LK162-12-GW-V-E, LK162-12-IY, LK162-12-IY-V, LK162-12-IY-V-E, LK162-12-R, LK162-12-R-E, LK162-12-R-V, LK162-12-R-V-E, LK162-12-USB, LK162-12-USB-E, LK162-12-USB-GW, LK162-12-USB-GW-E, LK162-12-USB-IY, LK162-12-USB-IY-E, LK162-12-USB-R, LK162-12-USB-R-E, LK162-12-USB-WB, LK162-12-USB-WB-E, LK162-12-V, LK162-12-V-E, LK162-12-WB, LK162-12-WB-E, LK162-12-WB-V, MC21605G6WD-BNMLW-V2, MC21605G6WD-SPTLY-V2, MC21605G6W-FPTLW-V2, MD21605G12W3-BNMLW-VE, MD21605G6W1-FPTLRGBS, MD21605G6W2-FPTLRGB, MDLS-16265B-LV-G-LED, MDLS-16265B-SS-LV-G-LED04G, MDLS-16265-SS-LV-S, MDLS-16265-SS-LV-S-LED-04-G-14, MDLS-16265-SS-LV-S-LED-04-G-16, MIKROE-13, MOI-AL162A-BW3SE, MOI-AL162A-WB3SE, MOI-AL162A-XR3SE, MOI-AL162A-XY3SE, MOI-AL162A-YX3SE, MOP-AL162A-BBTR-25E-3IN, MOP-AL162A-BBTW-25E-3IN, MOP-AL162A-BBTW-25J-3IN, MOP-AL162A-BGFW-25E-3IN, MOP-AL162A-BTTY-25E-3IN, MOP-AL162A-BYFY-25E-3IN, MOP-AL162A-BYFY-25J-3IN, MOP-AL162A-BYRN-25J-3IN, MOP-AO162A-BWPP-5I, MOP-AO162A-BYPP-5I, MOP-AV162A-BNNN-01J-3IN, MOS-AL162A-BW3SE, MOS-AL162A-WB3SE, MOS-AL162A-XR3SE, MOS-AL162A-XY3SE, MOS-AL162A-YX3SE, MOU-AL162A-BW3SE, MOU-AL162A-WB3SE, MOU-AL162A-XR3SE, MOU-AL162A-XY3SE, MOU-AL162A-YX3SE, NHD-0216K1Z-FL-GBW, NHD-0216K1Z-FL-YBW, NHD-0216K1Z-FS(RGB)-FBW, NHD-0216K1Z-FS(RGB)-FBW-REV1, NHD-0216K1Z-FSA-FBW-L, NHD-0216K1Z-FSA-GBW-L, NHD-0216K1Z-FSB-FBW-L, NHD-0216K1Z-FSB-GBW-L, NHD-0216K1Z-FSO-FBW-L, NHD-0216K1Z-FSO-GBW-L, NHD-0216K1Z-FSPG-FBW-L, NHD-0216K1Z-FSPG-GBW-L, NHD-0216K1Z-FSR-FBW-L, NHD-0216K1Z-FSR-GBW-L, NHD-0216K1Z-FSW-FBW-L, NHD-0216K1Z-FSW-FTW-FB1, NHD-0216K1Z-FSW-GBW-L, NHD-0216K1Z-NS(RGB)-FBW, NHD-0216K1Z-NS(RGB)-FBW-REV1, NHD-0216K1Z-NSA-FBW-L, NHD-0216K1Z-NSB-FBW-L, NHD-0216K1Z-NSO-FBW-L, NHD-0216K1Z-NSPG-FBW, NHD-0216K1Z-NSPG-FBW-L, NHD-0216K1Z-NSR-FBW-L, NHD-0216K1Z-NSW-BBW-L, NHD-0216K1Z-NSW-FBW-L, NHD-0216K3Z-FL-GBW-V3, NHD-0216K3Z-FS(RGB)-FBW-V3, NHD-0216K3Z-NS(RGB)-FBW-V3, NHD-0216K3Z-NSW-BBW-V3, NHD-0216PZ-FL-YBW, NHD-0216PZ-FL-YBW-PC, NHD-0216XZ-FSW-GBW, WH1602B1-TMI-JW, WH1602BR-TMI-JT, 





Request quotation for
SLD1602B-BW12 16x2 LCD Display B/W
CAPTCHA Image




RECOMMENDED PART(S) for SLD1602B-BW12 16x2 LCD Display B/W



RECOMMENDED PART: REC001602AYPP5N00001
REC001602AYPP5N00001

REC001602AYPP5N00001 16x2 Character OLED Display Module 80x36 Yellow Black 4Bit. REC001602A is a COB Character 16x2 OLED Display m...











Room 1304, 13/F, Allways Centre, 468 Jaffe Road, Causeway Bay, Hong Kong.



Copyright © 2008-2024 Signal HK Limited. All Rights Reserved.Designated trademarks and brands are the property of their respective owners.
Use of this Website constitutes acceptance of Signal HK Limited Terms of Use and Privacy Policy
SLD1602B-BW12 16x2 LCD Display B/W datasheet, SLD1602B-BW12 16x2 LCD Display B/W specifications, SLD1602B-BW12 16x2 LCD Display B/W features, SLD1602B-BW12 16x2 LCD Display B/W pinout, SLD1602B-BW12 16x2 LCD Display B/W Arduino, SLD1602B-BW12 16x2 LCD Display B/W price, SLD1602B-BW12 16x2 LCD Display B/W circuit diagram, SLD1602B-BW12 16x2 LCD Display B/W development board, SLD1602B-BW12 16x2 LCD Display B/W app SLD1602B-BW12 16x2 LCD Display B/W Application SLD1602B-BW12 16x2 LCD Display B/W Stock Quote SLD1602B-BW12 16x2 LCD Display B/W Best Price SLD1602B-BW12 16x2 LCD Display B/W Free Stock SLD1602B-BW12 16x2 LCD Display B/W Lead Time SLD1602B-BW12 16x2 LCD Display B/W Delivery Time SLD1602B-BW12 16x2 LCD Display B/W Stock , SLD1602B-BW1 LCD display, SLD1602B-BW1 16x2 LCD, SLD1602B-BW1 supplier, SLD1602B-BW1 price, SLD1602B-BW1 datasheet, SLD1602B-BW1 buy online, SLD1602B-BW1 distributor, SLD1602B-BW1 stock availability, 1602 LCD module, 16x2 character LCD display, HD44780 co