深入解析NHD-0220DZ-NSW-FBW字符液晶显示模块

电子说

1.4w人已加入

描述

深入解析NHD-0220DZ-NSW-FBW字符液晶显示模块

在电子设备的设计中,液晶显示模块是不可或缺的一部分,它为用户提供了直观的信息交互界面。今天我们要深入探讨的是Newhaven Display公司的NHD-0220DZ-NSW-FBW字符液晶显示模块,从产品概述、功能特性、电气与光学特性、控制器信息等多个方面进行详细解析。

文件下载:NHD-0220DZ-NSW-FBW.pdf

产品概述

NHD-0220DZ-NSW-FBW是一款2行x20字符的液晶显示模块,型号中的各个部分都有其特定含义:

  • “NHD-”代表Newhaven Display。
  • “0220-”表示2行x20字符的显示规格。
  • “DZ-”为具体型号。
  • “N-”表示透射式。
  • “SW-”代表侧面白色LED背光。
  • “F-”是FSTN负性显示模式。
  • “B-”表示6:00最佳视角。
  • “W-”意味着宽温度范围,并且该产品符合RoHS标准。

功能与特性

显示规格

该模块具有2行x20字符的显示能力,能够清晰地显示文本信息,满足一般的信息展示需求。

内置控制器

内置ST7066U控制器,它为模块的稳定运行提供了有力支持。控制器的使用使得模块的操作更加方便,能够与微处理器进行有效的通信。

电源与工作模式

采用+5.0V电源供电,工作模式为1/16 duty,1/5 bias,这种工作模式有助于保证显示的稳定性和清晰度。

引脚说明与接线图

模块的引脚定义明确,每个引脚都有其特定的功能: Pin No. Symbol External Connection Function Description
1 VSS Power Supply 接地
2 VDD Power Supply 逻辑电源电压(+5.0V)
3 V0 Adj. Power Supply 对比度电源(约0.7V)
4 RS MPU 寄存器选择信号,RS=0为命令,RS=1为数据
5 R/W MPU 读写选择信号,R/W=1为读,R/W=0为写
6 E MPU 操作使能信号,下降沿触发
7 - 10 DB0 – DB3 MPU 低4位双向三态数据总线,4位操作时不使用
11 - 14 DB4 – DB7 MPU 高4位双向三态数据总线
15 LED_A Power Supply 背光阳极(通过板载电阻接+5.0V)
16 LED_K Power Supply 背光阴极(接地)

推荐使用2x8 2.54mm间距的连接器进行连接,这样可以确保连接的稳定性和可靠性。

电气与光学特性

电气特性

Item Symbol Condition Min. Typ. Max. Unit
工作温度范围 TOP 绝对最大 -20 - +70 ⁰C
存储温度范围 TST 绝对最大 -30 - +80 ⁰C
电源电压 VDD - 4.5 5.0 5.5 V
电源电流 IDD VDD = 5.0V 1.0 1.2 1.5 mA
液晶电源(对比度) VLCD TOP = 25°C 4.2 4.35 4.5 V
“H” 电平输入 VIH - 0.7 * VDD - VDD V
“L” 电平输入 VIL - VSS - 0.6 V
“H” 电平输出 VOH - 3.9 - VDD V
“L” 电平输出 VOL - VSS - 0.4 V
背光电源电流 ILED VLED = 5.0V 24 32 40 mA
背光电源电压 VLED - 4.9 5.0 5.1 V

光学特性

Item Symbol Condition Min. Typ. Max. Unit
最佳视角 顶部 ϕY+ CR ≥ 2 - 30 -
底部 ϕY- - 60 -
左侧 θX- - 45 -
右侧 θX+ - 45 -
对比度 CR - 2 5 - -
响应时间 上升 TR TOP = 25°C - 150 200 ms
下降 TF - 150 200 ms

这些特性决定了模块在不同环境下的显示效果,工程师在设计时需要根据实际需求进行考虑。

控制器信息

内置的ST7066U控制器是模块的核心,其详细规格可以从http://www.newhavendisplay.com/app_notes/ST7066U.pdf下载。同时,文档中还给出了DDRAM地址和命令表,方便工程师进行编程控制。

DDRAM地址

1 2 3 4 5 6 7 8 9 14
00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 11 12 13
40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F 50 51 52 53

命令表

Instruction Instruction code Description 270 KHZ Execution time (f OSC =
RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0
清屏 0 0 0 0 0 0 0 0 0 1 将“20H”写入DDRAM并将DDRAM地址从AC设置为“00H” 1.52ms
归位 0 0 0 0 0 0 0 0 1 - 将DDRAM地址从AC设置为“00H”,如果光标移动则返回其原始位置,DDRAM内容不变 1.52ms
输入模式设置 0 0 0 0 0 0 0 1 I/D SH 设置光标移动方向并指定显示移位,这些参数在数据读写时执行 37µs
显示开/关控制 0 0 0 0 0 0 1 D C B D=1:整个显示打开;C=1:光标打开;B=1:闪烁光标打开 37µs
光标或显示移位 0 0 0 0 0 1 S/C R/L - - 设置光标移动和显示移位控制位及方向,不改变DDRAM数据 37µs
功能设置 0 0 0 0 1 DL N F - - DL:接口数据为8/4位;N:行数为2/1;F:字体大小为5x11/5x8 37µs
设置CGRAM地址 0 0 0 1 AC5 AC4 AC3 AC2 AC1 AC0 在地址计数器中设置CGRAM地址 37µs
设置DDRAM地址 0 0 1 AC6 AC5 AC4 AC3 AC2 AC1 AC0 在地址计数器中设置DDRAM地址 37µs
读取忙标志和地址 0 1 BF AC6 AC5 AC4 AC3 AC2 AC1 AC0 通过读取BF可知是否处于内部操作中,也可读取地址计数器内容 0s
向地址写入数据 1 0 D7 D6 D5 D4 D3 D2 D1 D0 将数据写入内部RAM(DDRAM/CGRAM) 37µs
从RAM读取数据 1 1 D7 D6 D5 D4 D3 D2 D1 D0 从内部RAM(DDRAM/CGRAM)读取数据 37µs

时序特性

写入数据

参数 描述 引脚 时间 单位
Tc 使能周期时间 Pin E 1200 ns
TPW 使能脉冲宽度 Pin E 140 ns
TR,TF 使能上升/下降时间 Pin E 25 ns
TAS 地址建立时间 Pins: RS,RW,E 0 - ns
TAH 地址保持时间 Pins: RS,RW,E 10 ns
TDSW 数据建立时间 Pins: DB0 - DB7 40 - ns
TH 数据保持时间 Pins: DB0 - DB7 10 ns

读取数据

参数 描述 引脚 时间 单位
Tc 使能周期时间 Pin E 1200 ns
Tpw 使能脉冲宽度 Pin E 140 ns
TR,TF 使能上升/下降时间 Pin E 25 ns
TAS 地址建立时间 Pins: RS,RW,E 0 ns
TAH 地址保持时间 Pins: RS,RW,E 10 ns
TDDR 数据建立时间 Pins: DB0 - DB7 100 ns
TH 数据保持时间 Pins: DB0 - DB7 10 ns

这些时序特性对于确保数据的准确传输和模块的正常工作至关重要,工程师在设计电路时需要严格按照这些参数进行设置。

初始化程序示例

文档中给出了8位和4位初始化的示例程序,这些程序可以帮助工程师快速上手,实现模块的初始化。

8位初始化

/**********************************************************/ 
void command(char i) { 
    P1 = i; //put data on output Port 
    D_I = 0; //D/I=LOW : send instruction 
    RW = 0; //R/W=LOW:Write
    E = 1;
    Delay(1);
    E = 0; //Clock enable: falling edge 
}

void write(char i) {
    P1 = i; //put data on output Port 
    D_I = 1; //D/I=HIGH : send data 
    RW = 0; //R/W=LOW : Write
    E = 1; 
    Delay(1);
    E = 0; //Clock enable: falling edge 
}

void init() {
    E = 0; 
    Delay(100); //Wait >40 msec after power is applied 
    command(0x30); //command 0x30 = Wake up 
    Delay(30); //must wait 5ms, busy flag not available 
    command(0x30); //command 0x30 = Wake up #2 
    Delay(10); //must wait 160us, busy flag not available 
    command(0x30); //command 0x30 = Wake up #3 
    Delay(10); //must wait 160us, busy flag not available 
    command(0x38); //Function set: 8-bit/2-line 
    command(0x0c); //Display ON; Cursor ON 
    command(0x06); //Entry mode set 
}

4位初始化

/**********************************************************/ 
void command(char i) {
    P1 = i; //put data on output Port 
    D_I = 0; //D/I=LOW : send instruction 
    RW = 0; //R/W=LOW: Write
    Nybble(); //Send upper 4 bits 
    i = i < < 4; //Shift over by 4 bits 
    P1 = i; //put data on output Port 
    Nybble(); //Send upper 4 bits 
}

void write(char i) {
    P1 = i; //put data on output Port 
    D_I = 1; //D/I=HIGH : send data 
    RW = 0; //R/W=LOW: Write
    Nybble(); //Clock upper 4 bits 
    i = i < < 4; //Shift over by 4 bits 
    P1 = i; //put data on output Port 
    Nybble(); //Clock upper 4 bits 
}

void Nybble() {
    E = 1; 
    Delay(1);
    E = 0; //Clock enable: falling edge 
}

void init() {
    P1 = 0; 
    P3 = 0; 
    Delay(100); //Wait >40 msec after power is applied 
    P1 = 0x30; //put 0x30 on the output port 
    Delay(30); //must wait 5ms, busy flag not available 
    Nybble(); //command 0x30 = Wake up 
    Delay(10); //must wait 160us, busy flag not available 
    Nybble(); //command 0x30 = Wake up #2 
    Delay(10); //must wait 160us, busy flag not available 
    Nybble(); //command 0x30 = Wake up #3 
    Delay(10);
    P1 = 0x20; //put 0x20 on the output port 
    Nybble(); //Function set: 4-bit interface 
    command(0x28); //Function set: 4-bit/2-line 
    command(0x0F); //Display ON; Blinking cursor 
    command(0x06); //Entry Mode set 
}

质量信息与注意事项

文档中还给出了该模块的质量测试信息,包括高温存储、低温存储、高温操作、低温操作、高温高湿操作、热冲击抗性、振动测试和静电测试等。同时,使用LCD/LCM时需要注意一些事项,可参考www.newhavendisplay.com/specs/precautions.pdf。保修信息和条款可查看http://www.newhavendisplay.com/index.php?main_page=terms。

通过对NHD-0220DZ-NSW-FBW字符液晶显示模块的详细解析,我们可以看到它具有丰富的功能和良好的性能。在实际设计中,工程师需要根据具体需求合理选择和使用该模块,同时要注意其电气、光学特性和时序要求,以确保系统的稳定运行。大家在使用过程中遇到过哪些问题呢?欢迎在评论区分享交流。

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

全部0条评论

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

×
20
完善资料,
赚取积分