Newhaven Display NHD - 0116GZ - NSR - FBW液晶显示模块技术解析
一、产品概述
Newhaven Display推出的NHD - 0116GZ - NSR - FBW字符液晶显示模块,适用于多种电子设备显示场景。其型号含义丰富,“NHD”代表Newhaven Display,“0116”表示1行16字符显示,“GZ”为特定型号,“N”是透射型,“SR”代表侧面红色LED背光,“F”为FSTN(负性),“B”表示6:00视角,“W”意味着宽温度范围( - 20°C~ + 70°C),并且该产品符合RoHS标准。
二、功能与特性
2.1 显示规格
该模块为1行16字符显示,内置SPLC780D或等效控制器,采用 + 5.0V电源供电,具备1/16 duty、1/5 bias的驱动方式。
2.2 电气特性
| 项目 | 符号 | 条件 | 最小值 | 典型值 | 最大值 | 单位 |
|---|---|---|---|---|---|---|
| 工作温度范围 | Top | 绝对最大 | - 20 | - | + 70 | °C |
| 存储温度范围 | Tst | 绝对最大 | - 30 | - | + 80 | °C |
| 电源电压 | VDD | - | 4.7 | 5.0 | 5.5 | V |
| 电源电流 | IDD | Ta = 25°C,VDD = 5.0V | - | 1.5 | 2.5 | mA |
| LCD电源(对比度) | VDD - V0 | Ta = 25°C | - | 4.5 | - | V |
| “H” 电平输入 | Vih | - | 2.2 | - | VDD | V |
| “L” 电平输入 | Vil | - | 0 | - | 0.6 | V |
| “H” 电平输出 | Voh | - | 2.4 | - | - | V |
| “L” 电平输出 | Vol | - | - | - | 0.4 | V |
| 背光电源电压 | Vled | - | - | 5.0 | - | V |
| 背光电源电流 | Iled | Vled = 5.0V | - | 30 | - | mA |
2.3 光学特性
| 项目 | 符号 | 条件 | 最小值 | 典型值 | 最大值 | 单位 |
|---|---|---|---|---|---|---|
| 垂直视角(顶部) | AV | Cr ≥ 3 | - | 20 | - | ° |
| 垂直视角(底部) | AV | Cr ≥ 3 | - | 50 | - | ° |
| 水平视角(左侧) | AH | Cr ≥ 3 | - | 30 | - | ° |
| 水平视角(右侧) | AH | Cr ≥ 3 | - | 30 | - | ° |
| 对比度 | Cr | - | 3 | 5 | - | - |
| 响应时间(上升) | Tr | - | - | 150 | 250 | ms |
| 响应时间(下降) | Tf | - | - | 150 | 250 | ms |
三、引脚分配与说明
3.1 引脚分配
| 引脚号 | 符号 | 外部连接 | 功能描述 |
|---|---|---|---|
| 1 | VSS | 电源 | 接地 |
| 2 | VDD | 电源 | 逻辑电源电压( + 5.0V) |
| 3 | V0 | 调节电源 | 对比度电源(约0.5V) |
| 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位操作时不使用 |
| 11 - 14 | DB4 – DB7 | MPU | 四个高阶双向三态数据总线 |
| 15 | LED + | 电源 | LED背光电源(通过板载电阻 + 5.0V) |
| 16 | LED - | 电源 | 背光接地 |
3.2 推荐连接器
推荐使用2.54mm间距引脚的LCD连接器,背光连接器信息未明确给出。
四、控制器信息
模块内置SPLC780D控制器,其规格可从http://www.newhavendisplay.com/app_notes/SPLC780D.pdf下载。
五、指令表
| 指令 | 指令代码 | 描述 | 执行时间(fosc = 270KHz) |
|---|---|---|---|
| 清除显示 | 0 0 0 0 0 0 0 0 1 | 将 “20H” 写入DDRAM并将DDRAM地址从AC设置为 “00H” | 1.52ms |
| 返回主页 | 0 0 0 0 0 0 0 1 - | 将DDRAM地址从AC设置为 “00H” ,若光标移动则返回原位置,DDRAM内容不变 | 1.52ms |
| 输入模式设置 | 0 0 0 0 0 0 0 1/D S | 指定光标移动方向并启用整个显示的移动 | 38us |
| 显示开/关控制 | 0 0 0 0 0 0 1 C B | 设置显示(D)、光标(C)和光标闪烁(B)的开/关控制位 | 38μs |
| 光标或显示移动 | 0 0 0 0 0 1 S/C R/L - - | 设置光标移动和显示移动控制位及方向,不改变DDRAM数据 | 38μS |
| 功能设置 | 0 0 0 0 1 DL N - - | 设置接口数据长度(DL:8位/4位)、显示行数(N:2行/1行)和显示字体类型(F:5x10点/5x8点) | 38μs |
| 设置CGRAM地址 | 0 0 0 1 AC5 AC4 AC3 AC2 AC1 ACO | 在地址计数器中设置CGRAM地址 | 38μs |
| 设置DDRAM地址 | 0 0 1 AC6 AC5 AC4 AC3 AC2 AC1 ACO | 在计数器中设置DDRAM地址 | 38us |
| 读取忙标志和地址计数器 | 0 1 BF AC6 AC5 AC4 AC3 AC2 AC1 ACO | 通过读取BF可知是否处于内部操作,也可读取地址计数器内容 | - |
| 写数据到RAM | 1 0 D7 D6 D5 D4 D3 D1 DO | 将数据写入内部(DDRAM/CGRAM) | 38us |
| 从RAM读取数据 | 1 1 D7 D6 D5 D4 D3 D1 DO | 从内部RAM(DDRAM/CGRAM)读取数据 | 38us |
六、显示字符地址代码
| 显示位置 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| DDRAM地址 | 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 |
七、时序特性
7.1 写模式(从MPU向SPLC780D写数据)
| 特性 | 符号 | 限制(最小值) | 限制(典型值) | 限制(最大值) | 单位 | 测试条件 |
|---|---|---|---|---|---|---|
| E周期时间 | to | 500 | - | - | ns | 引脚E |
| E脉冲宽度 | tPw | 230 | - | - | ns | 引脚E |
| E上升/下降时间 | tR,tF | - | - | 20 | ns | 引脚E |
| 地址建立时间 | tsP1 | 40 | - | - | ns | 引脚:RS, RW, E |
| 地址保持时间 | HO1 | 10 | - | - | ns | 引脚:RS, RW, E |
| 数据建立时间 | tsP2 | 80 | - | - | ns | 引脚:DB0 - DB7 |
| 数据保持时间 | tHO2 | 10 | - | - | ns | 引脚:DB0 - DB7 |
7.2 读模式(从SPLC780D向MPU读数据)
| 特性 | 符号 | 限制(最小值) | 限制(典型值) | 限制(最大值) | 单位 | 测试条件 |
|---|---|---|---|---|---|---|
| E周期时间 | to | 500 | - | - | ns | 引脚E |
| E脉冲宽度 | tv | 230 | - | - | ns | 引脚E |
| E上升/下降时间 | tR,tF | - | - | 20 | ns | 引脚E |
| 地址建立时间 | tsP1 | 40 | - | - | ns | 引脚:RS, RW, E |
| 地址保持时间 | tHD1 | 10 | - | - | ns | 引脚:RS, RW, E |
| 数据输出延迟时间 | to | - | - | 120 | ns | 引脚:DB0 - DB7 |
| 数据保持时间 | HD2 | 5.0 | - | - | ns | 引脚DB0 - DB7 |
八、初始化程序
8.1 8位初始化
/**********************************************************/
void command(char i)
{
P1 = i; //put data on output Port
D_I = 0; //D/I=LOW : send instruction
R_W = 0; //R/W=LOW : Write
E = 1;
Delay(1); //enable pulse width >= 300ns
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
R_W = 0; //R/W=LOW: Write
E = 1;
Delay(1); //enable pulse width >= 300ns
E = 0; //Clock enable: falling edge
}
void init()
{
E = 0;
Delay(100); //Wait >15 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(0x10); //Set cursor
command(0x0c); //Display ON; Cursor ON
command(0x06); //Entry mode set
}
8.2 4位初始化
/**********************************************************/
void command(char i)
{
P1 = i; //put data on output Port
D_I = 0; //D/I=LOW : send instruction
R_W = 0; //R/W=LOW: Write
Nybble(); //Send lower 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
R_W = 0; //R/W=LOW : Write
Nybble(); //Clock lower 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); //enable pulse width >= 300ns
E = 0; //Clock enable: falling edge
}
void init()
{
P1 = 0;
P3 = 0;
Delay(100); //Wait >15 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); //can check busy flag now instead of delay
P1 = 0x20; //put 0x20 on the output port
Nybble(); //Function set: 4-bit interface
command(0x28); //Function set: 4-bit/2-line
command(0x10); //Set cursor
command(0x0F); //Display ON; Blinking cursor
command(0x06); //Entry Mode set
}
九、质量信息
| 测试项目 | 测试内容 | 测试条件 | 注意事项 |
|---|---|---|---|
| 高温存储 | 长时间施加高温存储温度的耐久性测试 | + 80°C,48小时 | 2 |
| 低温存储 | 长时间施加低温存储温度的耐久性测试 | - 30°C,48小时 | 1,2 |
| 高温操作 | 长时间施加电应力(电压和电流)和高温热应力的耐久性测试 | + 70°C,48小时 | 2 |
| 低温操作 | 长时间施加电应力(电压和电流)和低温热应力的耐久性测试 | - 20°C,48小时 | 1,2 |
| 高温/湿度操作 | 长时间施加电应力(电压和电流)、高温和高湿度应力的耐久性测试 | + 40°C,90% RH,48小时 | 1,2 |
| 热冲击抗性 | 在高低温应力循环期间施加电应力(电压和电流)的耐久性测试 | 0°C,30分钟 -> 25°C,5分钟 -> 50°C,30分钟 = 1个周期,共10个周期 | - |
| 振动测试 | 施加振动以模拟运输和使用的耐久性测试 | 10 - 55Hz,15mm振幅,每个X、Y、Z方向60秒,共15分钟 | 3 |
| 静电测试 | 施加静电放电的耐久性测试 | VS = 800V,RS = 1.5kΩ,CS = 100pF,一次 | - |
注意事项:
- 注意观察是否有冷凝现象。
- 在25°C、0%RH下存储4小时后进行测试。
- 测试在产品本身进行,而非在容器内。
十、使用注意事项与保修信息
使用LCD/LCM时的注意事项可参考www.newhavendisplay.com/specs/precautions.pdf。保修信息和条款可查看http://www.newhavendisplay.com/index.php?main_page=terms 。
在实际设计中,工程师们需要根据具体需求合理运用这些特性和参数,确保模块的稳定运行。大家在使用这款模块时,有没有遇到过什么特别的问题呢?欢迎在评论区分享交流。
-
液晶显示模块
+关注
关注
0文章
90浏览量
12145
发布评论请先 登录
Newhaven Display NHD - 0116GZ - NSR - FBW液晶显示模块技术解析
评论