OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 6021|回复: 11

【老规矩】FuIP v2.3更新咯,单片机专用联网TCP/IP协议栈,新增自动获取IP

[复制链接]

62

主题

275

帖子

4

精华

金牌会员

Rank: 6Rank: 6

积分
1155
金钱
1155
注册时间
2012-3-4
在线时间
80 小时
发表于 2015-1-13 14:03:40 | 显示全部楼层 |阅读模式
发了很多贴了,分享了很多源码,这就是我们的开放项目,人人都可以连接互联网,实现物联控制。。。。例程采用51单片机,ENC28J60哦,其他自行移植so easy
如果下载需要积分,原贴这里:
http://fuhome.net/bbs/forum.php?mod=viewthread&tid=1

哈哈,如果要关注我们的开发进度,演示,好玩的,例子可以关注微信公众号:fu_home
(很多人已经知道,目前可以通过网页,手机android 轻松控制单片机拉,内外网均支持,无论你家有没有外网IP,N级路由器下照样可以哦)


版本介绍下面:
源码附件FuIPv2.3 beta1 :
硬件参考:主要是ENC28J60口跟单片机,其他无所谓自行决定

抓包图,路由器DHCP列表,PING通图











/********************************************************************/
本程序仅供学习参考,未经作者允许,不得用于任何商业用途                           
FuIP专为单片机而定制的TCP/IP协议栈,适用于任何8,16,32位单片机
技术论坛:www.fuhome.net/bbs/
FuIP可用于,客户端,服务端,亦可接入fuhome.net 平台进行远程控制  
版本:v2.3 2015年1月12日                                                                               
龙剑奋斗                                                                                                                        
定期更新,敬请关注——开放,交流,深入,进步                                             
Copyright fuhome.net 未来之家 实验室,让科技融入生活                                
/********************************************************************/
键人是从51学习过来的,充分考虑了8位 16位 32位单片机平台特性,采用最易移植写法,因此特别适合任何有单片机基础的网友轻松控制家用电器等,其他扩展fuhome.net 平台会逐步完善。


V1.2版本支持与特性:
1,支持ARP请求、应答(获取目的IP的MAC)
2,支持ICMP_Ping请求,应答(ping命令)
3,支持TCP主动连接,断开,被动连接,断开,数据发送
4,支持UDP发送,接收数据

V1.3 改写了命令识别写法,使用更加简单,效率提高了。(网友yht7891984提出 )

v2.0 更新提示
1、由于单片机RAM完全够用,为了用来方便接入互联网,接收缓冲不再与发送缓冲公用
2、修复TCP连接过程的一些问题,更加兼容不同主机的数据格式。
3、增加了访问外网主机的功能,完善了TCP连接协议,这一点是重大改变。
4、命令识别,发送采用特殊函数,提升了执行效率。
(本demo直接下载到单片机,默认访问百度首页,可以从串口看到数据。

v2.1 更新日志
1、修复了ARP回应bug(网友林海雪原提出)
2、对于TCP/UDP数据不再限制于偶数长度了,奇数偶数均可。

v2.2 更新日志
1、修复了TCP发送检验bug,数据传输bug
2、结合实用,及网友建议,特此做了调整。TCP仅支持被动连接,若需要单片机主动连接(见2.1版本可以访问百度网页)
3、增加了web服务功能,可以实现用网页发送消息给单片机
4、UDP仍然支持主动,被动模式。
5、合并发送接收缓冲区,统一DATA[ ]数组。默认长度为255字节。

v2.3 更新日志(20150112)
1、增加DHCP协议,可以自动获取IP,以补充固定IP的不足之处(如不需要请用 v2.2版本其采用固定IP,视个人情况而定)。
2、改善数据报长度只能在255以内的限制,可以扩大到TCP/IP规定的最大数据报。

PS.利用fuhome.net网站平台,互联网(电脑,手机)控制单片机,详情fuhome.net/bbs/演示视频教程)
灰常简单,目前实现了远程控制(手机APP和web网页控制,并且带返回信息),传感器数据上传显示,众多爱好者一起在努力开发更多好玩的有趣的扩展


2.2及以版本下IP采用固定IP:
本机IP:192.168.1.150
默认网关是家庭常用的:192.168.1.1
如果家里的路由器网关是其他如:192.168.0.1,
请自行修改网关IP为192.168.0.1、本机IP为192.168.0.150

2.3版本采用自动获取IP


内存分配机制:

以太网首部: EN_Head[14]
IP首部:        IP_Head[20]
UDP伪首部: UDP_False[12]
UDP首部:   UDP_Head[8]
TCP伪首部: TCP_False[12]
TCP首部:   TCP_Head[20]
ARP数据:   ARP_Data[28]
ICMP数据:  ICMP[40]

发送数据缓冲,DATA数据:  DATA[255](键人默认长度255,可改,不同版本不同,v2.3为了适应需要改善了数据报长度的限制)
接收包缓冲同上公用(包含ETHERNET头,IP头,TCP/UDP首部)
DATA[255](默认长度255,可改,但是为了接收,长度至少TCP>=54,UDP>=42)
(本demo占用RAM大约500Byte,还是要看缓冲你的设定值)


231124t500nitxinazw23i.png

FuIP2.3 beta1.rar

406.23 KB, 下载次数: 407

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2015-1-13 17:25:00 | 显示全部楼层
不错,越来越完善了!楼主牛逼。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

70

主题

6763

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
13129
金钱
13129
注册时间
2012-11-26
在线时间
3814 小时
发表于 2015-1-13 17:27:09 | 显示全部楼层
楼主碉堡了  mark下
学无止境
回复 支持 反对

使用道具 举报

28

主题

1489

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1656
金钱
1656
注册时间
2013-7-24
在线时间
1 小时
发表于 2015-1-13 17:58:30 | 显示全部楼层
支持一下。。
于20150522停用该账号:http://www.microstar.club
回复 支持 反对

使用道具 举报

1

主题

108

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
352
金钱
352
注册时间
2012-11-8
在线时间
44 小时
发表于 2015-1-13 19:02:52 | 显示全部楼层
谢谢分享!顶一个!
回复 支持 反对

使用道具 举报

3

主题

138

帖子

0

精华

初级会员

Rank: 2

积分
195
金钱
195
注册时间
2014-5-12
在线时间
4 小时
发表于 2015-1-13 22:37:39 | 显示全部楼层
不是我等屌丝玩的会的,牛!
回复 支持 反对

使用道具 举报

62

主题

275

帖子

4

精华

金牌会员

Rank: 6Rank: 6

积分
1155
金钱
1155
注册时间
2012-3-4
在线时间
80 小时
 楼主| 发表于 2015-1-14 08:36:09 | 显示全部楼层
回复【6楼】伤剑使者:
---------------------------------
只要会单片机,就会玩
回复 支持 反对

使用道具 举报

3

主题

138

帖子

0

精华

初级会员

Rank: 2

积分
195
金钱
195
注册时间
2014-5-12
在线时间
4 小时
发表于 2015-1-14 21:16:29 | 显示全部楼层
回复【7楼】l1234564555:
---------------------------------
网络的部分感觉还是略复杂啊。。。
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

新手入门

积分
24
金钱
24
注册时间
2015-4-9
在线时间
0 小时
发表于 2015-4-9 16:24:56 | 显示全部楼层
可以发DISCOVER包,但是收不到OFFER时,UDP包始终不能识别。if(DATA[23]==0x11) { } 括号内的代码始终没执行,是怎么回事呢?
回复 支持 反对

使用道具 举报

62

主题

275

帖子

4

精华

金牌会员

Rank: 6Rank: 6

积分
1155
金钱
1155
注册时间
2012-3-4
在线时间
80 小时
 楼主| 发表于 2015-4-9 17:04:10 | 显示全部楼层
回复【9楼】cdjy123:
---------------------------------没有问题,然后现在修改了bug2.3正式版里面修复了,,,,但是你下载的这个版本这里面没问题啊,我能正常获取IP;路由器里面都看得见
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

新手入门

积分
24
金钱
24
注册时间
2015-4-9
在线时间
0 小时
发表于 2015-4-20 20:49:55 | 显示全部楼层
什么时候再追加点DNS的学习一下就好了
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

新手入门

积分
24
金钱
24
注册时间
2015-4-9
在线时间
0 小时
发表于 2015-4-20 20:52:03 | 显示全部楼层
8楼提到的问题解决了,是自己的问题
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-23 12:05

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表