原创 看了评论,我说说我的看法,也说说我做毕业设计的经历。

2007-7-21 23:56 4837 9 9 分类: MCU/ 嵌入式

呵呵,多谢各位的评论,还希望各位多多指点一下啊,继续顶一顶啊。


其实这个毕业设计,当初定的方案跟现在做出来根本就不同,我就是在一步一步学习ARM+LINUX中,不断更改方案的。直到毕业答辩前的一个星期,我才初步定下了最终设计方案。现在,请大家看看我做毕业设计的经历吧。


我是刚开始学习ARM的,当初导师给毕业设计课题跟方案的时候,其实是要我用单片机做的,可我不愿意啊,我想学习ARM啊。于是我向导师表明这个意思,老师就说,那好吧,你就用ARM去做,加上S3C44B0已经有以太网控制器RTL8019,让我把测量出来的温度通过网卡,再接一个无线路由器实现数据无线传输,然后用C++BUILDER编一个界面。呵呵,看到这里,你们一定会笑死了吧,说这是啥设计啊。不过,毕竟这是一个毕业设计,毕竟这不是商业化的产品,毕竟我还是要毕业,于是我就依了老师。


今年3月份,我开始做这个毕业设计,一开始就是熟悉ARM的调试和开发步骤,熟悉ADS1.2,SDT啊,熟悉S3C44B0的datasheet啊,写些小程序啊,查找资料啊。


到了4月份,我就开始编写DS18B20在S3C44B0上的驱动(其实是跑裸机的,详情请见我blog上的日志),这个月也熟悉了uclinux的内核编译,不过老是出错,出错了我也不知道哪里出错了,只知道error,呵呵,不过现在不会了。


好了,5.1过去了,我发现我的毕业设计做的还不是怎样啊,就只是实现了测温,还要网络传输啊,还有编写界面啊,我开始急了,网络部分我怎么也搞不出来,到6月初可要答辩了啊。算了,先不理它了,过几天再研究吧。在这里我说一下,我喜欢把搞了几天的也弄不懂的东西放几天才去弄,通常过了几天我再去弄,通常就比较容易弄懂了。于是先开始研究uclinux吧,因为搞ARM,不搞点操作系统的话,就太不象话了吧,一个朋友说的,我受了他影响,当然我也不反对拿ARM当超级单片机的。


对uclinux的研究,我先是熟悉了uclinux的内核编译,裁减,添加用户程序啊,等等。之后看了玛玛金柯的菜鸟的ARM笔记中的关于uclinux下编写设备驱动程序,我就尝试了编写一个led的设备驱动,哈哈,经过努力,成功了。我开始对uclinux着迷了,就想试着编写DS18B20在uclinux下的设备驱动,也经过不少的努力,我也编写出来了,这期间有两个星期是最难熬啊,为什么呢,那么努力,但是出不了成果是很伤士气的啊。后来在两位好朋友的指点下,我知道了问题所在,原来是我在DS18B20转换时候,我设置的是12bit的分辨率,唉,根据datasheet,应该需要延时750ms的,我才给了10ms,唉,没有认真研究datasheet下场,活该。


好了,接下来该是研究socket了吧,就是实现数据通过网络传输。好了,在研究中,我发现了一个好东西,那就是uclinux下的web服务器--boa,也是因为boa,实现了我做信息家电的梦想吧。于是我就开始研究boa,发现配置好boa后,并且可通过编写CGI程序来实现:在IE浏览器中输入IP地址,就可以进入监控主页,然后在网页上进行操作,就可以在网页上看到反馈的信息。于是我又认真研究了boa,html语言。通过对这些所做的东西进行整合,才有了我这个毕业设计的皱形。


njsyq网友说的对,我这个界面太简单了,其实为了在答辩时候可以争取老师好感,我才编写这样的界面,也就是你们现在所看到的,是该修改一下界面。最后做出来,刚好过三天就要答辩了。


搞了boa,倒是把socket给丢了,不过我最终也搞了一下。编写上位机界面是来不及了,因为我对C++BUILDEER还不熟悉,就拿它来编过串口界面跟一些简单的小界面。最后我是找了个网络调试助手来调试。


不过,我这个设计只是实现局域网控制,还不能在广域网实现,好象需要注册域名、申请空间啊,这些我不懂,今后要在这方面进行努力研究。你想想啊要是用个手机上网,通过web技术实现对家里的电器设备进行控制,你说那是多么惬意啊。


后记:


1.看了各位的评论,我认真上网查了一下,才知道原来真的是可以用单片机做出来的,还请各位交流一下。


2.在这里我说说我的职业目标是嵌入式,而其中我最想做就是信息家电,而web技术与各种自动控制技术的结合,我相信一定是一个很好的发展方向。



 

文章评论1条评论)

登录后参与讨论

用户376354 2007-7-23 15:10

信息家電在國外已經實現了,國內還是個開始.努力吧,信息家電是將人性化的電子產品更為人性化.它擁有一個非常龐大的市場~就等你們去開發

相关推荐阅读
用户1177633 2008-07-09 23:35
PIC18F系列读写FLASH的函数
网上搜了一下,关于PIC18F系列读写FLASH的函数,有很多都是有错误的或者有BUG的,集中在表指针的操作上. 因此走了些弯路,现在发一个我自己写的读写FLASH的函数分享给大家,已测试过,支持绝大...
用户1177633 2008-06-12 14:29
如何把两个*.hex合并成一个*.hex?在写IAP/Bootloader很有用哦
        前几天,一网友在某论坛上问我关于PIC Bootloader的问题,他问如何创建两个工程分别编写引导程序和用户程序,分别将两个工程编译成两个.hex文件,然后手工合为一个.hex文件,...
用户1177633 2008-06-04 23:39
Protel技巧之二:巧为元器件进行标注
        今天发现自己的博客中11篇博文,居然有5篇博客精华,质量很高啊,非常感谢EDNCHINA,非常开心,想起自己好久没有更新过BLOG了,想起以前设计原理图时候使用过的一个技巧,现发出来分...
用户1177633 2008-04-08 22:05
如何使用PIC C30中的外设库函数?
        刚开始学dsPIC33,发现MicroChip做的C30编译器还不错,里边有常用的外设库(Peripheral Libraries),写程序也不用查datasheet就可以很快配置好寄...
用户1177633 2008-04-02 21:47
Protel技巧之一:设计原理图模块化
         设计大系统的原理图的时候,通常元器件很多,而且连线错综复杂,很容易搞错,看起来也不舒服,如果大家设计的时候,把各个模块系统化,对不同功能的部分进行分类,然后用不同颜色的虚线框围起来,...
用户1177633 2007-09-14 17:50
真正的变形金刚
http://www.56.com/n_v165_/c17_/23_/18_/yuan8088_/zhajm_1184957140_349_/39000_/0_/15707484.swf简直是精品艺术...
我要评论
1
9
关闭 站长推荐上一条 /2 下一条