深入解析NHD - 0420H1Z - FL - GBW - 3V3字符液晶显示模块

电子说

1.4w人已加入

描述

深入解析NHD - 0420H1Z - FL - GBW - 3V3字符液晶显示模块

在电子设计领域,液晶显示模块是人机交互的重要组成部分。今天,我们来详细探讨Newhaven Display International公司的NHD - 0420H1Z - FL - GBW - 3V3字符液晶显示模块。

文件下载:NHD-0420H1Z-FL-GBW-3V.pdf

一、产品概述

NHD - 0420H1Z - FL - GBW - 3V3是一款具有4行20字符显示能力的液晶显示模块。从型号编码上我们可以了解到它的诸多特性:

  • “NHD - ”代表Newhaven Display品牌。
  • “0420 - ”明确了显示规格为4行20字符。
  • “H1Z - ”是具体的型号。
  • “F - ”表示采用了半透反射技术。
  • “L - ”说明配备了黄/绿色LED背光源。
  • “G - ”代表STN - 灰色显示。
  • “B - ”是6:00视角。
  • “W - ”意味着宽温度范围( - 20°C ~ +70°C)。
  • “3V3 - ”表示工作电压为3.3V,并且该产品符合RoHS标准。

二、功能与特性

显示能力

具备4行20字符的显示能力,能够满足大多数简单信息显示的需求,如设备状态、参数等。

内置控制器

内置了SPLC780D或ST7066U控制器,为显示模块的稳定运行提供了保障。相关的控制器规格可以从http://www.newhavendisplay.com/app_notes/SPLC780D.pdf和http://www.newhavendisplay.com/app_notes/ST7066U.pdf下载。

电源与电气特性

  • 采用 +3.3V电源供电,具有1/16 duty,1/4 bias的特点。
  • 工作温度范围为 - 20°C ~ +70°C,存储温度范围为 - 30°C ~ +80°C,能适应较宽的环境温度变化。

三、引脚描述与接线图

Pin No. Symbol External Connection Function Description
1 Vss Power Supply Ground
2 VDD Power Supply Supply voltage for logic (+3.3V)
3 V0 Power Supply Power supply for contrast (approx. 0.3V)
4 RS MPU Register select signal. RS = 0: Command, RS = 1: Data
5 R/W MPU Read/Write select signal, R/W = 1: Read R/W = 0: Write
6 E MPU Operation enable signal. Falling edge triggered.
7 - 10 DB0 - DB3 MPU Four low order bi - directional three - state data bus lines. These four are not used during 4 - bit operation.
11 - 14 DB4 - DB7 MPU Four high order bi - directional three - state data bus lines.
15 LED+ Power Supply Power supply for LED Backlight (+3.3V)
16 LED - Power Supply Ground for backlight

在实际设计中,正确连接这些引脚对于模块的正常工作至关重要。大家在接线时,有没有遇到过因为引脚连接错误而导致模块无法正常显示的情况呢?

四、电气与光学特性

电气特性

Item Symbol Condition Min. Typ. Max. Unit
Operating Temperature Range Top Absolute Max - 20 - +70 ⁰C
Storage Temperature Range Tst Absolute Max - 30 - +80 ⁰C
Supply Voltage VDD 3.0 3.3 3.5 V
Supply Current IDD Ta = 25°C, VDD = 3.3V - 4.0 5.0 mA
Supply for LCD (contrast) VDD - V0 Ta = 25°C - 3.0 - V
“H” Level input Vih 2.2 - VDD V
“L” Level input Vil 0 - 0.6 V
“H” Level output Voh 2.4 - - V
“L” Level output Vol - - 0.4 V
Backlight Supply Voltage Vled - - 3.3 - V
Backlight Supply Current Iled Vled = 3.3V - 150 - mA

光学特性

Item Symbol Condition Min. Typ. Max. Unit
Viewing Angle – Vertical (top) AV Cr ≥2 - 25 -
Viewing Angle – Vertical (bottom) AV Cr ≥2 - 70 -
Viewing Angle – Horizontal (left) AH Cr ≥2 - 30 -
Viewing Angle – Horizontal (right) AH Cr ≥2 - 30 -
Contrast Ratio Cr - 2 - -
Response Time (rise) Tr - - 120 150 ms
Response Time (fall) Tf - - 120 150 ms

这些特性决定了模块在不同环境下的显示效果和性能表现。例如,在设计户外设备时,就需要考虑模块的温度范围和对比度等特性。

五、初始化程序

8位初始化

/**********************************************************/ 
void command(char i) 
{ 
    P1 = i;
    P1 = i; //put data on output Port 
    D_I = 0; //D/I=LOW : send instruction 
    D_I = 0;
    R_W = 0; //R/W=LOW:Write
    E = 1;
    Delay (1);
    Delay(1); //enable pulse width >= 300ns 
    E = 0; //Clock enable: falling edge 
} 
/**********************************************************/ 
void write(char i) 
{
    P1 = i; //put data on output Port 
    P1 = i;
    D_I = 1; //D/I=LOW : send data 
    D_I = 1;
    R_W = 0; //R/W=LOW:Write
    E = 1; 
    Delay(1); //enable pulse width >= 300ns 
    Delay (1);
    E = 0;
} 
/**********************************************************/ 
void init() 
{ 
    E = 0; 
    Delay(100); //Wait >15 msec after power is applied 
    Delay (100);
    command (0x30);
    command(0x30); //command 0x30 = Wake up 
    Delay(30); //must wait 5ms, busy flag not available 
    Delay(30);
    command (0x30);
    command(0x30); //command 0x30 = Wake up #2 
    Delay(10); //must wait 160us, busy flag not available 
    Delay(10);
    command (0x30);
    command(0x30); //command 0x30 = Wake up #3 
    Delay(10); //must wait 160us, busy flag not available 
    Delay (10);
    command (0x38);
    command(0x38); //Function set: 8-bit/2-line 
    command (0x10); //Set cursor
    command (0x0c);
    command(0x0c); //Display ON; Cursor ON 
    command (0x06); //Entry mode set
}
/**********************************************************/

4位初始化

/******
void command(char i) 
{ 
    P1 = i;
    P1 = i; //put data on output Port 
    D_I = 0; //D/I=LOW : send instruction 
    D_I = 0;
    R_W = 0; 
    Nybble(); //R/W=LOW:Write
    Nybble(); //Send lower 4 bits 
    i = i < < 4; //Shift over by 4 bits 
    i = i < < 4;
    P1 = i;
    P1 = i; //put data on output Port 
    Nybble ();
    Nybble(); //Send upper 4 bits 
} 
/**********************************************************/ 
void write(char i) 
{
    P1 = i;
    P1 = i; //put data on output Port 
    D_I = 1; //D/I=HIGH : send data 
    D_I = 1;
    R_W = 0;
    R_W = 0; //R/W=LOW : Write 
    Nybble();
    Nybble(); //Clock lower 4 bits 
    i = i < < 4;
    i = i < < 4; //Shift over by 4 bits 
    P1 = i; //put data on output Port 
    P1 = i;
    Nybble();
    Nybble(); //Clock upper 4 bits 
} 
void Nybble() 
{
    E = 1; 
    Delay (1);
    Delay(1); //enable pulse width >= 300ns 
    E = 0;
    E = 0; //Clock enable: falling edge 
} 
void init() 
{
    P1 = 0; P3 = 0; 
    Delay (100);
    Delay(100); //Wait >15 msec after power is applied 
    P1 = 0x30;
    P1 = 0x30; //put 0x30 on the output port 
    Delay(30); //must wait 5ms, busy flag not available 
    Delay(30);
    Nybble();
    Nybble(); //command 0x30 = Wake up 
    Delay (10);
    Delay(10); //must wait 160us, busy flag not available 
    Nybble(); //command 0x30 = Wake up #2 
    Nybble(); 
    Delay (10);
    Delay(10); //must wait 160us, busy flag not available 
    Nybble();
    Nybble(); //command 0x30 = Wake up #3 
    Delay(10); //can check busy flag now instead of delay 
    Delay(10);
    P1 = 0x20;
    P1 = 0x20; //put 0x20 on the output port 
    Nybble(); //Function set: 4-bit interface 
    command(0x28); //Function set: 4-bit/2-line 
    Nybble();
    command (0x10); //Set cursor
    command (0x0F);
    command(0x0F); //Display ON; Blinking cursor 
    command (0x06); //Entry Mode set
}
****

在实际应用中,根据具体需求选择合适的初始化方式。大家在编写初始化程序时,有没有遇到过一些难以调试的问题呢?

六、质量与使用注意事项

质量测试

该模块经过了多项质量测试,包括高温存储、低温存储、高温运行、低温运行、高温高湿运行、热冲击抗性、振动测试和静电测试等。这些测试确保了模块在不同环境下的可靠性。

使用注意事项

使用LCDs/LCMs时,需要注意一些事项,具体内容可以查看www.newhavendisplay.com/specs/precautions.pdf。同时,关于保修信息和条款可以访问http://www.newhavendisplay.com/index.php?main_page=terms。

总之,NHD - 0420H1Z - FL - GBW - 3V3字符液晶显示模块具有丰富的功能和良好的性能,在电子设计中有着广泛的应用前景。希望通过本文的介绍,能帮助大家更好地了解和使用这款模块。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分