原创 uIP移植要点(翻译)(原创)

2008-11-10 15:07 5614 9 10 分类: 通信

  1. Read the documentation provided above.
  2. Create a new directory for your port under the uip-1.0/ directory (choose a name that gives a short description of the CPU architecture and/or C compiler used).


  3. Copy the uip_arch.c file from the unix/ subdirectory into the new directory. Is contains a generic C implementations of the checksum algorithm as well as the 32-bit addition function.
  4. Copy the uipopt.h file from the unix/ subdirectory.
  5. Edit the uipopt.h file to suit your project (the file should be self-explanatory).
  6. Write a device driver for your particular hardware. (This is probably the hardest part.) Look in unix/tapdev.c and uip/slipdev.c for examples of how a device driver can look.
  7. Write the main control loop so that the uIP functions are called when they should be. Look in the unix/main.c for an example of how a main control loop can look. The unix/main.c main loop also shows how ARP is used.
  8. Write a makefile and compile the code. Be sure to include the ../uip/uip.c file in your project (and the .c files in your subdirectory, of course). If you are using the web server application, also include the files ../apps/httpd/httpd.c ../apps/httpd/cgi.c ../apps/httpd/fs.c. For ARP support, also include the file ../uip/uip_arp.c.
  9. Find and correct all bugs.


1.阅读以上提供的文档。
2.在uip-1.0/文件夹下为你的移植对象创建一个新的文件夹(选择一个能简要描述所用的CPU架构和/或C编译器的名字)。
3.从unix/子目录复制uip_arch.c文件到新文件夹里,它包含校验运算的一般C实现和32位加法函数。
4.从unix/子目录复制uipopt.h文件。
5.编辑uipopt.h以适合你的工程(文件必须足够清楚)。
6.为你的硬件写一个驱动程序。(这可能是最困难的部分)看看示例unix/tapdev.c以及uip/slipdev.c。
7.写一个主控制循环以便于uIP函数能在应用时调用。看看示例unix/main.c,它还展示了ARP的使用.
8.写一个makefile并编译代码,工程里面一定要包含../uip/uip.c文件(当然还有你子目录中的.c文件)。如果你使用WEB服务器应用,还要包含../apps/httpd/httpd.c ../apps/httpd/cgi.c ../apps/httpd/fs.c。为了支持ARP还要包含../uip/uip_arp.c。
9.查找和修正BUG。


 

PARTNER CONTENT

文章评论1条评论)

登录后参与讨论

用户377235 2013-3-24 12:15

谈得不错

用户577024 2012-3-29 10:16

不喜欢
相关推荐阅读
lbbook 2016-03-02 09:10
新一代音频模数转换器/数模转换器(ADC/DAC)测试
在2015年时,对于音频储存、音频传输以及音频流的应用技术尚未有太大的争议,这些均为数字音频。除了在精品或发烧友店出售少见的盘式磁带,其余均为数字音频。使用得当的话,数字音频十分灵活耐用且音频品质高。...
lbbook 2008-11-24 15:56
今天看到前人已有翻译的uIP移植文档,如下
快速向导: 移植uIP到其它的平台<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />实...
lbbook 2008-11-24 15:56
C/C++语言void及void指针深层探索(转)
1.概述  许多初学者对C/C++语言中的void及void指针类型不甚理解,因此在使用上出现了一些错误。本文将对void关键字的深刻含义进行解说,并详述void及void指针类型的使用方法与技巧。 ...
EE直播间
更多
我要评论
1
9
关闭 站长推荐上一条 /3 下一条