电子说
在电子设备的设计中,液晶显示模块是不可或缺的一部分,它为用户提供了直观的信息展示界面。今天,我们将详细解析Newhaven Display International推出的NHD - 0220WH - LTGH - JT#字符液晶显示模块,探讨其特点、参数及使用方法。
NHD - 0220WH - LTGH - JT#是一款具有2行20字符显示能力的液晶显示模块。从其型号编码中,我们可以了解到很多关键信息:
该模块具备2行20字符的显示能力,能够清晰地展示文本信息,适用于各种需要显示简单文本的应用场景,如仪器仪表、工业控制等。
内置ST7066U控制器,为模块的稳定运行提供了保障。通过该控制器,我们可以方便地对显示内容进行控制和管理。你是否在使用类似内置控制器的模块时,遇到过一些控制方面的问题呢?
| Pin No. | Symbol | External Connection | Function Description |
|---|---|---|---|
| 1 | Vss | Power Supply | Ground |
| 2 | VDD | Power Supply | Supply Voltage for logic (+5.0) |
| 3 | V0 | Power Supply | Supply Voltage for contrast (approx. 0.65V) |
| 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 | Backlight Anode (+3.5) |
| 16 | LED - | Power Supply | Backlight Cathode (Ground) |
推荐使用2.54mm间距的引脚作为LCD连接器,了解这些引脚的功能和连接方式,对于正确使用该模块至关重要。你在实际接线过程中,是否遇到过引脚连接错误导致的问题呢?
| 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 | - | 4.7 | 5.0 | 5.5 | V |
| Supply Current | IDD | VDD = 5.0V | 0.5 | 1.8 | 3.5 | mA |
| Supply for LCD (contrast) | VLCD | TOP = 25°C | 4.2 | 4.35 | 4.5 | V |
| “H” Level input | VIH | - | 0.7 VDD | - | VDD | V |
| “L” Level input | VIL | - | VSS | - | 0.6 | V |
| “H” Level output | VOH | - | 3.9 | - | VDD | V |
| “L” Level output | VOL | - | VSS | - | 0.4 | V |
| Backlight Supply Voltage | VLED | - | 3.4 | 3.5 | 3.6 | V |
| Backlight Supply Current | ILED | VLED = 3.5V | - | 48 | 60 | mA |
| Backlight Lifetime | - | ILED = 48 mA | - | 50,000 | - | Hrs. |
| Item | Symbol | Condition | Min. | Typ. | Max. | Unit | ||
|---|---|---|---|---|---|---|---|---|
| Optimal Viewing Angles | Top | ϕY+ | CR ≥ 2 | - | 20 | - | ⁰ | |
| Bottom | ϕY - | - | 40 | - | ⁰ | |||
| Left | θX - | - | 30 | - | ⁰ | |||
| Right | θX+ | - | 30 | - | ⁰ | |||
| Contrast Ratio | CR | - | - | 2 | - | - | ||
| Response Time | Rise | TR | TOP = 25°C | - | 150 | 200 | ms | |
| Fall | TF | - | 150 | 200 | ms |
这些特性决定了模块在不同环境下的显示效果和性能,在设计应用时需要充分考虑。
内置ST7066U控制器,其详细规格可在http://www.newhavendisplay.com/app_notes/ST7066U.pdf下载。
| 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 |
了解DDRAM地址的分布,有助于我们准确地将数据写入和读取到显示模块中。
该模块提供了一系列指令,用于控制显示内容、光标位置等。例如,Clear Display指令用于清除显示内容,Home Return指令用于将光标返回初始位置等。这些指令的执行时间和操作码都有明确规定,在编程时需要严格按照要求使用。
包括写入数据和读取数据的时序要求,如Enable Cycle Time、Enable Pulse Width等。在进行数据传输时,必须满足这些时序要求,否则可能会导致数据传输错误。你在实际编程中,是否会特别关注这些时序特性呢?
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);
Delay(1); //enable pulse width >= 300ns
E = 0; //Clock enable:falling edge
}
void write(char i) {
P1 = i; //put data on output Port
R_W = 0;
D_I = 1; //D/I = HIGH : send data
E = 1;
Delay (1);
Delay(1); //enable pulse width >= 300ns
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);
command (0x30); //command 0x30 = Wake up #2
Delay (10);
command (0x30); //command 0x30 = Wake up #3
Delay (10);
command (0x38); //Function set: 8 - bit/2 - line
command (0x10);
command (0x0c);
command (0x06); //Set cursor //Display ON; Cursor ON //Entry mode set
}
void command(char i)
{
P1 = i; //put data on output Port
D_I = 0; //D/I = LOW : send instruction
R_W = 0;
Nybble();
i = i < < 4; //Shift over by 4 bits
P1 = i;
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;
Nybble ();
P1 = i;
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);
Delay(1); //enable pulse width >= 300ns
E = 0; //Clock enable:falling edge
}
void init()
{
P1 = 0;
P3 = 0;
Delay (100); //Wait >40 msec after power is applied
P1 = 0x30;
Delay (30);
Nybble(); //command 0x30 = Wake up
Delay (10);
Nybble(); //command 0x30 = Wake up #2
Delay (10);
Nybble (); //command 0x30 = Wake up #3
Delay(10);
P1 = 0x20;
Nybble(); //Function set: 4 - bit interface
Nybble ();
command (0x28); //Function set: 4 - bit/2 - line
command (0x10); //Set cursor
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 - 0220WH - LTGH - JT#字符液晶显示模块的详细解析,我们对该模块有了更深入的了解。在实际应用中,我们可以根据其特性和参数,合理地进行设计和编程,以实现最佳的显示效果。你在使用类似的液晶显示模块时,是否有一些独特的经验或技巧呢?欢迎在评论区分享。
全部0条评论
快来发表一下你的评论吧 !