这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » A web server on the GBA? But why?!

共3条 1/1 1 跳转至

A web server on the GBA? But why?!

菜鸟
2002-09-20 02:13:20     打赏
看来GBA确实是个好东西。



关键词: server    

菜鸟
2002-09-20 18:03:00     打赏
2楼
http://www.fivemouse.com/gba/

菜鸟
2002-09-26 19:08:00     打赏
3楼
A web server on the GBA? But why?! Because I can? :-) But that wouldn't do as justification for my final project, so it's really an investigation into the possibility of including very small web servers in every day equipment in order to monitor it. A good example would be a burglar alarm. You could easily check that it was still working and that everything was ok in your house while you were on holiday if the alarm was connected to the internet. Fair enough, but why the long name? Well, GBA Web Server wouldn't sound too professional and could lead people to questioning the validity of my project! Portable never used to be in the name, what's changed? After spending a lot of time thinking about it, I want to develop the web server for the Dreamcast as well anyway. The portable in the name simply means that the source code (other than the kernel) should recompile for other systems without needing any major changes. Basically, the word portable gives me a get out clause so that I can target the web server for any system (hey, I'd love to do an Xbox version) and still fulfill my original aim. Where will the web servers live when you complete it? This I'm not 100% sure of. It depends on where my ISP finds space for it (not that it requires much!). It'll either be in Manchester, Bradford or Harrogate. However, these details are of little interest to yourself! All you need to know is that the URL will be http://gba.fivemouse.com and http://dreamcast.fivemouse.com when the server goes live. So what will be involved in making this project a reality? Lots of things, but here's a list of the most important features (in no particular order). Expect this list to change as I add more details. Very small Multi-tasking kernel (no memory management required) Com port driver Display and input driver PPP protocol IP protocol TCP protocol Method to connect the GBA to a server Please see the project plan and the to do list for a more complete list. How will you be developing the web server? The first items that I will develop will be the protocols. Because these are platform independent, I will be able to develop them under Windows using VC++. This is because I can use the PC com port for I/O and easily debug the modules as I work on them. When I have got these working and have tested them fully, I will simply run the source files through GCC targeted at the ARM processor. As for the kernel and device drivers, hopefully, by the time I come round to developing these, KOS might have full support for IRQs on the GBA. I will then use KOS to provide a kernel and drivers. If KOS doesn't supply the required level of support by the time that I require it, I will then have to develop my own micro-kernel and drivers. (Note, even though KOS does have some TCP/IP support, I wont be using it as I aim to write my own to serve a particular need.) What will you do if you can't get the web server to work on the GBA? The other advantage of having an ambiguous project name is that it doesn't specify the target system. :-) If getting the web server on the GBA is beyond my reach, I will simply move development over to the Dreamcast. After all, it could be argued that the Dreamcast is a low memory embedded system. I aim to have a vast majority of the project written in portable C so that it can easily be moved from one platform to another. The only parts that wont be portable will be the micro-kernel and the device drivers. To save myself time, I will develop these last. So where did you get the idea for this from? I've been thinking about it for quite a while now. The first time I thought of putting a web server on a games console was over a year ago, around the time the Xbox was announced. But the original idea goes back further than that! About two years ago, I stumbled across this web site and thought to myself, what a great idea, I've love to build a tiny web server one day. Of course, a GBA web server will be quite a bit bigger, but it's still quite dinky! That all sounds really cool! Can I help? I'm afraid not. As it's my final project, I have to work on it alone. However, I do plan to release all my sources as I'm working on it so you can follow it that way if you wish. Right, now that's all cleared up, what have you got to show us? Erm, not much really. I have one last major document to put up before I start development work, and that is an explanation of how a web server works. If you want to keep up to date with my progress, read my development diary. My Documents: Acknowledgments (04-04-2002) Time Table (08-10-2001) This is just a copy of my university time table for the year. It should give you an idea of how much time I have to work on the project. Project Proposal v1 (08-10-2001) System Layout (12-10-2001) Project Planning (22-10-2001) To Do List (06-04-2002) This document should be updated quite frequently. Project Status Snapshot (06-04-2002) Project Proposal v2 (17-10-2001) Kernel API documentation (02-11-2001) mkgbafs and libgbafs (06-04-2002) Fivemouse General Public License (08-01-2002) My Code: AdiOS Release 1 (28-10-2001) AdiOS Release 2 (02-11-2001) PPP Driver (02-11-2001) GBA Text Routines (18-11-2001) GBA UART Demo (18-11-2001) Reference Documents: Using PICmicro MCUs to Connect to the Internet via PPP This is a very good document. Well worth a read for anyone thinking of doing something similar. RFC 791 (Internet Protocol) RFC 792 (Internet Control Message Protocol) RFC 793 (Transmission Control Protocol) RFC 1122 (Requirements for Internet Hosts -- Communication Layers) RFC 1661 (Point-to-Point Protocol) RFC 1071 (Computing the Internet Checksum) Other Links of Interest Computer Science Specialist Project KOS Devkit Advance If you want to be notified of major changes to the site, subscribe to the mailing list. I seem to be having problems with Hot Mail requests, so if you don't get an email to confirm your request to join, email me and I will add you manually.

共3条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]