基于Qt的嵌入式终端应用程序开发——五子棋游戏开发baseonQtembededfiveinaline毕业设计.doc

上传人:laozhun 文档编号:2392746 上传时间:2023-02-17 格式:DOC 页数:52 大小:1.44MB
返回 下载 相关 举报
基于Qt的嵌入式终端应用程序开发——五子棋游戏开发baseonQtembededfiveinaline毕业设计.doc_第1页
第1页 / 共52页
基于Qt的嵌入式终端应用程序开发——五子棋游戏开发baseonQtembededfiveinaline毕业设计.doc_第2页
第2页 / 共52页
基于Qt的嵌入式终端应用程序开发——五子棋游戏开发baseonQtembededfiveinaline毕业设计.doc_第3页
第3页 / 共52页
基于Qt的嵌入式终端应用程序开发——五子棋游戏开发baseonQtembededfiveinaline毕业设计.doc_第4页
第4页 / 共52页
基于Qt的嵌入式终端应用程序开发——五子棋游戏开发baseonQtembededfiveinaline毕业设计.doc_第5页
第5页 / 共52页
点击查看更多>>
资源描述

《基于Qt的嵌入式终端应用程序开发——五子棋游戏开发baseonQtembededfiveinaline毕业设计.doc》由会员分享,可在线阅读,更多相关《基于Qt的嵌入式终端应用程序开发——五子棋游戏开发baseonQtembededfiveinaline毕业设计.doc(52页珍藏版)》请在三一办公上搜索。

1、毕业设计报告(论文)报告(论文)题目:基于Qt的嵌入式终端应用程序开发五子棋游戏开发 作者所在系部: 计算机科学与工程系 作者所在专业: 计算机科学与技术 作者所在班级: 作 者 姓 名 : 作 者 学 号 : 指导教师姓名: 完 成 时 间 : 2012年6月 北华航天工业学院教务处制北华航天工业学院本科生毕业设计(论文)原创性及知识产权声明本人郑重声明:所呈交的毕业设计(论文)基于Qt的嵌入式终端应用程序开发五子棋游戏开发是本人在指导教师的指导下,独立进行研究工作取得的成果。除文中已经注明引用的内容外,本设计(论文)不含任何其他个人或集体已经发表或撰写过的作品或成果。对本设计(论文)的研究

2、做出重要贡献的个人和集体,均已在文中以明确方式标明。因本毕业设计(论文)引起的法律结果完全由本人承担。本毕业设计(论文)成果归北华航天工业学院所有。本人遵循北华航天工业学院有关毕业设计(论文)的相关规定,提交毕业设计(论文)的印刷本和电子版本。本人同意北华航天工业学院有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;可以采用影印、缩印、数字化或其它复制手段保存论文;在不以营利为目的的前提下,可以公布非涉密毕业设计(论文)的部分或全部内容。特此声明毕业设计(论文)作者: 指导教师: 年 月 日 年 月 日摘 要人工智能是近年来很活跃的研究领域之一,它与生物工程、空间技术一起被并

3、列为二十一世界三大尖端技术。它的中心任务是研究如何使计算机去做那些过去只能靠人的智力才能做的工作。目前各发达国家都把人工智能作为重点项目,列入本国的高科技发展计划当中,投入巨大的人力和物力。计算机博弈是人工智能研究的一个重要分支,它的研究为人工智能带来了很多重要的方法和理论,产生了广泛的社会影响和学术影响。五子棋本身就是一款益智休闲游戏,规则简单。五子棋不仅能增强思维能力,提高智力,而且富含哲理,有助于修身养性。五子棋人机对弈是计算机博弈中的一种。研究其计算机算法,可以让我们看到人工智能的稚形,也有助于我们人脑的开发。五子棋是我国发明的,研究它可以让更多的外国人了解五子棋,这有助于我国优秀文化

4、的推广。本系统就以五子棋游戏作为研究课题,对五子棋的算法与规则做了研究,阐述了如何在 Linux下用 Qt来开发五子棋游戏并给出了具体的实现。本系统以五子棋为例实现的主要功能有棋盘、棋子的输出等。本系统还有开始、积分、重来、状态显示和悔棋等辅助功能。Qtopia的出现为使用嵌入式Linux作为操作系统的手持设备提供了开发图形应用程序的便捷手段。本文介绍了在Linux操作系统中构建Qtopia环境的过程。接着,描述了使用Qtopia程序库开发嵌入式应用的过程。最后,本文以OK6410为目标平台,阐述了构建交叉编译环境和交叉编译应用程序的步骤。关键词:五子棋;Qt;人工智能;OK6410Abstr

5、actArtificial intelligence is one of the brisk research areas. It is with bio-engineering, space technology has been listed as 21 in the world along with the three cutting-edge technologies. Its central task is to study how to make the computer do that in the past to rely on human intelligence to do

6、. AI is currently regarded as the focus of the developed countries included in this cars high-tech development projects invested tremendous human and material resources. The chess game on computer is an important branch of the research on artificial intelligence. The researches on chess game bring p

7、lenty of important methods and theories for researching on artificial intelligence, and cause broad influences on society and academe. Renju chess game means five pieces on one line, is a sort of game, which is full of wisdom, leisure and benefits, and the rules of it are very simple. Man-machine ch

8、ess game Renju in one of the computer. To study the computer algorithm, we can see the beginning of artificial intelligence shadow, but also help us to human brain development. Backgammon invented in China , and the research it can allow more foreigners to understand and help to promote Chinas tradi

9、tional culture.This paper focuses on the study of this chess game, and uses the Linux to explore the Renju chess game. This system mainly uses the function of Qt to realize the export of chessboard and checker, and people can play with computer. Moreover, this system has the assistant functions such

10、 as “Deuce”、“ Play Again”、“ start” 、“ count score” 、“ Go back” and so on.With the emergence of Qtopia, it is more convenient to develop GUI applications on embedded Linux. This paper firstly introduces the steps of building Qtopia development environment on Linux. Then, we describe how to develop GU

11、I application by using Qtopia Development Kit. In the end, this paper refers to the process of building cross-compile environment based on the target device OK6410. Keywords: Renju; Qt ; Artificial intelligence; start; OK6410;目 录摘 要IAbstractII第1章 绪论31.1 课题研究现状分析31.2 选题的目的及意义41.3 课题研究的主要内容41.3.1用Qt-c

12、reator进行五子棋应用程序的设计41.3.2将应用程序移植到OK6410的开发板上5第2章 系统需求分析62.1系统需求62.2 功能需求62.3 系统的设计目标6第3章 系统开发的技术背景83.1 Qt技术介绍83.2 OK6410开发板简介93.3 Linux操作系统简介113.4可行性分析133.4.1经济可行性133.4.2技术可行性143.4.3操作可行性14第4章 系统总体设计154.1 五子棋游戏设计原则154.2 五子棋游戏的总体设计结构15第5章 系统模块设计165.1 用Qt-creator进行五子棋应用程序的主要功能实现165.1.1 绘制棋盘和棋子的功能165.1.

13、2 鼠标处理事件的实现175.1.3将鼠标坐标转换为方格子的坐标185.1.4将方格子的坐标转换为鼠标坐标185.1.5计算direction 方向的side方棋子个数195.1.6判断胜负的函数215.2将应用程序移植到OK6410的开发板上215.2.1嵌入式Linux开发交叉编译器的安装225.2.2 Bootloader 的编译与烧写225.2.3根文件系统的烧写与NFS挂载225.2.4编译第三方库23第6章 系统调试276.1 五子棋游戏测试概述276.2系统设计和应用程序移植过程中出现的问题及解决方法27结 论34致 谢35参考文献36附 录137五子棋游戏的理论价值37附 录2

14、42The Theoretical Value Of Renju42第1章 绪论随着嵌入式技术的发展,嵌入式的应用领域也越来越广泛。随着IC设计的发展,出现了工业化ARM芯片,可以说ARM是未来嵌入式开发的主宰。ARM是Advanced RISC Machines的首字母组合,是一类微型处理器的统称。五子棋人机对弈是计算机博弈中的一种。研究其计算机算法,可以让我们看到人工智能的稚形,也有助于我们人脑的开发。五子棋是我国发明的,研究它可以让更多的外国人了解五子棋,这有助于我国优秀文化的推广。本系统就以五子棋游戏作为研究课题,对五子棋的算法与规则做了研究,阐述了如何在 Linux下用 Qt来开发五

15、子棋游戏并给出了具体的实现。本系统以五子棋为例实现的主要功能有棋盘、棋子的输出等。本系统还有开始、重来、状态显示、积分、退出和悔棋等辅助功能。新一代的ARM11处理器,通过全新的设计,采用了更多的晶体管,能够达到两倍以上于ARM7处理器的处理能力。这种处理能力的提高是通过增加时钟频率和减少指令执行周期实现的。本系统的所有用户界面则采用可跨多平台的Qt图形界面设计软件进行开发,Qt图形界面设计软件具有优良的跨平台特性、面向对象、丰富的API、大量的开发文档等优点。1.1 课题研究现状分析目前,连珠五子棋这一棋类运动已迅速在国际上发展起来。现在,有40多个国家和地区己开展了五子棋活动。许多国家的人

16、对五子棋都有不同的爱称,例如韩国人把五子棋称为“情侣棋”,言下之意是说情人之间下五子棋有利于增加情感的交流;欧洲人称之为“绅士棋”,喻棋手下五子棋的君子风度胜似绅士:美洲人称之为“商业棋”,意思可能是边下五子棋边谈生意,是商业贸易之桥;日本人则称之为“中老年棋”,表示五子棋适合成熟的中老年的生理特点和思维方式。不同语言、地区的人们都可以借助五子棋这一简单而又深奥的棋艺进行交流、比赛,以增进友谊。我国是从20世纪90年代引进五子棋世界流行规则的,此后的十多年的时间里,五子棋在民间迅速普及。北京是五子棋发展最早也最普及的地区,1992年就成立了我国第一个五子棋民间组织京都五子棋社。在北京的带动下,

17、其他地区也先后成立了五子棋组织,从此积极的投身于这项益智的游戏中,2004年成立中国围棋协会五子棋分会,它属于中国五子棋界的领导机构,并且先后在部分地区组织俱乐部,组织比赛,让越来越多的人参与和喜爱这项活动,但是中国还是没有专业的棋手,在这方面的相关规则和体系还不完善,能够真正弄懂的人还是很少,所以中国在五子棋这方面的发展空间还是很大的,这就需要我们不断的努力探索和研究才能把五子棋发展的更加壮大。那么现在通过网络五子棋游戏的产生也让更多的人收益,人们不仅可以和电脑下棋,还可以和异地的陌生人下棋,更可以在下棋的时候和对方交流心得,这就是我此次设计的主题,那么在未来的五子棋的发展来看,也许比赛的规

18、则会有所改变,棋局会变的更复杂而且所需的技巧也会越来越多,这就需要所有人的努力才会实现了。1.2 选题的目的及意义五子棋对人的智力开发有利,其实这样说不全面,非智力因素上的帮助也是明显的,如毅力、耐心、细心、心理自我调节、思考方式等习惯的培养也是非常有帮助的。五子棋的根在中国,有着广泛的群众基础。但与世界先进的五子棋技术相比,我们的棋艺水平还有待进一步提高,所以我们要推广五子棋,宣传五子棋。中国作为五子棋的发源国,不仅要回到国际大家庭中,更重要的是要靠我们的力量为五子棋在下个世纪的发展起到世界性的推动作用,并为国际连珠棋成为奥运项目做出一份贡献!1.3 课题研究的主要内容1.3.1用Qt-cr

19、eator进行五子棋应用程序的设计1. 建立主机开发环境开发主机装有ubuntu Linux 。我们选择Trolltech公司的自由版软件QT-embedded-2.3.4和Qtopia作为开发环境,下载RPM包并安装。Qt Embedded和Qtopia函数库:包含了完整的开发嵌入式Linux应用程序的核心函数库。lQPE(Qtopia Executable):用于处理所有的用户界面问题。lmkipks:为配置PDA而产生ipk文件的包。此外,还有用于QT开发的典型工具:lDesigner:Qt的图形设计器。ltmake:跨平台Makefile生成器。lmoc:用于Qt C+ 扩展的meta

20、2object编译器。luic:从XML文件生成代码的用户界面编译器。有了这些工具,再加上g+(GNU C+编译器),就可以进行基于Qtopia应用程序的开发、编译和调试了。2. 开发应用程序Qtopia应用程序的开发类似传统的窗口应用程序开发,可以遵循面向对象的程序设计方法。在程序设计的过程中,要将传统桌面应用程序使用的类换成Qtopia的类。由于嵌入式设备存储器的特殊性,在面向文档的应用程序中,需要利用Qtopia类库中的对文档的特殊支持方法。1.3.2将应用程序移植到OK6410的开发板上主要完成的任务有NFS配置及使用,嵌入式Linux开发交叉编译器的安装,Bootloader 的编译

21、与烧写,Linux 内核的编译与烧写,根文件系统的烧写与NFS挂载,编译第三方库。第2章 系统需求分析随着现实生活中生活节奏的加速,生活压力的加大,休闲娱乐变得越来越重要。五子棋子游戏,玩法简单,娱乐性也很高。五子棋不仅能增强思维能力,提高智力,而且富含哲理,有助于修身养性。通过对五子棋的设计与开发,了解和掌握游戏开发的原理与方法。让电脑像人脑一样思考,一直是人工智能发展的最终目标。作为一门边缘学科,它有诸多的研究领域,博弈即为其中之一。所以五子棋游戏能很好的帮助人们从生活压力中得到快乐。2.1系统需求五子棋作为一款休闲益智游戏,它最大的优点在于游戏规则家喻户晓,简单,上手快,趣味性强,所以受

22、广大用户青睐,在各大提供棋牌类游戏的平台都可以看到玩五子棋游戏的人很多。休闲益智游戏中等级并不是最重要的追求目标,通过对游戏规则的熟悉,能很快上手掌握其操作方式,也更适合男女老幼全家共同娱乐,花费时间简短,速战速决,在短时间内感受到游戏的乐趣,完全享受气氛轻松活跃的游戏过程。此种娱乐方式既不耽误时间也能轻松调剂娱乐,充分适合现代人们的娱乐需求。更主要的是开发了人的智力,成为年轻一代最流行的游戏,据统计,五子棋游戏的玩家中,学生占了接近三分之一的比例,对学生的智力健康成长起一定作用,正所谓休闲娱乐两不误。2.2 功能需求本系统要求界面简洁,美观,交互性要比较强。操作方便,得体,把五子棋游戏规则中

23、最基本的规则体现出来,比如“悔棋”、“重来”等。五子棋还有一大特点就是速战速决,电脑应在很短时间内就应做出判断,所以要合理的设计判断胜负的函数。并能提供一定的帮助,违反游戏规则的时候应立即指出。在正规五子棋比赛中,都设置了“禁手”这一规则,但广大玩家之所以喜爱五子棋游戏,就是因为五子棋游戏规则简单,“禁手”这一规则很复杂,所以在本系统中,采用“无禁手”的规则,让规则简单化。这样,让初学的人对五子棋有更加高的可控度,能够真正体会到下五子棋的快乐。系统中还设计了状态显示,和积分等功能,在黑方或者白方任意一方获得胜利,都能及时的显示胜负的一方。积分功能让游戏的人能够体会的胜利的喜悦。2.3 系统的设

24、计目标设计基于Qt的五子棋程序接收的各种消息可以分为两类:一类是由硬件装置产生的消息(如鼠标被按下),另一类是由玩家交流发送的消息。当指定事件发生时,游戏判断胜负的算法会根据下棋的相应的位置来进行。需要实现的的游戏重要功能:(1)主窗口:负责管理所有的部件,创建所有信号和槽的连接(2)棋盘类:绘制棋盘,把棋盘看成一个二维数组,处理鼠标点击事件,在点击处一定范围内绘制棋子,然后最主要的就是算法,就是怎么走才算赢,这个要花时间研究(3)积分和胜负显示,使游戏的人体会到胜利的快乐。(4)设计按钮,控制开始、重来、悔棋、退出等功能。结合实际玩家需要,运用Qt技术设计出五子棋游戏。要用鼠标来获取坐标(m

25、ousePressEvent(),点击的时候应有一定的范围。增加图形界面类(paintEvent(),把显示功能从棋盘类中脱离出来,棋盘只负责棋子坐标数据的存储和更新。mRecord类对下棋方的相关信息进行了记录,mnextturn变量对轮到哪一方下棋进行了记录。为使用界面更加的美观,打算给界面贴一张背景图(label-setPixmap(),棋盘的网格没有用QPainter类的drawline()来实现,因为直接画出来的线条不美观。棋子本身没有用采用QPainter类的drawEllipse()画圆并填充来实现,而是直接drawImage()贴图来实现。设计的开始、重来、退出、悔棋按钮都用Q

26、PushButton类来实现,并实现信号和槽函数的链接。游戏玩家可以根据游戏按键来控制游戏的开始,暂停和结束,在进入游戏后,玩家可以通过鼠标点击来下棋,并能够在游戏阶段进行积分,让玩家体会到游戏的快乐以及战斗的快乐。本系统界面美观,友好,操作方便。 第3章 系统开发的技术背景本设计与建设过程中应用的主要技术有用Qt开发五子棋应用程序的开发,包括绘制出棋子和棋盘,设置出开始、重来、悔棋、退出等按钮功能。用到了鼠标点击事件的处理,绘制棋子,和棋盘的函数drawpixmap()的使用。还有胜负显示,黑方和白方两方的积分。还有就是应用程序的移植,包括u-boot的烧写,内核的裁剪,根文件系统的烧写,编

27、译第三方库,其中包括 ,qtopia源码的编译,运用的软件主要有ubuntu桌面应用为主的Linux操作系统。运用的硬件主要有OK6410开发板。3.1 Qt技术介绍Qt是一个多平台的C+图形用户界面应用程序框架,它是基于面向对象的思想进行相应开发的,支持真正意义上的组件编程,可以为不同用户提供华丽的用户界面。所以,从本质上来说Qt是一个跨平台的C+应用程序开发框架,有时又被称为C+部件工具箱。Qt被用在KDE桌面环境、Opera、Google Earth、Skype、Adobe Photoshop Album 和 VirtualBox 的 开 发 中 , 是 诺 基 亚 ( Nokia )

28、的 Qt Development Frameworks 部门的产品。使用 Qt只需一次性开发应用程序和用户界面,无须再次重新编写源代码,便可跨不同桌面和嵌入式操作系统部署这些应用程序。信号和插槽机制是 Qt 的核心机制,也是 Qt 的核心特性。 Qt 有着自身的特点,不同于其他界面开发软件,其中一个重要的地方,便是信号与插槽机制,因此精通 Qt 编程是基于对信号和插槽机制有着深入的了解;信号和插槽是一种高级接口,很好的解决了对象与对象之间的通信问题,也是 Qt区别于其他工具包的重要地方。信号和插槽是 Qt 自行定义的一种通信机制,Qt 编程语法是完全符合标准 C/C+语言的,但是信号与插槽机制

29、却是独立于标准的 C/C+,因此要正确的处理信号和插槽,必须借助一个称为 moc(Meta Object Compiler)的 Qt工具,该工具是一个 C+预处理程序,它为高层次的事件处理自动生成所需要的附加代码。信号/槽机制是在QObject类中实现的。在QObject类或者其一个子类(比如:QWidget类)继承的所有类中,都存在了信号和槽。当对象改变其状态的时候,信号被发送,对象不关心有没有其他对象接收到这个信号。槽是类的正常成员函数,可以将信号和槽通过connect()函数任意连接。当一个信号被发射,它所连接的槽会被立即执行,如同一个普通函数调用一样。Qt 安装配置1.下载安装包从网址

30、Qt libraries 4.8.0 for Windows (minGW 4.4, 354 MB) 和Qt Creator 2.4.0 for Windows (53 MB)2.安装先安装Qt Creator,安装过程中会自动安装minGw,并记住路径以便安装Qt Library时使用。在安装Qt Libraries3.配置安装完毕,打开Qt Creator, 选择工具|选项对话框,在构建和运行中点击添加按钮,选择qmake.exe文件:4.新建项目并运行跟着新建项目的向导一步一步做就可以了,项目的工作目录不能有中文,否则make的时候会报错。3.2 OK6410开发板简介OK6410是由飞

31、凌嵌入式技术有限公司设计生产的一款嵌入式开发平台,它基于三星公司的ARM11处理器S3C2440A,内部带有全性能的MMU(内存处理单元) ,适用于设计移动手持设备类产品。OK6410开发板采用核心板+底板设计,性能稳定可靠,具有高性能、低功耗、接口丰富和体积小等优良特性。目前已成功移植Linux,WINCE等操作系统到OK6410开发板。3每次使用OK6410开发板前,请先将手接触开发板周围金属部分或者其它地方来释放静电,避免直接用手触摸芯片造成芯片烧坏!需要对开发板进行物理操作时,请关闭电源,除USB以及网络接口(如果与局域网相接请使用普通网线,开发板标配网线为计算机直连网线)外,其它接口

32、均不支持热插拔,开发板工作时,请不要带电插拔。OK6410 开发板采用核心板+底板结构,核心板为6 层,底板为2 层。开发板的布局和走线经过精心设计,可稳定运行在400MHz。接口丰富,功能强大,适用于各种手持设备,消费电子和工业控制设备的开发。三星公司推出的这款16/32 位RISC 处理器S3C2440A,是面向高端手持设备或其它一般应用而设计的芯片。采用ARM1120T 内核,低功耗, 具有高速的处理计算能力。整体设计融合了MMU、AMBA BUS 和Harvard(哈佛)结构。具有独立的16KB 指令Cache 和16KB 数据Cache。其内部体系结构: 为手持设备和通用嵌入式应用提

33、供片上集成系统解决方案。 16/32 位RISC 体系结构和ARM1120T 内核指令集。 增强的ARM 体系结构MMU 用于支持WinCE,EPOC32 和Linux。 指令高速存储缓冲器(ICache),数据高速存储缓冲器(DCache),写缓冲器和物理地址TAG RAM 减少主存带宽和响应性带来的影响。 采用ARM1120T CPU 内核支持ARM 调试体系结构。 内部高级微控制总线(AMBA)体系结构(AMBA2.0,AHB/APB)。系统管理器 支持大/小端模式。 支持快速总线模式和同步总线模式 寻址空间:每bank 128M 字节(总共1G 字节)。 支持可编程的每bank 8/1

34、6/32 位数据总线带宽。 从bank0 到bank6 都采用固定的bank 起始寻址。 bank7 具有可编程的bank 的起始地址和大小。 8 个存储器bank,其中6 个适用于ROM、SRAM 和其它,另外两个适用于ROM/SRAM和同步DRAM。 所有的存储器bank 都具有可编程的操作周期。 支持外部等待信号延长总线周期。 支持掉电时的SDRAM 自刷新模式。 支持各种型号的ROM 引导(NOR/NAND FLASH、EEPROM,或其它)。NAND FLASH 启动引导 支持从NAND FLASH 存储器直接启动。 采用4KB 内部缓冲器进行启动引导。 启动之后NAND 存储器仍然

35、可作为外部存储器使用Cache 存储器 64 项全相连模式,采用ICache(16KB)和DCache(16KB)。 每行8 字长度,其中每行带有一个有效位和两个dirty 位。 伪随机数或轮转循环替代法。 采用写穿式(writethrough)或写回式(writeback)Cache 操作来更新主存储器。 4 通道16 位具有PWM 功能的定时器,1 通道16 位内部定时器,可基于DMA 或中断进行工作。 可编程的占空比周期,频率和极性。 能产生死区。 支持外部中断源。UART 3 通道UART,可以基于DMA 模式或中断模式工作。 支持5 位、6 位、7 位或者8 位串行数据发送/接收。

36、支持外部时钟作为UART 的运行时钟(UEXTCLK)。 可编程的波特率。 支持IrDA 1.0。 具有测试用的回还模式。 每个通道都具有内部64 字节的发送FIFO 和64 字节的接收FIFO。A/D 转换和触摸屏接口USB 主设备 2 个USB 主设备接口。 遵从OHCI Rev1.0 标准。 兼容USB ver1.1 标准。USB 从设备 1 个USB 从设备接口。 具备5 个Endpoint。 兼容USB ver1.1 标准。SD 主机接口 基于普通、DMA 或中断传输模式(字节、半字、字)。 支持DMA 脉冲访问(只是字传输)。 兼容SD 存储卡协议1.0 版。 兼容SDIO 卡协议

37、1.0 版。 64 字节发送和接收FIFO。 兼容多媒体卡协议2.11 版。3.3 Linux操作系统简介当今为 Linux 建立文件分区可以有两种办法,一种是利用空闲的磁盘空间新建一个 Linux 分区 ,另一种是编辑一个现有的分区,使它成为 Linux 分区。如果没有空闲的磁盘空间,就需要将现有的分区删除后,腾出空间,以建立 Linux 分区。DISK DRUID 程序中有明显的新建、删除、编辑、重设等按钮。用户可以直观地对磁盘进行操作。在使用 DISK DRUID 对磁盘分区进行操作时,有四个重要的参数需要仔细设定:它们是挂载点、文件系统类型、驱动器、分区大小。挂载点:它指定了该分区对应

38、 Linux 文件系统的哪个目录,Linux 允许将不同的物理磁盘上的分区映射到不同的目录,这样可以实现将不同的服务程序放在不同的物理磁盘上,当其中一个物理磁盘损坏时不会影响到其他物理磁盘上的数据。文件系统类型:它指定了该分区的文件系统类型,可选项有 EXT2、EXT3、REISERFS、JFS、SWAP 等。Linux 的数据分区创建完毕后,有必要创建一个 SWAP 分区,它实际上是用硬盘模拟的虚拟内存,当系统内存使用率比较高的时候,内核会自动使用 SWAP 分区来模拟内存。大小:指分区的大小(以 MB 为单位),Linux 数据分区的大小可以根据用户的实际情况进行填写,而 SWAP 大小根

39、据经验可以设为物理内存的两倍,但是当物理内存大于 1GB 时,SWAP 分区可以设置为 2GB。其源码可以自由获得,并能够运行于多数 Unix 系统。它包括以下特性:自动重拨号的拨号目录 ,对串行设备 UUCP 格式的 lock 文件的支持,独立的脚本语言解释器,文件捕获,多用户单独配置,等等。m 用 Meta 或 Alt 键重载命令键,在 1.80 版中这是缺省值,也可以在 minicom 菜单中配置这个选项。不过若一直使用不同的终端,其中有些没有 Meta 或 Alt 键,那么方便的做法还是把缺省的命令键设置为 CtrlA,当有了支持 Meta 或 Alt 键的键盘时再使用此选项。Mini

40、com假定 Meta 键发送 ESC 前缀,而不是设置字符最高位的那一种(见下)。M 跟“m”一样,但是假定 Meta 键设置字符高端的第八位(发送 128+字符代码)。z 使用终端状态行。仅当终端支持,并且在其 termcap 或 terminfo 数据库入口中有相关信息时才可用。l 逐字翻译高位被置位的字符,使用此标志,minicom 将不再尝试将 IBM 行字符翻译为ASCII 码,而是将其直接传送。许多 PCUnix 克隆不经翻译也能正确显示它们(Linux 使用专门的模式:Coherent 和 Sco)。a 特性使用,有些终端,特别是 televideo 终端,有个很讨厌的特性处理(

41、串行而非并行)。minicom 缺省使用aon,但若在用这样的终端,你就可以(必须!)加上选项a off。尾字on或off需要加上。t 终端类型,使用此标志,可以重载环境变量 TERM,这在环境变量 MINICOM 中使用很方便;可以创建一个专门的 termcap 入口以备 minicom 在控制台上使用,它将屏幕初始化为 raw模式,这样,连同f标志一起,就可以不经翻译而显示 IBM 行字符。c 颜色使用,有些终端(如 Linux 控制台)支持标准 ANSI 转义序列色彩。由于 termcap 显然没有对于色彩的支持,因而 minicom 硬性内置了这些转义序列的代码。所以此选项缺省为 of

42、f。使用c on可以打开此项。把这个标志,还有m放入 MINICOM 环境变量中是个不错的选择。C 文件名,启动时打开捕获文件。8 不经修改地传送 8 位字符,“连续”意指未对地点/特性进行真正改变,就不插入地点/特性控制序列。此模式用于显示 8 位多字节字符,不是 8 位自否的语言都需要(例如显示芬兰文字就不需要这个)。minicom 启动时,它首先搜索用于命令行参数的 MINICOM 环境变量,这些参数可在命令行上超载。例如:若进行了如下设置:MINICOM=m c onexport MINICOM或者其它等效的设置,然后启动 minicom,minicom 会假定终端有 Meat 键或

43、Alt 键,并且支持彩色。如果从一个不支持彩色的终端登录,并在启动文件(.profile 或等效文件)中设置了minicom,而且又不想重置环境变量,那么就可以键入minicom c off,来运行这次没有色彩支持的会话。当有了 linux 内核源码之后需要交叉编译,因为源码是不能运行的。我们编译的是 2.6 的内核,采用的交叉编译器为 3.4.1 版本。编译命令:make config(基于文本的最为传统的配置界面,不推荐使用)make menuconfig(基于文本选单的配置界面,字符终端下推荐使用)make xconfig(基于图形窗口模式的配置界面,Xwindow 下推荐使用)make

44、 oldconfig(如果只想在原来内核配置的基础上修改一些小地方,会省去不少麻烦)这三个命令中,make xconfig 的界面最为友好,但 如果你不能使用 Xwindow,那么就使用 make menuconfig 好了。界面虽然比上面一个差点,总比 make config 的要好多了。交叉编译就是在一种计算机环境中运行的编译程序,能编译出在另外一种环境下运行的代码,我们就称这种编译器支持交叉编译。这个编译过程就叫交叉编译。简单地说,就是在一个平台上生成另一个平台上的可执行代码。如 keil 软件,在 keil 上编译,但在单片机上运行,典型的交叉编译。我们在开发板上运行的程序,是在 PC

45、 机上编译的,所以是交叉编译。3.4可行性分析进行可行性分析是非常必要的,也是很重要的,本系统的可行性研究主要是参考已存在并正处于运行的类似系统和经过最初的设计目标及进行的市场调查分析为评价尺度,考虑其技术可行性、经济可行性和操作可行性。可行性研究是为了弄清楚系统开发的项目如何用最小的代价在尽可能短的时间内确定问题是否能够解决,是否值得进行研究的过程,实际上进行可行性分析大大简化了系统设计的过程。3.4.1经济可行性LINUX系统属于开放源代码软件,由于LINUX系统具有稳定、安全、网络负载力强、占用硬件资源少等技术特点,自问世以来得到了迅速推广和应用,并已发展为当今世界的主流的嵌入式操作系统

46、之一。LINUX在嵌入式的广泛应用不是偶然的,这就取决于LINUX操作系统特点。LINUX是一款免费的操作系统,用户可以通过网络或其他途径免费获得,并可以任意修改其源代码。这是其他的操作系统所做不到的。正是由于这一点,来自全世界的无数程序员参与了LINUX的修改、编写工作,程序员可以根据自己的兴趣和灵感对其进行改变。这让LINUX吸收了无数程序员的精华,不断壮大。OK6410开发板的价格也是可以接受的,且有用户指导手册,便宜开发,易于使用。3.4.2技术可行性本系统使用Qt开发,Qt具有良好的可靠性、可用性、可编程性与易用性,基本上,Qt Windows平台上的MFC、OWL、VCL、ATL是同类型的东西,但是Qt具有下列优点:(1)优良的跨平台特性Qt支持下列操作系统: Microsoft Windows 95/98、Microsoft Windows NT、Linux、Solaris、SunOS、HP-UX、Digital UNIX 、Irix、FreeBSD、BSD/OS、SCO、AIX、OS390、QNX等等;(2)面向对象Qt 的良好封装机制使得Qt的模块化程度非常高

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号