呵呵,多谢各位的评论,还希望各位多多指点一下啊,继续顶一顶啊。
其实这个毕业设计,当初定的方案跟现在做出来根本就不同,我就是在一步一步学习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技术与各种自动控制技术的结合,我相信一定是一个很好的发展方向。
用户376354 2007-7-23 15:10
信息家電在國外已經實現了,國內還是個開始.努力吧,信息家電是將人性化的電子產品更為人性化.它擁有一個非常龐大的市場~就等你們去開發