如何让BeagleBone Black的startx使用HDMI全屏显示?
BeagleBone Black Rev C HDMI屏幕适配与Xorg相关问题
系统信息
Build Operating System: Linux 5.10.0-21-arm64 armv8l Debian Current Operating System: Linux beaglebone 4.19.94-ti-r74 #1buster SMP PREEMPT Tue Jun 27 20:53:24 UTC 2023 armv7l
目标
在5英寸HDMI屏幕(分辨率800x480)上开发基于tkinter的Python GUI程序。
问题详情
Tkinter运行报错:BBB启动后控制台在HDMI屏幕显示正常,登录后直接运行tkinter程序报错:
_tkinter.TclError: no display name and no $DISPLAY environment variable使用
startx启动X服务器后报错消失,但触发新问题。Xorg启动后屏幕内容缩小:启动X服务器后,控制台尺寸比初始控制台小,运行的GUI程序仅占屏幕约75%区域。推测是DPI识别问题,已配置
xorg.conf定义屏幕尺寸,且通过xdpyinfo | grep -B2 resolution验证尺寸正确,但问题未解决。目前通过root.geometry("800x480")实现GUI全屏,仅为临时修复方案。其他异常情况:
- 安装Xorg后,使用Adafruit BBIO库配置部分GPIO(非HDMI冲突引脚)失败。
- 手动运行
startx时,不确定登录阶段是否已有图形服务器在运行。 - 退出X服务器后屏幕出现像素化,反复启动退出后画质进一步下降,出现重影和像素损坏问题。
已尝试的方法
- 执行
startx -fullscreen:仅给控制台添加窗口边框,无其他改善 - 编辑
xorg.conf添加屏幕尺寸信息,无效 - 更换其他HDMI屏幕,问题依旧存在
- 创建
~/.Xresources并添加Xft.dpi: 96,通过xrdb加载后无效果
内容的提问来源于stack exchange,提问作者lunuchrat
相关产品推荐
相关产品推荐

