亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 制造工艺

展览:原始展示

展览:原始显示器这个非常简单的 Protip 将 LCD 连接到 Raspberry Pi,以显示您需要的任何数据,例如来自温度传感器的读数。

故事

简介

LCD 是任何项目的非常有用的附加组件。这个非常简单的 protip 将 LCD 连接到 Raspberry Pi 以显示您需要的任何数据。在我们的例子中,我们将显示温度传感器的读数。

硬件

我们需要便宜的 HDD44780 兼容 LCD、Raspberry Pi 3 和温湿度传感器 DHT11、微型 SD 卡和电源、1-2 个电位器、面包板和一些电线。 LCD、面包板、电线、电位计和传感器可以在此套件中找到。我们将使用 6 个 GPIO 引脚连接 LCD。虽然有一种使用 I2C 进行连接的方法,但这是最直接的方法并且具有重要的好处:


接线

我们将有几种连接 LCD 屏幕的选项:简单的 4 位连接和一个电位计来处理对比度和亮度,以及稍微复杂一点的 8 位连接,使用 2 个电位计对对比度和亮度进行高级控制。电位器也可以用1K或3K欧姆电阻代替。

每个字符和命令都作为一个字节(8 位)数据发送到 LCD。所以在 4 位模式下,字节被分成两组 4 位,通过 4 条数据线依次发送。理论上,8 位模式传输数据的速度是 4 位模式的两倍,因为整个字节是通过 8 条数据线一次性发送的。但是,LCD 驱动程序处理数据的时间相对较长,因此无论使用哪种模式,您都不会注意到 8 位和 4 位模式之间数据传输速度的真正差异。

LCD 引脚布局

数据引脚 (DB0-7 引脚 7-14)很简单。他们正在向显示器发送数据(切换高/低)。我们将只使用写入模式,不读取任何数据。

注册选择引脚 (RS 引脚 4)有两种用途。当拉低时,它可以向 LCD 发送命令(例如移动到的位置或清除屏幕)。这称为写入指令或命令寄存器或向屏幕发送数据。

读/写pin (R/W 引脚 5)将被拉低(只写),因为我们只在这个 protip 中写入 LCD。

启用销 (E pin 6) 将被切换以将数据写入寄存器。

简单的 LCD 连接

简单的 LCD 连接电路图

高级 液晶显示器连接

高级 LCD 连接电路图

有趣:

现在我们有两个电位器:左边一个负责对比度,右边一个负责亮度。您可能注意到我们从对比度电位器上移除了 5V 线(红色线),因为不需要额外的电压处理,因为我们有第二个电位器负责亮度。

DHT11 传感器连接

DHT11 传感器可以有 3 或 4 针选项,但是没关系,因为它在任何情况下都只使用 3 针读取数据,如果您有 4 针传感器,则只需连接 Vcc、信号/ 数据和接地引脚并忽略第 4 个。在上面的原理图中,您可以看到 4 针传感器连接。

DHT11 传感器:3 和 4 针选项

重要提示:

DHT11 传感器需要 3.3V 至 5V。首先,让我们将 DHT11 传感器连接到 3.3V Raspberry Pi 引脚 1,如果它工作,这个电压就足够了,如果读数很奇怪或者根本没有读数,请尝试将其连接到 5V Raspberry Pi 引脚 2。这个 protip 使用 3.3V。

到目前为止,在我们连接 Vcc 和 Ground 引脚后,我们需要将传感器的信号连接器连接到 Raspberry Pi 物理引脚 12 (GPIO 18)。

所需的库

在我们进行确切的编码之前,我们需要仔细检查我们是否有显示和传感器所需的库,如果缺少则安装它们。

只是仔细检查(有点偏执:))我们拥有所有必要的 Python 东西:

sudo apt-get install build-essential python-dev

RPLCD Python 库

可以从 Python 包索引或 PIP 安装 RPLCD 库。它可能已经安装在您的 Raspbian 上,但如果没有,请运行以下命令进行安装:

sudo apt-get install python-pip

安装PIP后,输入以下命令安装RPLCD库:

须藤 pip 安装 RPLCD

Adafruit DHT11 Python 库

我们正在使用 Adafruit DHT11 Python 库。您可以使用 Git 下载该库,因此如果您的 Raspberry Pi 上没有安装 Git,请运行以下命令:

sudo apt-get install git

你也可以试试:

sudo apt-get install git-core

重要提示:

如果您在安装替代 Git 时遇到错误,请运行:

sudo apt-get 更新
sudo apt-get install git-core

现在,运行命令从 Git 下载库:

git 克隆 https://github.com/adafruit/Adafruit_Python_DHT.git

转到新目录:

cd Adafruit_Python_DHT

并安装库:

须藤 python setup.py 安装

让我们开始编写脚本。

Python 脚本

我们将使用 Python 来编程我们的显示器和传感器。我使用 Visual Studio 作为 IDE,但您可以使用任何其他您喜欢使用的工具。

首先,我们需要通过 SSH(例如 PuTTY)连接到 Pi。然后,我们将使用一个名为 temperature.py 的脚本。

要创建脚本,我们可以使用 nano 编辑器。连接到您的 Pi 后,运行以下命令以创建一个名为 temperature.py 的文件:

须藤纳米温度.py

然后,将以下代码(8 位选项)粘贴到该文件中,按 CTRL-X 退出,出现提示时按 Y 保存。

#!/usr/bin/python
import RPi.GPIO as GPIO
import time
import Adafruit_DHT
from RPLCD import CharLCD
#我们调用构建的RPi.GPIO -in 函数 GPIO.cleanup() 清理我们使用过的所有端口
GPIO.cleanup()
# 现在设置 LCD 显示引脚(8 位模式)
lcd =CharLCD (numbering_mode=GPIO.BOARD, cols=16, rows=2, pin_rs=37, pin_e=35, pins_data=[40, 38, 36, 32, 33, 31, 29, 23])
#获取senosr读数并在循环中渲染它们
while True:
# 获取传感器的读数
# 重要提示:11 是传感器类型 (DHT11),18 是 GPIO 编号(或物理引脚 12)
湿度,温度 =Adafruit_DHT.read_retry(11, 18)
print('Temp:{0:0.1f} C Humidity:{1:0.1f} %'.format(温度,湿度))
# 清除并设置 LCD 显示的初始光标位置
lcd.clear()
lcd.cursor_pos =(0, 0)
# 渲染温度读数
lcd.write_string(“ Temp:%d C” % temperature)
# 移动光标到第二行
lcd.cursor_pos =(1, 0)
#渲染湿度读数
lcd.write_string(“Humidity:%d %%” %湿度)
#暂停执行5秒
time.sleep(5)

以上示例使用 8 位连接选项和 Raspberry Pi 用于 LCD 显示的物理引脚编号,而不是 BCM 或 GPIO 编号。我假设您已按照上图中的方式连接 LCD,但您可以随时更改引脚以备不时之需。代码部分附有简单的4位连接代码。

阅读更多细节:展览:原始展示


制造工艺

  1. 擀面杖
  2. 保龄球瓶
  3. 液晶显示器 (LCD)
  4. Linux 设备驱动程序开发:引脚控制子系统
  5. 无人机 Pi
  6. 玻璃驾驶舱:航天飞机显示技术的故事
  7. 桌面系列定制展示架
  8. Dodge The Defs!
  9. 5 Ws 便携式盲文显示器
  10. 74LS74:双触发器全包指南
  11. 阿特拉斯·科普柯将参加 2017 年 WIN 博览会
  12. 阿特拉斯·科普柯将参加 NPE2018:塑料展