- 102
- 0
- 约2.33千字
- 约 5页
- 2016-11-29 发布于北京
- 举报
东软实习总结报告
实习总结报告
题 目:智慧医疗之医生掌中宝
实习名称:东软嵌入式开发
班 级:
学 号:
学生姓名:
指导教师:
哈尔滨工程大学
2014年7月22日本次实习来到了沈阳的东软集团,我们在这里进行了为期两周的实习,实习的内容是嵌入式开发,主要是学习了Linux系统的操作,并且巩固拓展了C语言的知识。
初次运用Ubuntu虚拟机,其中的Linux系统是不同于windows系统,在VMare Workstation上操作命令全部是用键盘敲入命令,而不是用鼠标,这一点非常有趣。刚开始的时候会觉得纯键盘输入比较麻烦,即使是进入上一个文件夹或者是删除某个文件,都要键入好多的字符,不如鼠标来的便捷。但是当这些命令敲得多了,也就慢慢体会到这种命令方式的优点。在某些命令上键盘操作是优于鼠标操作的,这也就是Linux系统经久不衰的原因。
Linux的很多操作都比较有意思,在这里我要简单说一说一些命令的神奇之处。
①cat与vi。其中cat是在Ubuntu操作上显示文档内容,但是这个像我们平时用的只读阅读器,你可以清楚地看到文件里的内容,但是却不可修改。而vi命令却是像我们平时使用的word编辑器,可以看到内容,又可以修改内容。
②touch与mkdir。这两个命令都是创建的功能,touch是创建一个新的空文件,创建好之后可以用上面提到的vi来编辑内容。mkdir是创建一个空的目录,即mkdir是一个目录,我们可以用cd命令进入这个目录,从而又可以使用touch创建文档了。
③mv与cp。mv是迁移的命令,这个命令可以讲一个文件夹里的文档或子文件夹迁移到另一个文件夹中,二cp是复制的命令,与mv不同的是cp命令是时候原文件夹还保存着被操作的文件,而mv命令则否。
这种存在异同的有趣的命令还有很多,在这里我就不一一列举了。下面我说一说C文件的编译。
普通的C文件编译仅用到gcc即可,例如我想要编译一个名为hello.c的文件,那么我就可以简单的输入命令:gcc -o hello hello.c 或者gcc hello.c -o hello。但是很有可能我们遇到这样的情况,即想要编译的文件不在当前文件夹里,这个时候我们要找到它的相对路径,此时需要在编译时加上-I。gcc命令还有一个功能就是可以同时编译不止一个源文件。
还有一个重要的知识是库文件。库文件又分为静态库与动态库,静态库是以.a为后缀结尾,动态库是以.so为后缀结尾。静态库和动态库在创建的过程中是存在差别的,例如制作静态库,首先要生成目标文件,然后再用ar命令使之归档。使用的时候,要将库文件连接到main函数里,然后再编译。编译的时候如果gcc所能找到库目录同时有两种版本,则优先链接动态库,若是想要使用静态库则需要在库名称前加上-static。
有些程序很长,我们在调试运行的时候会输入一大串的命令,如果遇到了程序出错我们会一遍一遍的调试,这个时候键入命令就会变得很繁琐,Linux系统中的Makefile的解决了这个问题。我们可以在Makefile中编辑每一次编译程序所用到的命令,把它存储在与程序相同的文件夹里,这样每次调试的时候只需要加入make,便能够快速执行所有敲在Makefile里的命令了,这样方便快捷省时省力。
最有意思的我认为莫过于GTK界面的制作。GTK是一套用于创建图形用户界面的工具包,这个界面有一点像MATLAB中的GUI界面,构建一些函数来实现功能,然后这个界面就可用于接下来的鼠标操作,。包括如何创建窗口、显示窗口、设置各种参数等。为了在GTK中添加一些想要的文字按钮或者编辑框,GTK中包含了框的规则。框在GTK中是一种不可见的widget容器,它有水平框和垂直框两种。水平框是指构建放入窗口的顺序水平排列,垂直矿是指构建放入窗口的顺序垂直排列。水平框可以看作是只有一行的表格,而垂直框可以看作是只有一列的表格。但是他们的操作比表格更加简单,防止构件时不需要考虑构件的位置。
当大部分的操作了解后,我们就可以将arm2440与Ubuntu相连接,使用UDP或者TCP进行传输数据了。TCP和UDP的相同点是服务器进程都需要创建套接字,并把自己的本地地址绑定到这个套接字上,TCP中客户端只需要连接到服务器就可以了,UDP中客户端必须创建套接字并绑定地址。
除了Linux系统的学习,培训老师还带领我们复习并拓展了C语言学习,包括一些数组的运用,函数调用,指针运用等,每天晚上大家都会最一些小的练习巩固一天所学。
实习最后的几天我们以小组为单位完成了一个最终项目——智慧医疗之医生掌中宝,这个项目有软件与硬件的结合,把我们之前培训所学到的所有内容全部应用到了,不仅如此,还有很多没有学习的东西,这就是来考验我们自学的能力了。
两周的实
原创力文档

文档评论(0)