Grove 1.2英寸IPS显示屏
Grove 1.2英寸IPS显示屏是Seeed Studio为您精心打造的一款1.2英寸串行液晶显示屏。这款显示屏拥有高达240x240的分辨率,呈现出清晰、色彩丰富的图像表现。其设计初衷在于提供一个简单、高质量的显示解决方案,以满足各种DIY或物联网(IoT)项目的需求。
它采用串行SPI接口,仅需SCK和SDA两个接口即可与主控制器连接,简化了用户的操作,节省了布线时间。RGB彩色显示技术进一步丰富了每个图像的色彩,使其更加鲜艳生动。
同时,Grove 1.2英寸IPS显示屏采用了IPS全视角技术,无论用户从哪个角度观看,都能获得几乎相同的视觉体验。这意味着您的项目将从任何角度都呈现出最佳的显示效果。
此外,我们还选择了ST7789作为显示屏的驱动IC,并为您准备了开源的驱动库和示例代码,以便您能快速开始项目开发。
特点
- 简化接口:显示屏采用串行SPI接口,仅需通过SCK和SDA连接到主控制器。这极大地简化了用户操作,节省了布线时间。
- 高分辨率:拥有高达240x240像素的分辨率,显示屏可以呈现清晰且生动的图像,提升您项目的视觉体验。
- 全视角IPS技术:Grove 1.2英寸IPS显示屏采用平面切换(IPS)技术,可确保从所有角度观看时色彩一致、准确。
- 色彩丰富:显示屏可以呈现高达65k种颜色。RGB彩色显示技术为图像增添了深度和变化,使其更加鲜艳且逼真。
- 小巧尺寸:屏幕尺寸为24.76x26.8mm,电路板尺寸为40x40mm。其小巧的尺寸使其成为各种DIY或物联网(IoT)项目的理想选择。
- 宽输入电压范围:电路板可接受3.3V或5V的输入电压,使其兼容各种电源。
- 可靠的驱动IC:显示屏采用ST7789作为驱动IC。其开源驱动库和示例代码使得用户更容易上手。
- 宽工作温度范围:工作温度范围在-20至70摄氏度之间,使这款显示屏适用于各种环境。
应用创意
- DIY天气站:Grove 1.2英寸IPS显示屏可用于自制天气站,提供实时天气信息。它可以展示丰富且生动的图标和数据,提供引人入胜的用户体验。
- 个人数字艺术展示:显示屏可以融入数字艺术设备中,以其高分辨率和彩色显示来展示您的创意想法。这使得它成为艺术和设计项目的出色组件。
- DIY游戏主机:鉴于其高分辨率和全视角显示特点,Grove 1.2英寸IPS显示屏是自制游戏主机的绝佳选择。其生动的彩色显示将提升游戏体验。
- 智能家居系统:显示屏可以集成到智能家居系统中,提供清晰且生动的视觉反馈,展示各种家居状况或系统状态。
- 教育项目:在教育领域,显示屏可用于课堂项目,教导学生有关图形、编程和电子学的知识。其简单的接口和易于设置的特点使其成为学习环境的理想选择。
- 工业控制面板:在工业应用中,显示屏可用于控制面板,展示重要信息或状态,帮助操作人员监控和控制工业过程。其宽视角确保了从不同角度都能清晰可见。
硬件概述
引脚映射
入门指南
:::注意 如果您是第一次使用Arduino,我们强烈建议您在开始之前先阅读Arduino入门指南。 :::
Arduino实战
硬件
所需材料
Seeeduino V4.2 | Base Shield | Grove-1.2 英寸 IPS 显示屏 |
---|---|---|
立即获取 | 立即获取 | 立即获取 |
:::注意 1 请轻轻插入USB线,否则可能会损坏端口。请使用内部有4根线的USB线,2根线的USB线无法传输数据。如果您不确定您手中的USB线是几根线的,可以点击这里购买。
2 购买每个Grove模块时,都会附带一根Grove电缆。如果您丢失了Grove电缆,可以点击这里购买。 :::
步骤 1. 将Grove-1.2英寸IPS显示屏连接到Grove-Base Shield的D7(D7/D8)端口。
步骤 2. 将Grove-Base Shield插入Seeeduino。
步骤 3. 通过USB线将Seeeduino连接到电脑。
:::注意 如果没有Grove Base Shield,我们也可以直接将Grove-1.2英寸IPS显示屏连接到Seeeduino,如下所示。 :::
Seeeduino | Grove-1.2 英寸IPS显示屏 |
---|---|
5V | 红色(VCC) |
GND | 黑色 (GND) |
SDA | 白色 (DTA) |
SCK | 黄色 (SCK) |
软件
- Step 1. 步骤 1. 从Github下载Arduino库。
步骤 2. 参考如何安装库来为Arduino安装库。
步骤 3. 下载并正确安装库之后,您可以在示例文件夹中找到一个名为ST7789_HelloWorld.ino的示例程序。该程序是为Grove-1.2英寸IPS显示屏设计的。
#include <Adafruit_GFX.h>
#include <Arduino_ST7789_Fast.h>
#define SCK 7
#define SDA 8
Arduino_ST7789 lcd = Arduino_ST7789(SCK, SDA);
void setup(void)
{
lcd.init();
lcd.fillScreen(BLACK);
lcd.setCursor(0, 0);
lcd.setTextColor(RED,BLACK);
lcd.setTextSize(3);
lcd.println("HELLO WORLD");
}
void loop()
{
}
- 步骤 4. 您会在显示屏上看到“Hello World”的打印内容。
使用Arduino UNO实现快速I/O
与使用标准的digitalWrite()
函数相比,直接通过寄存器操作Arduino的I/O引脚可以提供更高的效率和速度。但是,这种方法通常需要更深入地了解Arduino硬件和微控制器的工作原理。
如果您希望使用更快的I/O,您需要在Arduino_ST7789_Fast.h
文件中进行一些修改。首先,您应该将第20行更改为:#define FAST_IO 1
。此外,在第23行到第26行之间,编写用于设置IO为高电平和低电平的代码。下面是一个使用D7/D8的示例:
#define FAST_IO 1
#if FAST_IO
#define LCD_SCK_SET PORTD |= (1 << PORTD7); // SET SCK HIGH
#define LCD_SDA_SET PORTB |= (1 << PORTB0); // SET SDA HIGH
#define LCD_SCK_CLR PORTD &= ~(1 << PORTD7); // SET SCK LOW
#define LCD_SDA_CLR PORTB &= ~(1 << PORTB0); // SET SDA LOW
#endif
以下是关于如何使用寄存器来控制Arduino UNO上的I/O引脚的简短教程:
Arduino UNO有三个端口,分别标记为B、C和D。每个端口都有一个对应的数据寄存器,即PORTB、PORTC和PORTD。这些寄存器可以直接用于控制I/O引脚。
例如,如果您想将数字引脚13(对应于PORTB的第5位,即PORTB5)设置为HIGH,您可以编写如下代码:
PORTB |= (1 << 5);
这句话通过位或运算符(|=)和左移运算符(<<)将PORTB的第5位设置为1,而不改变其他位。
相反,如果您想将同一引脚设置为LOW,则可以使用以下代码:
PORTB &= ~(1 << 5);
这条语句将PORTB的第5位设置为0,而不改变其他位。这是通过位与运算符(&=)和位非运算符(~)实现的。
以下是Arduino UNO上的所有端口及其对应的寄存器:
数字端口
- 数字端口0 - 7对应PORTD寄存器,位为PORTD0到PORTD7
- 数字端口8 - 13对应PORTB寄存器,位为PORTB0到PORTB5
模拟输入端口
- 模拟输入端口A0 - A5对应PORTC寄存器,位为PORTC0到PORTC5
模拟输入端口也可以作为数字I/O使用,对应于数字引脚编号14到19。例如,A0也可以作为数字引脚14使用。
每个I/O寄存器还有两个相关寄存器,用于控制引脚的模式(输入或输出)和输入引脚的上拉电阻。例如,PORTD的控制寄存器是DDRD和PIND。DDRx寄存器用于设置引脚模式,PINx寄存器用于读取引脚状态。
在向PORTx
寄存器写入之前,您应首先确保对应的DDRx
寄存器已正确设置。例如,如果您想将PD0
设置为输出并输出HIGH,您应该先设置DDRD
寄存器:
DDRD |= (1 << 0); // Set PD0 as output
PORTD |= (1 << 0); // Output HIGH to PD0
这些信息可以在ATmega328P的数据手册中找到,ATmega328P是Arduino UNO的微控制器。如果您使用的是其他Arduino型号,您可能需要参考相应微控制器的数据手册,因为不同的微控制器可能有不同的端口和寄存器布局。
在操纵寄存器时,必须格外小心,因为任何错误的操作都可能影响其他引脚的状态,甚至影响微控制器的功能。
希望使用本产品寄存器操作模式的用户需要独立理解和实施上述知识和技能。
常见问题解答(FAQ)
1. 当我重新编程时,如果屏幕处于连接状态,屏幕就不工作。
答:如果您的程序持续与屏幕进行通信,重新编程可能会中断此过程,导致屏幕出现故障。您可以尝试关闭电源以恢复屏幕的正常操作。
3. 我应该使用什么样的电源为显示器供电?
答:电路板可以接受3.3V或5V的输入电压,因此您可以在此范围内选择电源。
4. 我可以在极端温度条件下使用显示器吗?
答:显示器的工作温度范围为-20至70摄氏度。但是,为了获得最佳性能和延长使用寿命,建议在正常室温条件下操作显示器。
5. 我的显示器上的颜色看起来不对。可能是什么问题?
答:请确保在代码中正确初始化了显示器,并且您正在使用正确的颜色值。如果问题仍然存在,可能是显示器或连接线路存在问题。请检查连接,或如果有其他显示器可用,请尝试使用另一个显示器。
在线原理图查看器
资源
- [ZIP] Grove-1.2 英寸IPS显示屏的Eagle文件
- [PDF] ST7789 规格书
技术支持与产品讨论
感谢您选择我们的产品!我们在此为您提供不同的支持,以确保您使用我们的产品时体验尽可能顺畅。为了满足不同的偏好和需求,我们提供多个沟通渠道。