一.前言
最近在对旧笔记本进行改造, 做一个相框机箱
,然后基本完成了,现在觉得还少了额一个显示屏做监控运行状态
然后在淘宝搜到这个LCD显示屏,支持LCD2USB
这里我们来看看怎么让它显示我们要的内容
二.本文包含以下内容
本文仅包含支持
LCD2USB
的设备
- 通过
LCD4Linux
在ubuntu下连接LCD屏幕 - 通过
LCD Smartie
在windows下连接LCD屏幕
三.通过LCD4Linux
在ubuntu下连接LCD屏幕
1.安装LCD4Linux
安装完成后,会附带驱动程序,正常情况下插入USB后能够识别设备
有2种安装方式
1.1一种是通过源进行安装
sudo apt-get install LCD4Linux
1.2通过官网下载源码进行安装
http://prdownloads.sourceforge.net/lcd4linux/lcd4linux-0.10.0.tar.gz?download
下载完毕后解压
tar xvzf lcd4linux-0.10.0.tar.gz
编译安装
./configure
make
make install
在执行configure-command期间(这可能需要一段时间!),控制台上会显示一些状态消息。如果出现错误,您可以在configure.log文件中查找它们以进行调试
2.查看USB屏幕的设备名称
通过命令
lsusb
将会看到有lcd2usb interface
的设备出现
hoody@hoody-Acer:~$ lsusb
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0403:c630 Future Technology Devices International, Ltd lcd2usb interface # <----------- 这个就是
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
这里我们可以看到 当前设备的连接位置是在
Bus 001 Device 003: ID 0403:c630 Future Technology Devices International, Ltd lcd2usb interface
然后可以在/dev/bus/usb/001/003
看到我们的USB屏幕,记下这个路径, 后续会在配置文件中使用到
/dev/bus/usb/003
暂时叫做设备路径
吧
3.简单配置/etc/lcd4usb.conf
整个
LCD4Linux
运行都是通过/etc/lcd4usb.conf
文件进行配置的,
定义显示内容也是通过这个配置文件官方配置样例文档
由于安全原因(配置可能包含邮件帐户的用户名/密码),配置文件必须确保仅具有用户的权限。小组或其他人不得读写,否则LCD4Linux拒绝工作!
因此,如果您以root身份运行lcd4linux,
/etc/libd4linux.conf
必须是:
chmod 600 /etc/lcd4linux.conf
chown root.root /etc/lcd4linux.conf
我们先来个简单的CPU监控显示配置
PS: 配置文件中,{
括号前面要有一个空格
Display MyScreen {
Driver 'LCD2USB' #指定使用LCD2USB驱动
Model 'generic'
UseBusy 1
Port '/dev/bus/usb/001/003' #填写上一节说的设备路径
Size '20x4' # 根据你的屏幕显示内容填写,我的是20字符乘4行的
Wire {
RW 'AUTOFD'
RS 'INIT'
ENABLE 'STROBE'
ENABLE2 'GND'
GPO 'GND'
}
}
# CPU使用率部件
Widget CPU {
class 'Text' #部件类型指定为文本
expression proc_stat::cpu('busy', 500)
prefix 'CPU:' #前缀
postfix '% |' #后缀
width 10 #部件占用字符数
precision 1
align 'L' # L R 分别表示左对齐 和右对齐
update 500 # 更新频率 500毫秒
}
# 布局,在此处指定部件的放置
Layout Default {
Row1 { #表示第一行
Col1 'MyCPU' #表示从第一格开始放入
}
}
Display 'MyScreen' #指定显示屏幕
Layout 'Default' # 指定使用 布局
4.启动屏幕
启动LCD4Linux前请确定配置文件lcd4linux.conf
的权限是600
启动命令如下, -v
表示显示启动日志,如果失败将会显示错误原因
sudo lcd4linux -v
启动成功将会在屏幕上显示
CPU: 13%
启动错误:Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
如果发生此错误,说明当前你应该是通过纯命令行进行的操作,LCD4Linux
需要桌面环境的支持,所以在配置的时候需要进入让Linux的图形化桌面环境,然后在桌面环境中开启终端
再执行启动命令即可
启动成功后,再通过开机自启则不需要进入图形化桌面了
lcd4linux.conf
的详细配置解释
配文件内容分3个部分
第一部分是屏幕的配置,LCD2USB
屏的话,只需要修改port
和size
即可
Display MyScreen {
Driver 'LCD2USB' #指定使用LCD2USB驱动
Model 'generic'
UseBusy 1
Port '/dev/bus/usb/001/003' #填写上一节说的设备路径
Size '20x4' # 根据你的屏幕显示内容填写,我的是20字符乘4行的
Wire {
RW 'AUTOFD'
RS 'INIT'
ENABLE 'STROBE'
ENABLE2 'GND'
GPO 'GND'
}
}
第二部分是定义显示需要使用的部件,
此处可以定义多个部件,部件中的表达式可以参考官方提供的部件列表 Plugins
常用到的有:
plugin_meminfo 内存插件
该插件提供了 /proc/meminfo文件的接口。
meminfo(key)/proc/meminfo 并返回<key>的值
'key'参数没有任何固定值,但作为搜索键进入/ proc / meminfo文件。常用键是“MemTotal”或“MemFree”。执行'cat / proc / meminfo'以查看系统上可用的值。
Widget RAM {
class 'Text'
expression meminfo('MemTotal')/1024
postfix ' MB RAM'
width 11
precision 0
align 'R'
update 0
}
plugin_proc_stat 系统状态插件
该插件提供了 /proc/stat 文件的接口。
Proc_stat 插件
表达式 | 解释 |
---|---|
proc_stat(key) | 从/proc/stat 直接取值 |
proc_stat(key, delay) | 从/proc/stat 取变化量 |
proc_stat::cpu(key, delay) | 从/proc/stat 获取CPU信息 |
proc_stat::disk(device, key, delay) | 从/proc/stat 获取硬盘信息 |
示例:CPU:12%
Widget CPU {
class 'Text'
expression proc_stat::cpu('busy', 500)
prefix 'CPU:'
postfix '% |'
width 10
precision 1
align 'L'
update tick
}
Widget CPUBar {
class 'Bar'
expression proc_stat::cpu('busy', 500)
expression2 proc_stat::cpu('system', 500)
length 10
align 'L'
direction 'E'
update tack
}
uptime 启动时间插件
此插件以秒或以用户定义的格式返回当前系统的正常运行时间
表达式 | 解释 |
---|---|
uptime() | 返回系统启动的秒数 |
uptime(format) | 以用户定义格式返回时间 |
format的可选格式(格式指定类似于 printf()
方法)
表达式 | 解释 |
---|---|
%s | 总秒数 |
%S | 从00-59的秒数 |
%m | 总分钟数 |
%M | 从00-59的分钟数 |
%h | 总小时数 |
%H | 从00-23的小时数 |
%d | 总天数 |
例子: Run 12 days 12:32:59
Widget Uptime {
class 'Text'
expression uptime('%d days %H:%M:%S')
width 20
align 'L'
prefix 'Run '
update tick
}
这里是一部分表达式的示例,其余可以通过官方提供的部件列表 Plugins 进行查看
第三部分 布局的指定
通过
Row 行
与Col 格
进行布局安排, 后面的数字表示具体的行数和格数
Layout Default {
Row1 {
Col1 'MyInfo' # 从第一行第一格开始显示
}
Row2 {
Col1 'CPU' # 从第二行第1格开始显示
Col11 'MEM' # 从第二行第11格开始显示(我的设备总计20格每行)
}
Row3 {
Col1 'IPaddress'
}
Row4 {
Col1 'Uptime'
}
}
贴一个我的配置
地址 一个比较全的官方示例
效果 code:
Display USBLCD {
Driver 'LCD2USB'
Model 'generic'
UseBusy 1
Port '/dev/bus/usb/001/003'
Size '20x4'
Wire {
RW 'AUTOFD'
RS 'INIT'
ENABLE 'STROBE'
ENABLE2 'GND'
GPO 'GND'
}
}
Widget CPU {
class 'Text'
expression proc_stat::cpu('busy', 500)
prefix 'CPU:'
postfix '% |'
width 10
precision 1
align 'L'
update tick
}
Widget CPUBar {
class 'Bar'
expression proc_stat::cpu('busy', 500)
expression2 proc_stat::cpu('system', 500)
length 10
align 'L'
direction 'E'
update tack
}
Widget MEM {
class 'Text'
expression ceil((meminfo('MemTotal')-meminfo('MemFree'))/meminfo('MemTotal')*100)
prefix 'MEM:'
postfix '%'
width 8
align 'R'
update tick
}
Widget IPaddress {
class 'Text'
expression netinfo::ipaddr('wlp3s0')
prefix ' '
postfix ' '
width 20
align 'L'
update tick
}
Widget Uptime {
class 'Text'
expression uptime('%d days %H:%M:%S')
width 20
align 'L'
prefix 'Run '
update tick
}
Widget MyInfo {
class 'Text'
expression 'Hoody Server'
prefix ' '
postfix ' '
width 20
align 'L'
update tick
}
Layout Default {
Row1 {
Col1 'MyInfo'
}
Row2 {
Col1 'CPU'
Col11 'MEM'
}
Row3 {
Col1 'IPaddress'
}
Row4 {
Col1 'Uptime'
}
}
Variables {
tick 500
}
Display 'USBLCD'
Layout 'Default'
四.通过LCD Smartie
在windows下连接LCD屏幕
所需的文件在这里驱动文件 提取码:500f
安装JQMU驱动程序
1.将模块与USB线连接,插上电脑USB口
2.通过电脑属性,可以看到新的USB设备
3.打开文件夹 libusb-win32-bin-1.2.6.0\bin,执行inf-wizard.exe
注意:WIN7 WIN10 系统安装时,点击右键选择“以管理员身份运行”进行安装
点击 Next>
进入下一步选择LCD2USB Interface
这个驱动项
然后继续下一步 将会提示保存文件,创建一个文件夹,选择它 然后保存
接下来会进入这个界面
点击 Install Now
安装完成后会弹出 Installation successful
提示成功的弹窗
此时查看设备管理器,将会看到驱动安装成功
使用LCDSmartie
双击LCDSmartie.exe
启动,
此时将会在你的屏幕上看到 这个窗体中的内容.
点击左下角的Setup
按钮,弹出设置框
在图中①的区域,选择需要编辑的行数,然后选择②区域的字符 insert进去即可