3921
- 收藏
- 点赞
- 分享
- 举报
移植Microchip的TCPIP协议栈到STM32
最近移植了一套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
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

下载
我来回答
回答1个
时间排序
认可量排序
认可0
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币
Markdown 语法
- 加粗**内容**
- 斜体*内容*
- 删除线~~内容~~
- 引用> 引用内容
- 代码`代码`
- 代码块```编程语言↵代码```
- 链接[链接标题](url)
- 无序列表- 内容
- 有序列表1. 内容
- 缩进内容
- 图片
相关问答
-
2018-12-11 09:04:52
-
2013-12-10 20:37:15
-
2013-08-27 16:15:49
-
2013-08-27 21:59:56
-
2013-08-25 10:32:50
-
2018-12-11 15:56:51
-
2013-11-23 08:55:19
-
2013-08-27 13:35:24
-
02013-08-24 22:15:18
-
2013-08-26 23:30:31
-
2013-11-18 11:08:00
-
2014-04-08 23:35:47
-
2013-11-17 10:43:15
-
2013-11-20 20:47:19
-
2013-08-24 20:25:56
-
2013-08-25 12:41:23
-
2013-11-30 23:50:52
-
2013-08-29 15:07:47
-
2013-08-26 23:29:39
无更多相似问答 去提问

点击登录
-- 积分
-- E币
提问
—
收益
—
被采纳
—
我要提问
切换马甲
上一页
下一页
举报反馈
举报类型
- 内容涉黄/赌/毒
- 内容侵权/抄袭
- 政治相关
- 涉嫌广告
- 侮辱谩骂
- 其他
详细说明
提醒
你的问题还没有最佳答案,是否结题,结题后将扣除20%的悬赏金
取消
确认
提醒
你的问题还没有最佳答案,是否结题,结题后将根据回答情况扣除相应悬赏金(1回答=1E币)
取消
确认