基于s3c2410的minigui移植内容摘要:

ific options。 各配置项均不配置。 ( 7) 配置图像文件支持选项,即 Image options。 选中 Includes SaveBitamprelated functions, GIF file support, JPG file support和 PNG file support,其他不选。 ( 8) 配置输入法选项,即 Input method options。 选中所有选项。 ( 9) 配置外观选项,即 Appearance options。 所有选项均不选中。 ( 10) 配置其他选项,即 Misc options。 选中所有选项。 ( 11) 配置控制选项,即 Control options。 选中所有选项。 ( 12) 配置扩展库选项,即 Ext options。 选中前六项和最后一项。 ( 13) 配置开发环境设置选项,即 Evelopment environment platform项中选择 Linux环境,在 Compiler项中环境 i386工具。 在 Libc项中选择 glibc库环境。 在 Path 电子与信息工程专业课程设计 prefix项中设定路径为 /usr/local,此为 MiniGUI的安装路径。 配置完成之后,可以通过选择 Save Configuration to an atlternate File 选项,把本次配置保存到一个自定义的文件中,下次配置可以通过选择 Load An Alternate Configuration File选项 把配置文件载入。 退出配置环境,此时系 统会出现“ do you wish to save you new MINIGUI configuration?”提示对话框。 选中 YES ,之后系统将自动运行一段时间,用来改变到新的配置项和生成相关的 makefile文件。 等系统停止输出时,键入 make命令,对库文件进行重新编译。 编译成功后,键入 make install命令,将 Minigui库安装到默认的 /usr/local/lib目录下。 接下来,查看文件 /etc/(指令: vi )。 确保在其内容最后一行中是否有 /usr/local/lib,如果没有,进行添加(按 i进入编辑模式,添加成功后按 ESC进入普通模式,再按: wq进行保存退出)。 至此, minigui的仿真环境设置完毕,如图 所示: 图 /usr/local/lib 在 QVFB上显示例样程序: 找到 linux中共享文件夹中的 ,将其复制到 /opt/emlation目录下( minigui提供了多个示例程序 )。 然后通过命令 tar zxvf ,解压后进入 ,键入 ./configure和 make命令,可以将这些示例程序编译成可执行程序这些可执行程序能够在Linux纯字符控制台或 QVFB上运行。 但是要在 QVFB上运行示例程序还需要如下步骤: ( 1) 按照如下配置修改 /usr/local/etc/目录下的配置文件 : 【 system】 gal_engine=fbcon改为 gal_engine=qvfb ial_engine=console改为 ial_engine=qvfb 【 qvfb】 defaultmode=640x48016bpp: 如图 电子与信息工程专业课程设计 图 配置文件 ( 2) 进入 opt/emulation/(指令 ./ bmpbkgnd) ,即可看到在 qvfb内的 MiniGUI程序 ,如图 : 如图 执行 bmpbkgnd程序文件 电子与信息工程专业课程设计 5 Linux 下 FrameBuffer 的驱动运行 framebuffer 驱动的添加 FrameBuffer 是出现在 linux 内核中的一种驱动程序接口。 这种接口将显示设备抽象为帧缓冲区。 在应用程序中,通过将 FrameBuffer设备映射到进程地址空间的方式使用,打开/dev/fb0设备,然后通过 mmap系统调用进行地址映射,随后即可对 FrameBuffer操作。 与 framebuffer 相关的代码在 kernel/drivers/video 下,该目录有一个名为 的文件,这个文件就 是支持 S3C2410 的 framebuffer 驱动的源程序,有了这个文件,还需要在编译的时候能将它编译进内核,所以还需要进一步修改。 首先将 kernel文件复制到创建的目录 linux2410下,并对 : 1) 进入 kernel/drivers/video/ 文 件 内 , 在 该 文 件 中“ dep_tristate’ s3c2410 LCD support’ CONFIG_FB_S3C2410 $CONFIG_ARCH_S3C2410” 下面添加: dep_bool’ 320*240 8bit color STN LCD support’ CONFIG_FB_s3c2410_320x240x8 $CONFIG_FB_S3C2410 表示配置了 CONFIG_ARCH_S3C2410,可以选择 S3C2410的 Framebuffer支持。 如图 所示: 图 2) kernel/drivers/video/Makefile 在该文件的“ obj $ (CONFIG_FB_GAMEPARK_FSTN)+=s6b7024fb. o fbgen. o” 后添加: Obj $ (CONFIG_FB_S3C2410) += 表示将 S3C2410 Framebuffer的驱动程序加入 Lniux内核。 如图 : 电子与信息工程专业课程设计 图 Makefile 文件修改 3) kernel/drivers/video/ 在该文件开始部分,添加调用的函数声明: extern int S3c2410fb_int (void)。 extern int S3c2410fb_setup(char*)。 之后,在合 适的地方添加 S3C2410fb驱动入口: ifdef CONFIG_FB_S3C2410 {“ S3C2410fb” ,S3C2410fb_int, S3C2410fb_setup}, endif 如图 : 图 电子与信息工程专业课程设计 Framebuffer 设备文件的添加 应用程序使用 framebuffer驱动程序是通过设备文件来进行的,所以必须在文件系统中创建 framebuffer相应。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。