您的位置:首页 > 其它

大三暑期实习总结

2011-09-01 10:42 197 查看

由来

作为技术型工科专业学生,我选择了在大三的暑期进行为期两个月的实习工作。





经历

说起找实习单位也算幸运,在一个同学建android群无意间遇到了个老乡,公司也是做嵌入式的,我就随口问了一句“我也是学习嵌入式的,你们那里招实习生吗?”。后来我就到他们公司实习了。暑期结束,我就踏上了实习的生活,在我的内心我是把她当做我的正式工作的。



到了公司接待我的是一位干的最久的同事,为人乐观,开朗,而且在8月19日和女朋友领了结婚证书,恭喜他们了,哈哈。



进入公司我第一天他给了我一个开发板,APDK6410,据说这家公司已经倒闭,没过一会又来了一位在美国读研究生的学生,和我同一天到公司实习,不过他没干多久就因为有事,不知所踪。我一天就是上网查查APDK6410的相关资料,了解下整体环境。



住宿是和同事(就是介绍我来公司的那位)合租的三室一厅,空旷了点,感觉还不错,每天的生活有点单调了,吃饭工作,游戏娱乐,晚饭啥的都是一样地方,没有什么其他的娱乐方式,只有周末可以出去,上班下班比较自由,不过没有特别出彩的人,基本都一起走,除非有事。生活上就是这样的每天如此,不同的是自己的想法,看看自己想做什么了,有上进心就会有学习的动力,否则就是“安度日子”。



在公司每个人都有自己的任务,公司人手不多,所以不要指望有谁来指点你什么,都要靠自己完成,独立在这里体现的淋漓尽致。负责界面,负责底层,两个人就成了一个小组,其他的项目都有专人负责。我就是做一个拓展,主要完成视频监控。



工作是做什么不重要,重要的是我学到了什么。做到了哪些?

在公司的第三天,技术老总(外号教授)来了,不问你在学校拿过什么奖,获得过什么证书,只问你做过什么,你会做什么,这两个月你能为我们做什么,跟教授交流感觉很有压力,几句话就能把你的经历榨干,我做过什么呢?嵌入式设计大赛:负责短信收发与自定义协议,平台搭建移植。其他的什么音乐播放器,定时关机程序,QQ聊天室,个人事务管理系统,感觉没什么技术含量,真的,这样我就真的不知道自己做过什么了。现在想想可以说得出口的有:基于ZigBee网络的远程监控系统,基于嵌入式Web的视频监控系统。至于其他的都是练练手的,真的说不出口。毕竟我是找的嵌入式,其他的不相关。



每天重复着一件事,查资料,验证程序,这样大概有三个星期,我感觉对Video for Linux比较熟悉了,开始动手重写 read方式获取视频数据,映射方式获取视频数据,这些都是v4l1做的。本身的ov511摄像头测试程序在开发板上运行速度还算可以,通过nfs挂载到我宿主机上,通过web(我前几篇博文有介绍)查看速度太不给力,估计每秒有5帧左右根本不能实际应用。在网上认识个青岛的研究生也是做的这个嵌入式web视频监控,他用的是zc301,据说效果不错。和我以前猜测的摄像头不支持硬件压缩可能有关吧。



当时,摄像头没有别的可选,主要是ov511驱动已经配给了,linux内核提供可以正常驱动,我想试试现在的v4l2来做我们的项目,用我的摄像头测试效果不错,可是v4l2的驱动怎么移植?我从来没有接触过,一个挑战。到官网上看2006年以后那个官网就停止更新了。不过看了好几天没有进展,也接近我的实习结束,公司的这个摄像头视频监控做的只能说是差强人意,回校后要自卖摄像头来在TQ2440上做。



在实习期间,还来了一位教授的学生,在附近的高校,跟着教授做东西,已经做过几个项目了(单片机)。他主要是做单片机的,对硬件比较熟悉也喜欢arm,最重要的是他和我想的一样最后想做linux设备驱动开发,真实臭味相投啊。我就跟他学习怎么看数据手册,顺便学习下单片机,为了方便我自己网购了个单片机,做了些小的实验,流水灯,跑马灯,秒表,独立按键,串口与PC通信,用的是keil v3。ads上开发程序只看了看光盘提供的源码,知道启动初始化之类的,至于写就没有了。我不想转移重点,LDD3还在看,unix高级环境编程也在重温。图书馆里的书不敢说看了多少,不过关于linux的每一本我都翻过,基本业余时间都在图书管翻书,但是没有太深入,眼界算是放宽了。在公司结束一天的工作后,开始的时候我会看看视频,和同学聊聊天,后来就休息一两个钟头就回自己房间看看书,或是写写程序,(我房间没有网,网线不够长,都是到同事房间蹭的,嘿嘿
),挺喜欢这种调节方式,现在也习惯了睡前看看书。早晨外面有建楼房的施工,很吵,醒来没事也就看看书,就当是解闷,不过我最先看的是手机上的新浪体育西甲英超的比赛,爱好嘛。那两个月我看到了蒂亚戈的崛起,也看到巴萨捧得的几个奖杯。





总结

总结两个月的学习生活,感谢几位同事对我的照顾,感谢教授给我的实习机会,我学会了的是流程,步骤,具体技术不是我所期望在公司一两天学到,不过也收获颇丰。主要是学习方法,好的方法总是能让人很快学习到自己想要的知识(从接我来的那个同事身上也学到了很多)。和同事探讨了学习一门新的语言比如Qt,学过了信号槽机制,界面设计的简单搭建,线程,数据库操作,网络通信,事件处理机制(简单设计),还有什么要学习的吗?怎么更加深入的学习呢?我跟他的想法相似,就是这些要是都熟悉的话,看看他们是怎么和操作系统交互的,怎起到这个作用的(欢迎大家发表意见,拍砖)。



我总结了下:画板程序可以作为事件处理的入门,QQ聊天室可以做为网络通信的入门(先UDP,在TCP),数据库的话就做个成绩管理系统。多线程我还没想到哪个好例子。。。



回校了,继续好的生活方式,好的学习方法,继续准备(一直感觉自己没有准备好),继续学习,抓住机会。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: