一步一步教你移植uIP_第1页
一步一步教你移植uIP_第2页
一步一步教你移植uIP_第3页
一步一步教你移植uIP_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、步一步教你移植 UIP0.9到8051+RTL8019AS追风发表于2010-11-11 22:21 |只看该作者|倒序浏览|打印1. google 一下 uip,点击进入主页 http:/www.sics.se/adam/uip/index.php/Main Page当前最新的uIP版本是1.0,这个版本比较复杂,所以还是移植历史版本吧.打开 http:/www.sics.se/adam/old-uip/ 下载 0.9 版:http:/www.sics.se/adam/download/?f=uip-0.9.tar.gz2. 打开Keil新建项目uIP0.9.uv2,设置项目属性.2 L(

2、E/ A* h( C# e0 6 mmemory_model 设置为large模式,这样默认的存储方式是xdata 6 |0v5 h. m0 Q5V+ s:o因为UIP0.9编译后占用20Krom,所以必须选一个32K(>20K)的rom的单片机,+u*m8 p& t/ z( o:f比如 Device 可设置为 SST89x58 或者 SST89x516xx,解压缩官方下载的uIP0.9压缩包,添加文件至项目,)|4 M1 V0 C5 a' w; b! F3 ?- , v' N% j5 u需添加至项目的文件有:uipuip.c, uip.cuip.h, uip.c

3、uip_arch.h,)y! x2 Q: E. A- a% p! l5 'uip.cuip_arp.c,uip.cuip_arp.h,I; I- G7 d: t0 & A8 dunixmain.c, unixuip_arch.c, unixuipopt.h,4 ': P* G, w$ m; S/ D, j* y所有文件 # j! B+ 7 |1 q1 c$ 5 ?3. 因为data是系统关键字,所以标识符data => dat6 ' C6 J& |4 4 M; Y2 i) 以下文件需要改动: fs.h, fsdata.h,httpd.c4. 为RT

4、L8019AS编写驱动程序(具体如何操作寄存器老古的网站有详细的教程),2 r- F3 k5 S, d- U. V e# M内容在压缩包中的 RTL8019AS.c, RTL8019AS.h需要更改main.h中的如下地方:include "tapdev.h" => #include "rtl8019as.h"7 '- j$ i: d Y8 : A/ tapdev_init() -> rtl8019as_init()0 Q4 p9 l$ a2 H8 X wtapdev_send() -> rtl8019as_send()5 F(

5、 X8 fl * b% Ntapdev_read() -> rtl8019as_read()5. fsdata.c 首行添加 #include "fsdata.h"关键字替换:6 h# K, ! S7 * w5 h/ K$ L! C& u# o. Fstatic const char -> const char codeconst struct fsdata_file -> const struct fsdata_file code7 w4 : h* c$ Q6 I( C4 Y* fsdata.h文件末尾添加:)M8 x6 I' d- X2

6、 a" T; W#define FS_ROOT file_tcp_header_html ' 4 mi V' b$ w' g6 x;b+ o5 G: 2 s) w+ l#define FS_NUMFILES 14 ) v4 l D5 l9 l* h6 r. f(A2 V* 9 / m5 l5 U3 6 - a% x2 Y$ V; Uconst char code data_cgi_files;const char code data_cgi_stats;7 D/ M. D7 d' a0 H' cconst char code data_cgi_

7、tcp;const char code data_img_bg_png;# D# a: f. P1 _5 ( x+ w* L0 N/ M, V. o/e" O/ O- hconst char code data_about_html;' A8 x& b6 w2 V+ t7 D( D% W7 O5 d;q* z x0 e9 |$ F!const char code data_control_html;const char code data_404_html; ( s/w; A2 g. s+ V' s( k0 j2 F8 a3 T; Z: Iconst char

8、 code data_files_footer_plain;2 f& i/ S& S4 p5 g# cconst char code data_files_header_html;const char code data_index_html;.$ ''7 '( H# u: 'const char code data_stats_footer_plain;const char code data_stats_header_html;"b' d& w' p% M. k/ M( const char code dat

9、a_tcp_footer_plain;const char code data_tcp_header_html;4 I/ 订 U0 w4 P ! M: J* B'R6 G- x) |: W/j" Zconst struct fsdata_file code file_cgi_files; $ r U8 D- 3 m! W$ A- E: S7 S4 _0 mconst struct fsdata_file code file_cgi_stats; + ?7 f/ fi c# li f1 p; m/ h* H) m4 nconst struct fsdata_file code

10、file_cgi_tcp; 0 _, E3 b8 W4 w- p-v: G$ W) H) R: Z% i: Vconst struct fsdata_file code file_img_bg_png; + I# o* 7 l+ q# |$ ( P7 a+ J$ s/ d2 + E2 T' Uconst struct fsdata_file code file_about_html; 9 u- E( d# F0 h, X# w) k! p' Z o, M/ A Iconst struct fsdata_file code file_control_html;const stru

11、ct fsdata_file code file_404_html; , r& n' V3 p5 e" Y5 m3 M7 '% I% z8 b9 y6 t8 / Dconst struct fsdata_file code file_files_footer_plain; 4 b' y b. (4 L5 gconst struct fsdata_file code file_files_header_html; 3 V: |4 v- r5 G' q; j8 ' f/ f' J5 w m+ W W2 l) T Y* (&

12、_3 B/ q* tconst struct fsdata_file code file_index_html; / D2 b2 T4 y 2 s iconst struct fsdata_file code file_stats_footer_plain; + g9 '0 r8 t# e$ z'! ?1 y! A. 6 X Lconst struct fsdata_file code file_stats_header_html; 3 ?& p; i8 L' '4 z0 v)b' I5 r' K' z' Econst s

13、truct fsdata_file code file_tcp_footer_plain;0 5 L+ B8 E3 6 U0 Hconst struct fsdata_file code file_tcp_header_html;6. fs.c 第 55 行删除:#include "fsdata.c" 3 Y; » r3 f- _, D6 0 j" j7. uipopt.h1 l+ G, (, _) G( i. n181 行:#define UIP_FIXEDETHADDR 0 -> 17 -1 ?# f8 v( N2 R7 ?/ _) J; w(

14、 x' V5 o6 L& E299 行:#define UIP_ACTIVE_OPEN 1 ->0& P4 i. h w% i' l-J0 X2 j+ a4 D& C, K+ D5 k$ I497 行:#define BYTE_ORDERLITTLE_ENDIAN -> BIG_ENDIAN280 行:#define UIP_UDP_APPCALLudp_appcall -> httpd_appcall # k) k4 b# |!文件末尾添加:5 c. W9 b4 L8 P! X+ ?, R+ z- q, (#ifndef NULL3 C4 u( 5 x- P#define NULL (void *)0' w+ a& a( h& r# d,_+ Z7 ()4 X$ Q- X( U6 G#endif /* NULL */! A4 l% ?" z& d% c+ d0 z8. httpd.c删除以下内容:+ g1 H% O2 t3 T. G- |8 o/ extern const struct fsdata_file file_index_html;extern const struct fsdata_file file_404_html; 7 q' h

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论