C++ FBIOPUT_VSCREENINFO和modelines

C++ FBIOPUT_VSCREENINFO和modelines,c++,linux,framebuffer,ioctl,modeline,C++,Linux,Framebuffer,Ioctl,Modeline,我试图使用FBIOPUT_VSCREENINFO更改屏幕配置,但我不知道如何计算: __u32 pixclock; /* pixel clock in ps (pico seconds) */ __u32 left_margin; /* time from sync to picture */ __u32 right_margin; /* time from picture to sync */ __u

我试图使用FBIOPUT_VSCREENINFO更改屏幕配置,但我不知道如何计算:

__u32 pixclock;                 /* pixel clock in ps (pico seconds) */
__u32 left_margin;              /* time from sync to picture    */
__u32 right_margin;             /* time from picture to sync    */
__u32 upper_margin;             /* time from sync to picture    */
__u32 lower_margin;
__u32 hsync_len;                /* length of horizontal sync    */
__u32 vsync_len;
见: 对于给定modeline中的fb_var_screeninfo结构。我尝试了以下各种选择:

但我从来没有得到过

我猜pixclock可以用KHZ2PICOS计算,剩下的我似乎不太正确。 用我的猜测尝试ioctl失败了


非常感谢。

这两个链接有助于确定数字:

然而,帧缓冲区设备似乎不允许我设置视频模式