1、 嵌入式课程设计嵌入式课程设计 -基于基于 QT的界面程序设计的界面程序设计 学院: 信息科学与工程学院 专业: 电子科学与技术 班级: 电科 1101 姓名: 1 目录目录 一、设计目的一、设计目的 .2 二、设计任务及要求二、设计任务及要求 .2 三、方案设计三、方案设计 .2 四、嵌入式系统开发环境建立四、嵌入式系统开发环境建立3 五、五、NFSNFS 挂载挂载 6 六、六、QT界面设计及运行程序界面设计及运行程序.9 七七、课设完成质量分析课设完成质量分析 13 八、设计过程中遇到的问题八、设计过程中遇到的问题 . 13 九、设计总结九、设计总结14 十、十、参考文献参考文献14 十一
2、、 附录十一、 附录15 2 基于基于 QT 界面的程序设计界面的程序设计 一、一、设计目的设计目的 1进一步巩固嵌入式系统的基本知识; 2掌握嵌入式应用系统的基本结构; 3掌握嵌入式系统开发环境建立和使用; 4掌握嵌入式系统基本驱动、应用程序的设计调试和编译移植方法; 5学会查阅有关专业资料及设计手册; 6. QT 界面编程。 二、设计任务及要求二、设计任务及要求 1掌握嵌入式系统开发环境建立和使用; 2掌握嵌入式系统基本驱动、应用程序的设计调试和编译移植方法; 3、QT 在 PC 上的安装、 4、QT 在开发板上的移植 1) 、触摸屏原理及 tslib 库的工作原理; 2) 、QT 设计
3、LED 灯控制,设计方案自由发挥,可以单个控制 LED 灯、也 可以流水灯的控制,可控制流水灯的频率(1-5HZ 可选) 5、QT 界面程序设计 6编写设计说明书(方案的确定、设计环节的考虑及必要说明等)及设备的使 用说明; 7绘制有关图纸. 三、方案设计三、方案设计 1 系统文件 可以远程挂载,也可以编译成镜像文件。编译镜像文件的话,只要里面的东 西改变就要重新编译,重新导入。所以我选择 NFS 挂载。 2 内核编译 有两种方案,一种是静态编译内核,另一种是动态编译内核。动态编译的好 处是便于对驱动的测试, 但是还要进行相应的操作; 静态编译的好处是一次编译, 之后就不用再进行插入的操作。
4、基于以上的分析, 所以我采用了静态编译的方法。 3 开发板应用程序的运行方式 我们编写的应用程序有两种方式启动,一种是在系统启动之后,用命令手动 启动, 另外一种是系统启动时自动加载, 为了更方便, 所以我选择了后一种方案, 修炼了系统的一个脚本文件,让 LED 控制程序在系统启动之后自动启动。 3 四、嵌入式系统开发环境建立四、嵌入式系统开发环境建立 1 安装交叉编译器 (1)解压 EABI-4.3.3_EmbedSky_20091210.tar.bz2 tar -jxvf EABI-4.3.3_EmbedSky_20091210.tar.bz2 (2)设置环境变量 export PATH=
5、/opt/EmbedSky/4.3.3/bin:$PATH (3).永久设置环境变量 vi /etc/profile 在最后添加一行 export PATH=/opt/EmbedSky/4.3.3/bin:$PATH 2 安装 tslib-1.4.1 (1)解压 tslib-1.4.tar.gz tar -zxvf tslib-1.4.tar.gz -C / (2)创建目录 mkdir /opt /EmbedSky/tslib_install (3)生成 configure 4 ./autogen.sh (4)配置 ./configure -prifix=/opt/EmbedSky/tslib
6、_insatall -host=arm-linux ac_cv_func_malloc_0_nonnull=yes (5)编译(大概 2030 分钟) make (6)安装 make install 如果以上步骤没错,则可以在/opt/tslib_install 下出现我们需要的库文件,这 些库文件我们移植时会用到。 3 安装 Qt4.7 (1)解压 qt-everywhere-opensource-src-4.7.0.tar.gz tar -zxvf qt-everywhere-opensource-src-4.7.0.tar.gz -C / (2)创建目录,把 QT4.7 安装在 qt-4.7.0-arm目录下 mkdir /opt/QtEmbedded/qt-4.7.0-arm (3)配