⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 00-index、framebuffer_txt、internals_txt译文 - ~ 悠悠风信子 ~ - csdnblog.htm

📁 S3C44B0X下的LCD (framebuffer)驱动资料与相关代码
💻 HTM
📖 第 1 页 / 共 5 页
字号:
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN>/dev/fb*</SPAN><SPAN>也允许尽心<SPAN>ioctl</SPAN>操作,通过<SPAN>ioctl</SPAN>可以读取或设定设备参数。颜色映射表<SPAN></SPAN></SPAN></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN>也是通过<SPAN>Ioctl</SPAN>设定。查看<SPAN>&lt;linux/fb.h&gt;</SPAN>就知道有多少<SPAN>ioctl</SPAN>应用以及相关数据结构。<SPAN></SPAN></SPAN></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN>这里给出摘要:<SPAN></SPAN></SPAN></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN></SPAN>&nbsp;</P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN><SPAN>&nbsp;&nbsp;</SPAN>-&nbsp;</SPAN><SPAN>你可以获取设备一些不变的信息,如设备名,屏幕的组织(平面,象素<SPAN>,...)</SPAN>对应内存区<SPAN></SPAN></SPAN></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN><SPAN>&nbsp;&nbsp;</SPAN><SPAN>&nbsp;&nbsp;</SPAN></SPAN><SPAN>的长度和起始地址。<SPAN><BR><BR><SPAN>&nbsp;&nbsp;</SPAN>-&nbsp;</SPAN>也可以获取能够发生变化的信息,例如位深,颜色格式,时序等。如果你改变这些值,<SPAN></SPAN></SPAN></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN><SPAN>&nbsp;&nbsp;</SPAN><SPAN>&nbsp;&nbsp;</SPAN></SPAN><SPAN>驱动程序将对值进行优化,以满足设备特性(返回<SPAN>EINVAL</SPAN>,如果你的设定,设备不支持)<SPAN><BR><BR><SPAN>&nbsp;&nbsp;</SPAN>-&nbsp;</SPAN>你也可以获取或设定部分颜色表。<SPAN></SPAN></SPAN></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN><SPAN>&nbsp;&nbsp;</SPAN></SPAN></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN><SPAN>&nbsp;</SPAN></SPAN><SPAN>所有这些特性让应用程序十分容易的使用设备。<SPAN>X&nbsp;server</SPAN>可以使用<SPAN>/dev/fb*</SPAN>而不需知道硬件<SPAN></SPAN></SPAN></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN><SPAN>&nbsp;</SPAN></SPAN><SPAN>的寄存器是如何组织的。<SPAN>&nbsp;XF68_FBDev</SPAN>是一个用于位映射(单色)<SPAN>X&nbsp;server</SPAN>,唯一要做的就是<SPAN></SPAN></SPAN></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN><SPAN>&nbsp;</SPAN></SPAN><SPAN>在应用程序在相应的位置设定是否显示。<SPAN></SPAN></SPAN></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN><SPAN></SPAN></SPAN>&nbsp;</P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN><SPAN>&nbsp;</SPAN></SPAN><SPAN>在新内核中,帧缓冲设备可以工作于模块中,允许动态加载。这类驱动必须调用<SPAN></SPAN></SPAN></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN><SPAN>&nbsp;</SPAN>register_framebuffer()</SPAN><SPAN>在系统中注册。使用模块更方便!<SPAN></SPAN></SPAN></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN><SPAN></SPAN></SPAN>&nbsp;</P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><STRONG><SPAN>3.</SPAN></STRONG><STRONG><SPAN>帧缓冲分辨率设定<SPAN></SPAN></SPAN></STRONG></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN></SPAN>&nbsp;</P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN>帧缓冲的分辨率可以用工具<SPAN>fbset</SPAN>设定。他可以改变视频设备的显示模式。主要就是<SPAN></SPAN></SPAN></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN>改变当前视频模式,如在启动过程中,在<SPAN>/etc/rc.*&nbsp;</SPAN>或<SPAN>&nbsp;/etc/init.d/*&nbsp;</SPAN>文件中调用,<SPAN></SPAN></SPAN></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN>可以把视频模式从单色显示变成真彩<SPAN>.</SPAN></SPAN></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN></SPAN>&nbsp;</P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN>fbset</SPAN><SPAN>使用存储在配置文件中的视频模式数据表,你可以在文件中增加自己需要的显示模式。<SPAN></SPAN></SPAN></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN></SPAN>&nbsp;</P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><STRONG><SPAN>4.X&nbsp;Server</SPAN></STRONG></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN></SPAN>&nbsp;</P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN>X&nbsp;server&nbsp;(XF68_FBDev)</SPAN><SPAN>是对帧缓冲设备的最主要应用。从<SPAN>XFree86<SPAN>&nbsp;&nbsp;</SPAN>3.2</SPAN>后,<SPAN>X&nbsp;server</SPAN>就是<SPAN></SPAN></SPAN></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN>XFree86&nbsp;</SPAN><SPAN>的一部分了,有<SPAN>2</SPAN>个工作模式<SPAN>:</SPAN></SPAN></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN></SPAN>&nbsp;</P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN><SPAN>&nbsp;&nbsp;</SPAN>-&nbsp;</SPAN><SPAN>在<SPAN>/etc/XF86Config</SPAN>文件中,如果<SPAN>`Display'</SPAN>段关于<SPAN>&nbsp;`fbdev'</SPAN>的配置:<SPAN><BR><BR><SPAN>&nbsp;&nbsp;&nbsp;&nbsp;</SPAN>Modes&nbsp;"default"<BR><BR><SPAN>&nbsp;&nbsp;&nbsp;&nbsp;</SPAN>X&nbsp;server&nbsp;</SPAN>将使用前面讨论的,从环境变量<SPAN>$FRAMEBUFFER</SPAN>获取当前帧缓冲设备<SPAN>.<BR><SPAN>&nbsp;&nbsp;&nbsp;&nbsp;</SPAN></SPAN>你也可以设定颜色位深,使用<SPAN>Depth</SPAN>关键字,使用<SPAN>Virtual</SPAN>设定虚拟分辨率。这也是<SPAN></SPAN></SPAN></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN><SPAN>&nbsp;&nbsp;&nbsp;&nbsp;</SPAN></SPAN><SPAN>默认设置。<SPAN><BR><SPAN>&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><BR><BR><SPAN>&nbsp;&nbsp;</SPAN>-&nbsp;</SPAN>然而你也可以通过设定<SPAN>/etc/XF86Config,</SPAN>改变分辨率。这样有很多灵活性,唯一的<SPAN></SPAN></SPAN></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN><SPAN>&nbsp;&nbsp;</SPAN><SPAN>&nbsp;&nbsp;</SPAN></SPAN><SPAN>不足就是你必须设定刷新频率。可以用<SPAN>fbset&nbsp;-x<BR><BR></SPAN>通过<SPAN>fbset</SPAN>或<SPAN>xvidtune</SPAN>切换显示模式。<SPAN></SPAN></SPAN></P>&nbsp;
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><STRONG><SPAN>5.</SPAN></STRONG><STRONG><SPAN>视频模式频率<SPAN></SPAN></SPAN></STRONG></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN></SPAN>&nbsp;</P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN>CRT</SPAN><SPAN>显示器是用<SPAN>3</SPAN>个电子枪轰击磷粉完成颜色的显示的。<SPAN></SPAN></SPAN></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN>电子枪从左到右的水平扫描,并从上至下的垂直扫描。通过改变枪的电压,所显示的颜色<SPAN></SPAN></SPAN></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN>可以不同。<SPAN></SPAN></SPAN></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN>当电子枪完成一行扫描重新回到下一行的开始,被称作<SPAN>“</SPAN>水平折回<SPAN>”</SPAN>。当一屏幕全部<SPAN></SPAN></SPAN></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN>扫描完毕,电子枪将回到最左上脚,被成为<SPAN>“</SPAN>垂直折回<SPAN>”</SPAN>。在折回的途中电子枪是关闭的。<SPAN></SPAN></SPAN></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN></SPAN>&nbsp;</P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN>电子枪打点的移动速度取决于点时钟。如果点时钟是<SPAN>28.37516&nbsp;MHz</SPAN>,打一个点需要<SPAN></SPAN></SPAN></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN>35242&nbsp;ps</SPAN><SPAN>。<SPAN></SPAN></SPAN></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN><SPAN>&nbsp;&nbsp;&nbsp;&nbsp;</SPAN>1/(28.37516E6&nbsp;Hz)&nbsp;=&nbsp;35.242E-9&nbsp;s</SPAN></P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN></SPAN>&nbsp;</P>
            <P 
            style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; mso-pagination: widow-orphan" 
            align=left><SPAN>如果屏幕分辨率是<SPAN>640x480</SPAN>,那么一行的时间是:<SPAN></SPAN></SPAN></P>
            <P 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -