移植Microchip的TCPIP协议栈到STM32

 2 E币 
成为会员,免费下载资料
文件大小:1.3 MB 上传者:digitalfans 时间:2013-11-22 22:35:19 下载量:22
最近移植了一套Microchip的协议栈到STM32+ENC28J60的系统上。
Microchip为自己的PIC系列单片机和ENC28J60等几款以太网芯片做了一个协议栈。这个协议栈跟uip,lwip之类的协议栈比起来,有几个优势:
1,特别省内存。协议栈充分利用了Microchip以太网芯片片内的RAM来存储各类数据,所以对CPU RAM消耗极小。ENC28J60可以提供4K RAM,而ENC624J600可以提供16K RAM。一套带Web server和两三个 Socket的程序,协议栈消耗的CPU RAM不到500字节,而且并不是以减小MSS为代价,也不像uip那样没有socket缓冲。
2,应用层协议丰富。HTTP,FTP,TFTP,TELNET,SNMP,DDNS,SNTP,SMTP等各类应用层协议都直接在协议栈内支持。其中HTTP还可支持SSL,SNMP可以支持V3,这在裸奔的系统里几乎是没有别的协议栈可以支持的。
3,配置灵活,可以根据需要灵活配置所需功能,简单修改一个config文件即可,而且提供图形化配置工具
4,协议栈不使用动态内存分配,不用担心内存碎片问题。
5,HTTP Server支持类似ASP的方式处理网页中的动态变量,也提供类似CGI的方式。完全支持GET.POST等各种文件操作,支持文件上传,支持web认证,支持SSL。而且支持多种文件方式提供网页文件,可以保存在CPU 代码空间,可以外挂在SPI Flash/EEPROM,也可以使用SD,U盘之类的通用文件系统。使用CPU 代码空间或EEPROM的时候,厂家提供了工具转换网页为C语言代码或EEPROM的镜像文件。工具支持网页源代码压缩,html文件的压缩率可以达到60-70%,可大大节省空间。转换的同时会自动将网页里的动态变量转换成函数框架,用户只需要在这些函数框架内添加处理代码即可。

当然,这个协议栈也有缺点,就是性能较差。这和第一个优点有关:因为很多变量都存在以太网芯片RAM里,而以太网芯片与CPU的接口是SPI,这就大大降低了性能。实测STM32F103+ENC28J60的TCP传输速度,大约每秒100K字节/秒左右,只有lwip的1/3左右,不过这个速度对于大部分网络应用来说基本还是足够了。

部分应用层协议尚未完全移植完成,但是所需的文件都已经在工程里,有兴趣的可以自己尝试。


下载链接:[url]http://www.microchip.com/stellen[/url] ... p;dDocName=en547784
展开
折叠
747
评论
共 0 个
内容存在敏感词
    易百纳技术社区暂无数据
相关资料
关于作者
易百纳技术社区
digitalfans
贡献资料 7
易百纳技术社区 我上传的资料
登录查看
我赚取的积分
登录查看
我赚取的收益
登录查看
上传资料 赚取积分兑换E币
易百纳技术社区
删除原因
广告/SPAM
恶意灌水
违规内容
文不对题
重复发帖
置顶时间设置
结束时间
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

审核成功

发布时间设置
发布时间:
是否关联周任务-资料模块

审核失败

失败原因
备注
易百纳技术社区