本文以飞凌嵌入式RK3399开发板为基础讲解,主要介绍了ubuntu系统下双屏显示及异触,其它RK3399平台请参考使用!
文章目录xrandr命令
双屏扩展显示
xinput命令
双屏异触
xrandr命令
“xrandr”是一款官方的 RandR扩展配置工具,它可以设置屏幕显示的大小、方向、镜像等。对于多屏幕显示的情况,可以使用xrandr进行管理。
参考链接:https://wiki.archlinux.org/index.php/xrandr_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)
forlinx@forlinx:~$ xrandr --helpusage: xrandr [options] where options are: --display <display> or -d <display> --help -o <normal,inverted,left,right,0,1,2,3> or --orientation <normal,inverted,left,right,0,1,2,3> -q or --query -s <size>/<width>x<height> or --size <size>/<width>x<height> -r <rate> or --rate <rate> or --refresh <rate> -v or --version -x (reflect in x) -y (reflect in y) --screen <screen> --verbose --current --dryrun --nograb --prop or --properties --fb <width>x<height> --fbmm <width>x<height> --dpi <dpi>/<output> --output <output> --auto --mode <mode> --preferred --pos <x>x<y> --rate <rate> or --refresh <rate> --reflect normal,x,y,xy --rotate normal,inverted,left,right --left-of <output> --right-of <output> --above <output> --below <output> --same-as <output> --set <property> <value> --scale <x>x<y> --scale-from <w>x<h> --transform <a>,<b>,<c>,<d>,<e>,<f>,<g>,<h>,<i> --off --crtc <crtc> --panning <w>x<h>[+<x>+<y>[/<track:w>x<h>+<x>+<y>[/<border:l>/<t>/<r>/<b>]]] --gamma <r>:<g>:<b> --brightness <value> --primary --noprimary --newmode <name> <clock MHz> <hdisp> <hsync-start> <hsync-end> <htotal> <vdisp> <vsync-start> <vsync-end> <vtotal> [flags...] Valid flags: +HSync -HSync +VSync -VSync +CSync -CSync CSync Interlace DoubleScan --rmmode <name> --addmode <output> <name> --delmode <output> <name> --listproviders --setprovideroutputsource <prov-xid> <source-xid> --setprovideroffloadsink <prov-xid> <sink-xid> --listmonitors --listactivemonitors --setmonitor <name> {auto|<w>/<mmw>x<h>/<mmh>+<x>+<y>} {none|<output>,<output>,...} --delmonitor <name>
双屏扩展显示
OK3399-C Ubuntu系统支持xrandr命令管理多屏扩展显示。同时接入eDP屏幕和HDMI屏幕,系统会默认非热插拔显示设备作为主屏,所以eDP会被识别为primary screen。默认会设置两个屏幕为扩展显示。
forlinx@forlinx:~$ xrandrScreen 0: minimum 320 x 200, current 2560 x 1440, maximum 8192 x 8192eDP-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 276mm x 156mm 1920x1080 60.00*+HDMI-1 connected 2560x1440+0+0 (normal left inverted right x axis y axis) 597mm x 336mm 2560x1440 59.95* 1920x1080 60.00 50.00 59.94 1680x1050 59.88 1280x1024 75.02 60.02 1440x900 59.90 1280x960 60.00 1280x720 60.00 50.00 59.94 1024x768 75.03 70.07 60.00 832x624 74.55 800x600 72.19 75.00 60.32 56.25 720x576 50.00 720x480 60.00 59.94 640x480 75.00 72.81 66.67 60.00 59.94 720x400 70.08
可以使用xrandr在两个屏幕中选择哪个做主屏,哪个做副屏。
xrandr --output eDP-1 --right-of HDMI-1 --auto也可以将两个屏幕设置成同显
xrandr --output HDMI-1 --same-as eDP-1 --autoxinput命令
xinput命令用于管理系统的输入设备。
forlinx@forlinx:~$ xinput --helpusage : xinput get-feedbacks <device name> xinput set-ptr-feedback <device name> <threshold> <num> <denom> xinput set-integer-feedback <device name> <feedback id> <value> xinput get-button-map <device name> xinput set-button-map <device name> <map button 1> [<map button 2> [...]] xinput set-pointer <device name> [<x index> <y index>] xinput set-mode <device name> ABSOLUTE|RELATIVE xinput list [--short || --long || --name-only || --id-only] [<device name>...] xinput query-state <device name> xinput test [-proximity] <device name> xinput create-master <id> [<sendCore (dflt:1)>] [<enable (dflt:1)>] xinput remove-master <id> [Floating|AttachToMaster (dflt:Floating)] [<returnPointer>] [<returnKeyboard>] xinput reattach <id> <master> xinput float <id> xinput set-cp <window> <device> xinput test-xi2 [--root] <device> xinput map-to-output <device> <output name> xinput list-props <device> [<device> ...] xinput set-int-prop <device> <property> <format (8, 16, 32)> <val> [<val> ...] xinput set-float-prop <device> <property> <val> [<val> ...] xinput set-atom-prop <device> <property> <val> [<val> ...] xinput watch-props <device> xinput delete-prop <device> <property> xinput set-prop <device> [--type=atom|float|int] [--format=8|16|32] <property> <val> [<val> ...] xinput disable <device> xinput enable <device>
分别插入了“wch.cn USB2IIC CTPCONTROL”和“ILITEK ILITEK-TP”两个USB电容触摸屏。
forlinx@forlinx:~$ xinput⎡ Virtual core pointer id=2 [master pointer (3)]⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]⎜ ↳ wch.cn USB2IIC_CTP_CONTROL id=9 [slave pointer (2)]⎜ ↳ ILITEK ILITEK-TP id=6 [slave pointer (2)]⎣ Virtual core keyboard id=3 [master keyboard (2)] ↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)] ↳ rk_headset id=7 [slave keyboard (3)] ↳ rk29-keypad id=8 [slave keyboard (3)] ↳ InputEmulator id=10 [slave keyboard (3)]
双屏异触
使用xinput对触摸设备和显示设备进行绑定。ILITEK ILITEK-TP触摸设备的id是6,将其与eDP-1绑定。wch.cn USB2IIC CTPCONTROL触摸设备的id是9,将其与HDMI-1绑定。
forlinx@forlinx:~$ xinput map-to-output 6 eDP-1forlinx@forlinx:~$ xinput map-to-output 9 HDMI-1
这样就可以实现RK3399下双屏异触了。测试了一下,两个屏幕各自的触摸效果还不错。
▼效果如下:
以上就是小编给大家分享的内容,希望能够帮到您。
进入飞凌嵌入式官网,了解关于OK3399-C开发板的更多信息。
共2条
1/1 1 跳转至页
研发课堂丨飞凌带你配置瑞芯微3399开发板Ubuntu双屏显示&异触

关键词: 飞凌嵌入式
共2条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【EEPW电子工程师创研计划】技术变现通道已开启~ | |
发原创文章 【每月瓜分千元赏金 凭实力攒钱买好礼~】 | |
【EEPW在线】E起听工程师的声音! | |
“我踩过的那些坑”主题活动——第001期 | |
高校联络员开始招募啦!有惊喜!! | |
【工程师专属福利】每天30秒,积分轻松拿!EEPW宠粉打卡计划启动! | |
送您一块开发板,2025年“我要开发板活动”又开始了! | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
【我踩过的那些坑】STM32的硬件通讯调试过程的“坑”被打赏50分 | |
【我踩过的那些坑】晶振使用的问题被打赏100分 | |
【我踩过的那些坑】电感选型错误导致的处理器连接不上被打赏50分 | |
【我踩过的那些坑】工作那些年踩过的记忆深刻的坑被打赏10分 | |
【我踩过的那些坑】DRC使用位置错误导致的问题被打赏100分 | |
我踩过的那些坑之混合OTL功放与落地音箱被打赏50分 | |
汽车电子中巡航控制系统的使用被打赏10分 | |
【我踩过的那些坑】工作那些年踩过的记忆深刻的坑被打赏100分 | |
分享汽车电子中巡航控制系统知识被打赏10分 | |
分享安全气囊系统的检修注意事项被打赏10分 |