怎样用USB/串行背包和作为实时系统监视器的液晶显示器组装和配置

概述
本指南详细介绍了使用usb/串行背包和作为实时系统监视器的液晶显示器组装和配置过程。
这些显示器非常适合监视“无头”系统(例如小型服务器)的运行状况和状态。 raspberry pi的安装或作为常规计算机上的辅助信息显示。
您可以在adafruit商店中获得我们可爱的压克力摊位之一
组装
要组装lcd背包和支架,您需要:
焊接配件(铁,焊料等)
十字螺丝刀
某些步骤可能需要使用钢丝钳;参见下面的注释。
除电子设备外,该套件还包含五个激光切割件和四个#4-40 x 1“螺钉和螺母。
从压克力支架两面剥下纸衬。有些人使用剃须刀作为刮板来开始使用,但是
剥离后,零件可能会因激光切割而在其上留下少许烟灰,可以用肥皂和水清洗,但要绝对确定在组装之前,所有东西都完全干燥!我们可以在此期间对电子设备进行操作。..
下面是完整的lcd + backpack的外观,供参考,以供参考。
注视lcd的正面,背光led从右边,我们将焊接到顶部的标题行。
从背面开始,usb和串行连接器应沿着外边缘,并且背包板上的文字相对于lcd。
通常,随附的针排是相同的长度作为此标头,但在某些情况下,您可能需要修剪一些。为此,请使用钳子或剪线钳。手工操作有时会卡在错误的位置。
插针板有长边和短边。销钉的长边应指向背包板上的接头连接器。
为帮助对齐,请暂时将其中一颗螺钉插入两块板上的角安装孔中。正面和背面的第一个和最后一个销钉。确保两块板对齐并平行,并且螺钉直接向后指向。您可以根据需要重新加热这四个焊点,同时保持正确的对齐方式。
一旦所有东西都变成方形且水平,则将其余的插头引脚焊接到两侧。
如果您不小心以错误的方式安装了排针(长边朝前),别无所求……您
将2个螺钉插入前面板的一端,然后将一个小的垫片(它们类似于车把的细小胡须)滑到螺钉上,最后滑入lcd。
让我们从lcd的一端开始背光突出,这更容易一些。为此目的的垫片有一个额外的咬口,可以装在背光灯周围。
在这两个螺钉上添加螺母。将它们放在螺钉下方约1/10英寸(2毫米)的位置。
安装第一侧;较长的直边位于底部,将前槽口与倾斜的部分对齐,然后向上旋转以使螺钉/螺母适合切口,您可能需要调整螺母的位置稍微再试一次。
拧紧螺钉a几转。..暂时只是“手指紧”。
第二侧的垫片/螺钉布置类似。在已安装第一侧的情况下,我们不会将板和垫片放下到位……而是
像以前一样安装螺母,然后第二侧类似地旋转到位。
拧紧螺钉时,请轻轻挤压,以使侧面和前部件之间保持良好的接触;我们不希望侧片向外张开。
如果一切看起来都不错且笔直,您可以将所有螺钉再旋转半圈左右,以便更牢固地固定……但又不要太紧,以免破坏塑料!/div》
taa-daah!准备插入。
windows
要在windows系统上使用lcd + backpack,首先需要下载此.inf驱动程序文件。这样会使设备显示为com端口。
然后您将要下载lcd smartie,它提供了所有系统状态和监视信息。
使用干净的系统和.inf文件,您也许可以跳到下面的“浏览”步骤(步骤6)。但是很常见的是,在没有准备好驱动程序文件的情况下兴奋地插入新设备,最终导致设备损坏且无法正常工作。如果发生这种情况,请下载.inf并执行以下步骤。..
从“开始”菜单中,选择“设备和打印机”。
此面板列出了连接到系统的设备(打印机等)。底部将是一个未标记为“ adafruit industries”的设备。
右键单击此项目,然后选择“属性”。(或双击图标。)
从“属性”面板的“硬件”选项卡中,单击“属性”按钮。完全是它的属性!
从“常规”标签上,单击“更改设置”。
这应该启用“更新驱动程序…”按钮。点击…
出现提示时,选择“浏览我的计算机”的驱动程序软件”(请勿使用自动搜索)。
将显示一个文件选择对话框。导航到以前下载的.inf文件的位置。
您会看到有关未签名驱动程序的消息。没关系,告诉它进行安装。
稍后,lcd + backpack应该在“设备”面板中显示为“通讯端口”以及一个com端口号。 跟踪该端口号,稍后将需要它。
如果尚未解压缩并安装lcd smartie软件,请继续进行下去。
lcd smartie是一款“经典”软件。..上次正式发布是在2007年,但好消息是它可以在当前版本的windows上很好地运行。用户界面有些陈旧。这是一个复杂的程序包,具有很多功能,超出了我们在此介绍的范围。 lcd smartie网站上提供了一些说明,或者您可以浏览gui并找出其中的大多数选项。
首先,我们需要为lcd + backpack对其进行设置。
在菜单中单击“设置”。 lcd smartie小窗口,会弹出大量的配置对话框。从“屏幕”选项卡的右上角“显示设置”部分,选择“插件”选项卡。从“显示插件”菜单中选择 matrix.dll ,然后更改“启动参数”以反映设备的正确com端口。 更改com端口设置后,您需要退出并重新启动lcd smartie。
在“启动/关闭”标签中,您会看到有一些选项可以在系统启动时自动运行该软件,因此您无需执行任何操作每次都通过此过程。
linux(包括raspberry pi)
安装(简便方法)
许多linux发行版(ubuntu,raspbian“ wheezy”,occidentalis等)都将lcdproc作为软件包提供,这大大简化了基本安装(尽管您会仍然需要完成配置步骤)。在命令行中,只需键入:
下载:文件
复制代码
sudo apt-get install lcdproc sudo apt-get install lcdproc
会提示您是否要安装所有必备软件包。回答“是”,则应该在一分钟左右的时间里下载并安装所有软件。
安装(困难的方式)
并不是真的 困难,只是需要一些额外的步骤。
首先,下载最新版本的源代码,可以使用web浏览器中的此链接,也可以使用命令行类型(作为单个连续行):
下载:文件
复制代码
wget http://sourceforge.net/projects/lcdproc/files/lcdproc/0.5.6/lcdproc-0.5.6.tar.gz/download -o lcdproc.tar.gz wget http://sourceforge.net/projects/lcdproc/files/lcdproc/0.5.6/lcdproc-0.5.6.tar.gz/download -o lcdproc.tar.gz
然后解压缩存档。如果使用gui桌面,通常可以通过双击文件或右键单击并选择“提取。..”或类似方法来完成。或从命令行键入:
下载:文件
复制代码
tar xzf lcdproc.tar.gz tar xzf lcdproc.tar.gz
要构建和安装软件,您需要在终端窗口中输入以下命令:
下载:文件
复制代码
cd lcdproc-0.5.6
。/configure
make
sudo make install cd lcdproc-0.5.6
。/configure
make
sudo make install
(您可能需要更改第一个命令以匹配当前版本号。)
这只需几分钟即可完成。如果由于缺少库而停止运行,则需要跟踪并安装缺少的组件(可能使用apt-get)。
usb连接
将lcd背包连接到usb端口,然后在终端中键入以下内容:
下载:文件
复制代码
dmesg dmesg
在输出的底部,您将看到对usb设备的引用。这些行之一将包含一个tty名称,例如:
下载:文件
复制代码
[ 3710.377212] cdc_acm 1-1.2:1.0: ttyacm0: usb acm device [ 3710.377212] cdc_acm 1-1.2:1.0: ttyacm0: usb acm device
记住该名称“ ttyacm0”(或您分配的名称),进行配置时将需要它软件。
tty串行连接
对于raspberry pi,我们可以跳过usb端口并将lcd背包连接到pi的gpio接头…在a型板上特别有用。
通常接头上的串行连接用于登录与终端。为了使lcd能够使用它,必须将其关闭(然后才能使用终端功能-您需要使用usb键盘或无线网络连接来登录)。需要编辑两个文件:
下载:文件
复制代码
sudo nano /boot/cmdline.txt sudo nano /boot/cmdline.txt
更改此行:
下载:文件
复制代码
dwc_otg.lpm_enable=0 console=ttyama0,115200 kgdboc=ttyama0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait dwc_otg.lpm_enable=0 console=ttyama0,115200 kgdboc=ttyama0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait
至:
下载:文件
复制代码
dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait
(基本上,删除对ttyama0的引用)
并且:
下载:文件
复制代码
sudo nano /etc/inittab sudo nano /etc/inittab
注释掉或删除最后一行。即更改此内容:
下载:文件
复制代码
t0:23:respawn:/sbin/getty -l ttyama0 115200 vt100 t0:23:respawn:/sbin/getty -l ttyama0 115200 vt100
至:
下载:文件
复制代码
# t0:23:respawn:/sbin/getty -l ttyama0 115200 vt100 # t0:23:respawn:/sbin/getty -l ttyama0 115200 vt100
或直接删除该行。
记住名称“ ttyama0”,您将需要它来配置软件。
必须重新启动系统才能使它生效。您可以立即执行此操作,也可以在设置lcd配置文件之后执行此操作。
配置lcdd,lcd守护程序
配置文件 lcdd.conf 的位置可能会因使用的安装方法而异。如果使用程序包管理器(apt-get)安装,则很可能位于:/etc
如果是从源代码安装的,则最有可能位于:/user/local/etc
如果在上述两个位置中都没有,请使用find命令:
下载:文件
复制代码
sudo find / -name lcdd.conf -print sudo find / -name lcdd.conf -print
此文件必须以root用户身份进行编辑,例如:
下载:文件
复制代码
sudo nano /etc/lcdd.conf sudo nano /etc/lcdd.conf
lcdproc随附的默认配置文件为巨大,它支持许多设备和每个可以想象的选项。与其尝试引导您浏览这个庞大的文件,不如使用此简化版(仅限我们的lcd背包)替换整个文件的内容,更容易 。然后只需要编辑几行。 (您可能要先备份原始文件。)
下载:文件
复制代码
# pared-down lcdd configuration file; contains only those
# settings relevant to the adafruit usb+serial backpacks.
# global settings apply to all driver types -------------
[server]
# path to driver modules. important: edit this to match
# your setup. last character should always be slash.
driverpath=/usr/lib/lcdproc/
# select matrix orbital driver
driver=mtxorb
# interface, port and user under which daemon runs
bind=127.0.0.1
port=13666
user=nobody
# if ‘yes’ server runs in foreground (handy during setup)
#foreground=yes
# settings specific to matrix orbital driver ------------
[mtxorb]
# output device. important: edit this for your setup!
device=/dev/ttyacm0
# speed applies only to serial pins; ignored w/usb.
speed=9600
# display size, type, contrast and brightness range.
size=16x2
type=lkd
contrast=750
hasadjustablebacklight=yes
brightness=1000
offbrightness=0 # pared-down lcdd configuration file; contains only those
# settings relevant to the adafruit usb+serial backpacks.
# global settings apply to all driver types -------------
[server]
# path to driver modules. important: edit this to match
# your setup. last character should always be slash.
driverpath=/usr/lib/lcdproc/
# select matrix orbital driver
driver=mtxorb
# interface, port and user under which daemon runs
bind=127.0.0.1
port=13666
user=nobody
# if ‘yes’ server runs in foreground (handy during setup)
#foreground=yes
# settings specific to matrix orbital driver ------------
[mtxorb]
# output device. important: edit this for your setup!
device=/dev/ttyacm0
# speed applies only to serial pins; ignored w/usb.
speed=9600
# display size, type, contrast and brightness range.
size=16x2
type=lkd
contrast=750
hasadjustablebacklight=yes
brightness=1000
offbrightness=0
感兴趣的行包括:
下载:文件
复制代码
driverpath=/usr/lib/lcdproc/ driverpath=/usr/lib/lcdproc/
这是lcdproc驱动程序文件的位置,并且通常是/usr/lib/lcdproc/或/usr/local/lib/lcdproc/
与配置文件的位置一样,您可能需要使用“查找”命令。编辑此行时,请确保最后一个字符为正斜杠:/
下载:文件
复制代码
device=/dev/ttyacm0 device=/dev/ttyacm0
这是lcd背包的设备名称,该名称是在较早的步骤中发现的。在大多数linux系统上,用于usb连接的背包为/dev/ttyamc0 ,或用于与raspberry pi gpio头的串行连接为/dev/ttyama0 。 》应再编辑一行以进行初始测试:
下载:文件
复制代码
#foreground=yes #foreground=yes
默认情况下,此行被注释掉。 删除开头的#字符以启用它。这使lcdd进程始终在前台运行,因此可以使用control + c轻松停止它,而不必使用kill命令来解决。一旦我们知道一切正常,就可以重新添加注释字符。
测试运行
让我们看看它是否有效!类型:
下载:文件
复制代码
sudo lcdd sudo lcdd
如果这会引发错误消息,则很可能是在设备行中的 driverpath 中指定了错误的设备名称。 》行未正确指向驱动程序文件的位置(或缺少结尾的斜杠),或者配置文件不在预期的位置。
如果lcdd按预期运行,则应在屏幕上收到欢迎消息lcd。那是好消息!按control + c停止程序,然后我们将进行更多配置…
设置lcdproc和自动启动
如果lcdd运行正常,我们可以将其恢复为后台配置。像以前一样编辑lcdd.conf并将初始#添加回“前景”行:
下载:文件
复制代码
#foreground=yes #foreground=yes
有一些可以与lcdd一起使用的客户端,但是其中最有用的是 lcdproc ,它在几个系统状态屏幕之间循环。
lcdproc.conf 是lcdproc的配置文件。它应该与lcdd.conf一起位于同一目录中。这是另一个繁琐的文件…欢迎您扎根并根据自己的喜好进行更改,但是默认配置非常有用,为了简单起见,我们将其保持原样。
我们将设置 lcdd 和 lcdproc 都可以在系统启动时自动启动。
如果使用软件包管理器(apt-get)安装,则应该已经设置lcdd自动启动。否则,您可以在/etc/init.d中创建此文件:
下载:文件
复制代码
cd /etc/init.d
sudo nano lcdd cd /etc/init.d
sudo nano lcdd
将以下内容复制并粘贴到文件中作为开始;我们将在之后进行几行调整。
下载:文件
复制代码
#! /bin/sh
#
# lcdd initscript for lcdd
# by jose luis tallon 《[email protected]》
#
### begin init info
# provides: lcdd lcdd
# required-start: $remote_fs $syslog
# required-stop: $remote_fs $syslog
# default-start: 2 3 4 5
# default-stop: 0 1 6
# short-description: lcd daemon
# description: control lcd displays connected to the computer
### end init info
#
# written by miquel van smoorenburg 《[email protected]》。
# modified for debian
# by ian murdock 《[email protected]》。
# modified for lcdproc by jonathan oxer 《[email protected]》
#
#
path=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
daemon=/usr/sbin/lcdd
name=“lcdd”
desc=“lcdd”
daemon_opts=“-s 1 -f -c /etc/lcdd.conf”
test -x $daemon || exit 0
set -e
case “$1” in
start)
echo -n “starting $desc: ”
start-stop-daemon --start --quiet --background \
--exec $daemon -- $daemon_opts
echo “$name.”
;;
stop)
echo -n “stopping $desc: ”
start-stop-daemon --stop --oknodo --quiet \
--exec $daemon
echo “$name.”
;;
restart|force-reload)
echo -n “restarting $desc: ”
$0 stop
sleep 1
$0 start
;;
*)
n=/etc/init.d/$name
# echo “usage: $n {start|stop|restart|reload|force-reload}” 》&2
echo “usage: $n {start|stop|restart|force-reload}” 》&2
exit 1
;;
esac
exit 0 #! /bin/sh
#
# lcdd initscript for lcdd
# by jose luis tallon 《[email protected]》
#
### begin init info
# provides: lcdd lcdd
# required-start: $remote_fs $syslog
# required-stop: $remote_fs $syslog
# default-start: 2 3 4 5
# default-stop: 0 1 6
# short-description: lcd daemon
# description: control lcd displays connected to the computer
### end init info
#
# written by miquel van smoorenburg 《[email protected]》。
# modified for debian
# by ian murdock 《[email protected]》。
# modified for lcdproc by jonathan oxer 《[email protected]》
#
#
path=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
daemon=/usr/sbin/lcdd
name=“lcdd”
desc=“lcdd”
daemon_opts=“-s 1 -f -c /etc/lcdd.conf”
test -x $daemon || exit 0
set -e
case “$1” in
start)
echo -n “starting $desc: ”
start-stop-daemon --start --quiet --background \
--exec $daemon -- $daemon_opts
echo “$name.”
;;
stop)
echo -n “stopping $desc: ”
start-stop-daemon --stop --oknodo --quiet \
--exec $daemon
echo “$name.”
;;
restart|force-reload)
echo -n “restarting $desc: ”
$0 stop
sleep 1
$0 start
;;
*)
n=/etc/init.d/$name
# echo “usage: $n {start|stop|restart|reload|force-reload}” 》&2
echo “usage: $n {start|stop|restart|force-reload}” 》&2
exit 1
;;
esac
exit 0
感兴趣的行是 daemon 和 daemon_opts 。编辑它们以分别反映lcdd程序和配置文件的实际位置。
确保脚本是可执行的:
下载:文件
复制代码
sudo chmod 755 lcdd sudo chmod 755 lcdd
然后,我们将设置lcdproc以便在稍后启动
下载:文件
复制代码
sudo nano /etc/rc.local sudo nano /etc/rc.local
在此文件的末尾(但在最后的“退出0”之前),添加以下行:
下载:文件
复制代码
/usr/bin/lcdproc /usr/bin/lcdproc
需要更改路径以反映系统上的安装(例如,可能是/usr/local/bin或类似的文件)。
现在,重新引导系统。 lcd应该会自动恢复,并循环显示多个系统信息。
mac os x
mac os x的设置类似于linux,但有一些额外的障碍:
您需要从以下位置下载并构建来源;没有可用的打包安装程序(即与linux说明中的“ the hard way”类似的例程)。
为此,您需要安装xcode(当前可用的版本要求os x 10.7 lion或10.8 mountain lion)以及辅助命令行工具(首选项→下载)。
涉及自动启动。
下载后,双击该文件以提取源代码。然后打开“终端”窗口,然后将“ cd”放入新创建的文件夹中:
下载:文件
复制代码
cd lcdproc-0.5.6 cd lcdproc-0.5.6
请勿 使用确切的linux程序构建软件-我们需要在此过程中进行一些小的更改。第一步是一样的。在命令行的源文件夹中,键入:
下载:文件
复制代码
。/configure 。/configure
然后编辑matrix orbital驱动程序的源文件:
下载:文件
复制代码
nano server/drivers/mtxorb.c nano server/drivers/mtxorb.c
(也可以使用vi,emacs或您选择的任何编辑器。)
查找此行(在387行附近):
下载:文件
复制代码
p-》fd = open(device, o_rdwr | o_noctty); p-》fd = open(device, o_rdwr | o_noctty);
用以下两行替换:
下载:文件
复制代码
p-》fd = open(device, o_rdwr | o_nonblock);
#undef have_cfmakeraw
p-》fd = open(device, o_rdwr | o_nonblock);
#undef have_cfmakeraw
然后其余的构建过程类似于linux:
下载:文件
复制代码
make
sudo make install make
sudo make install
然后,配置与linux指令相似,但有以下更改:
dmesg将不会显示usb设备名称。取而代之的是,您需要在/dev目录中扎根查找设备名称;例如始于:
下载:文件
复制代码
ls /dev/tty.usb* ls /dev/tty.usb*
将输出与先断开连接然后再连接的设备进行比较,以帮助查找正确的设备名称,然后编辑 device = lcdd.config中的行匹配。
lcd驱动程序默认位于/usr/local/lib/lcdproc/中。编辑lcdd.config中的 driverpath = 行以进行匹配(并记住包含斜杠)。
lcdd 守护程序位于默认情况下在/usr/local/sbin 中。
lcdproc 客户端在/usr/local/bin 中b》(并且必须以root身份运行-在初始配置/测试期间使用“ sudo”)。
鉴于os x独特的启动守护程序的方法,自动启动配置也有很大不同。 》 首先,编辑lcdproc配置文件,以使其重生行为不会干扰系统自身的功能:
下载:文件
复制代码
sudo nano /usr/local/etc/lcdproc.conf
sudo nano /usr/local/etc/lcdproc.conf
查找此行,该行已被注释掉默认值:
下载:文件
复制代码
#foreground=true #foreground=true
删除初始的#字符以启用此行,然后将所做的更改保存到文件中。
有点awk病房。..此行应在 lcdproc.conf (在前台运行)中启用,但在 lcdd.conf (后台后台驻留程序)进行测试后。
再进行一次更改。在 lcdproc.conf 中查找此行(在77行附近):
下载:文件
复制代码
highload=1.3
highload=1.3
如果您使用的是多核系统,请增加此数字以适合。例如,在4核imac上,我使用的是 5.0 的4倍大的值。
这设置了lcd背光闪烁的处理器负载阈值(表示沉重工作)。在启动和登录时,会启动许多进程,如果设置得太低,它们可能会暂时触发此闪烁。
下一步,我们需要为两个程序都创建 plist 文件。从命令行:
下载:文件
复制代码
nano net.omnipotent.lcdd.plist nano net.omnipotent.lcdd.plist
将以下内容复制并粘贴到新文件中:
下载:文件
复制代码
label
net.omnipotent.lcdd
programarguments
/usr/local/sbin/lcdd
keepalive
label
net.omnipotent.lcdd
programarguments
/usr/local/sbin/lcdd
keepalive
然后是第二个文件:
下载:文件
复制代码
nano net.omnipotent.lcdproc.plist nano net.omnipotent.lcdproc.plist
包含:
下载:文件
复制代码
label
net.omnipotent.lcdproc
programarguments
/usr/local/bin/lcdproc
keepalive
label
net.omnipotent.lcdproc
programarguments
/usr/local/bin/lcdproc
keepalive
将这两个文件的所有权设置为“ root”,然后复制到系统守护程序目录:
下载:文件
复制代码
sudo chown root:wheel net.omnipotent.lcdd.plist
sudo chown root:wheel net.omnipotent.lcdproc.plist
sudo cp net.omnipotent.lcdd.plist /library/launchdaemons
sudo cp net.omnipotent.lcdproc.plist /library/launchdaemons sudo chown root:wheel net.omnipotent.lcdd.plist
sudo chown root:wheel net.omnipotent.lcdproc.plist
sudo cp net.omnipotent.lcdd.plist /library/launchdaemons
sudo cp net.omnipotent.lcdproc.plist /library/launchdaemons
在下次重启时,lcd应该按照lcdproc配置开始循环状态信息。
如果lcd没有响应,则可能是lcdd配置文件中的设备名称错误。相对于/dev目录的内容,再次检查那里的值,然后通过从命令行运行lcdd进行测试。


4G来袭 天平倾向何方
安科瑞预付费电能计量表DDSY 1352
5G MIMO阵列的混合波束形成
物联网是电子革命后又一场的数字革命
人工智能创作的作品有版权吗
怎样用USB/串行背包和作为实时系统监视器的液晶显示器组装和配置
微软智能云Azure可构建清理海洋垃圾AI模型
OPPO INNO DAY 2022举办,发布OHealth H1 家庭智能健康监测仪概念产品,推动预防型医疗发展
三极管高频等效应用电路
全球热门耳机榜单:销量最火的十大蓝牙耳机品牌
分布式存储的7个特征
区块链和新加密技术可以加强数据安全管理
企业加入区块链联盟应注意四个关键问题
欧菲光构建三大业务架构,推动公司实现可持续高质量发展
请问电路板上的CBB22代表什么意思?
热敏电阻分为哪三类
无毛刺电压监控器IC不再只是一个概念
ADC让智能音箱更清晰 产品一定会越来越契合用户的需求
5G网络部署应坚持“广播网和通信网优势互补联合覆盖”的建网策略?
锡膏的熔点与焊锡合金的成份有哪些?