我正在使用 Debian 9。我有一台带有 2 个内置显示器的小型 PC,打算用作销售点。它有一台面向客户的显示器(非触摸屏)和一台面向收银员的显示器(触摸屏)。每台显示器的分辨率为 1366 x 768。我有一个作为唯一 x 客户端运行的 POS 应用程序 - 不存在窗口管理器和桌面管理器。这样系统消耗最少的资源。即我可以像这样从终端运行它:
xinit my-pos-app $* -- :1
只要我使用鼠标,应用程序就可以正常运行。然而,目的是让这项工作仅使用触摸屏。
问题是触摸屏没有校准。我可以看到,当我触摸它时,我触摸的右侧约 10 厘米处的一个点实际上被激活了。所以我尝试使用xinput_calibrator
- 一个程序,它会在屏幕上显示一个 gui 点来触摸并自动校准触摸屏。但是按照目前的设置,完成这一步是不可能的。这是因为只有一台显示器是触摸屏,而另一台显示器不是,但xinput_calibrator
没有意识到这一点,它将一半的图片放在每台显示器上。非触摸屏显示器上的校准点显然无法触摸,因此我无法完成该xinput_calibrator
过程。
当我将鼠标移动到第一台显示器的右侧时,我注意到它出现在第二台显示器的左侧。因此,系统似乎将两台显示器并排放置。我对这种低级显示器配置的东西了解不多,但是从 的输出来看xrandr
,系统似乎认为它只有 1 个显示器:
$ xrandr
Screen 0: minimum 320 x 200, current 2732 x 768, maximum 8192 x 8192
eDP-1 connected primary 1366x768+0+0 (normal left inverted right x axis y axis) 344mm
x 193mm
1366x768 60.00*+ 40.00
1360x768 59.80 59.96
1024x768 60.04 60.00
960x720 60.00
928x696 60.05
896x672 60.01
960x600 60.00
960x540 59.99
800x600 60.00 60.32 56.25
840x525 60.01 59.88
800x512 60.17
700x525 59.98
640x512 60.02
720x450 59.89
640x480 60.00 59.94
680x384 59.80 59.96
576x432 60.06
512x384 60.00
400x300 60.32 56.34
320x240 60.05
VGA-1 disconnected (normal left inverted right x axis y axis)
DP-1 connected 1366x768+1366+0 (normal left inverted right x axis y axis) 344mm x 194mm
1366x768 60.00*+ 40.00
HDMI-1 disconnected (normal left inverted right x axis y axis)
此外,xinput
显示触摸屏的设备 ID 是12
.
请有人告诉我如何正确配置触摸屏。我需要先使用 xrandr 将屏幕一分为二吗?如果是这样,那我该怎么做?我被困住了。
我现在可以工作了。我做的第一件事是从 xorg repo 安装最新版本的显示驱动程序。我不确定这一步是否绝对必要,因为它似乎并没有改变
xrandr
太多的输出,但无论如何它并没有受到伤害:现在
xrandr
显示DP-1
更多属性:然后启动 X 并运行以下命令以指定
eDP-1
为触摸屏:(v.1.6.2)的手册页
xinput
提到设备名称也可以作为字符串给出。因此,这也可以: