1. 稳定性
稳定性是网络协议栈最最重要的,如果不稳定,其它特性再好也只能成为点缀。为了验证RL-TCPnet的稳定性,去年上半年就开始做RL-TCPnet相关的测试工作,做了一个RL-TCPnet综合性能测试Demo,一直升级到第3版后才稳定,这个版本已经连续开机工作350多天:地址链接 。 2. 高性能
下面是RL-TCPnet的两个高性能展示例子,都含有视频演示。
(1)F429开发板RTOS+emWin+FS+TCP/IP+USB+CAN+Modbus综合Demo:地址链接 。
(2)【原创开源】极具可玩性的高端玩法,使用F429外接32位SDRAM虚拟VNC桌面,无需显示屏,远程访问,效果顶呱呱: 地址链接 。 3. 易用性
(1)有专门的Debug版本,调试工程非常方便。
(2)作为小型的网络协议栈,功能全面,简单易上手,配置极其方便,特别是工程配置向导,不是一般好用。 4. 教程内容说明:
(1)涵盖:TCP,UDP,VNC,TFTP,FTP,SNTP,Telnet,SMTP,DNS,DHCP,BSD Socket等。
(2)Web前端涉及到XML,Ajax,HTML , JavaScript,CGI脚本等。
(3)例子都是裸机,RTX,uCOS-III和FreeRTOS四个版本,仅后面几期未做裸机版本。
(4)配套的例子突出实战,大部分程序设计框架都是经过长时间实战验证的。
(5)教程中仅对裸机和RTX例子进行了讲解,而uCOS-III和FreeRTOS 实现是一样的,所以不做重复讲解了。
(6)教程的例子说明部分以及配套的所有例子,都是同一个框架,所有的例子都是在这个框架下制作的,所以用户看教程此部分有重复,但是具体到章节功能是有不同的。这么做的好处很多,可以让教程和例子规范化起来,用户学完一个章节,并熟悉了一个例子之后,就可以非常方便的上手其它章节和配套的例子。 5. 关于提高篇例子
后面还有几期提高篇的例子发布,主要是网络摄像头,MQTT,Modbus-TCP,云端访问,花生壳,百度地图,天气预报等。部分例子去年已经制作,还没有顾上去整理。应用的这些例子争取都采用BSD Socket编程,以后想切换到任何其它小型协议栈,都是极其方便的,基本可以达到无痛移植。 6. 版权问题
RL-TCPnet是收费的,如果商用,需要购买正版MDK,正是鉴于这一点,后面还会出LwIP或者FreeRTOS-TCP的教程,这两个都是免费的协议栈。基本跟我们制作的RTOS教程一样,免费和收费的都做一个。免费的做了FreeRTOS和RTX,收费的做了uCOS-III。 7. 原创声明
本教程主要参考了SEGGER,Micrium,KEIL,W3SCHOOL,百度百科和wiki百科的在线资料,具体的参考地址在教程中都有注明。 8. 教程和例子使用注意事项
(1)RTX操作系统版本的例子限制使用MDK4.74,其它的版本不限制,使用MDK4.7X以及MDK5均可。另外不支持MDK前段时间发布的MDK5.24a,因为这个版本不支持MDK4创建的工程转换为MDK5了,所以要使用这个最新的版本,需要给MDK5安装MDK4的兼容包了。
(2)对于每个配套的例子,教程里面都做了操作说明,首次测试,务必看下,防止不必要的麻烦。
(3)强烈建议将网线接到路由器或者交换机上面测试,因为所有的例子都使能了DHCP,可以自动获取动态IP,如果需要静态IP测试,请看第57章节说明。 9. 最后引用下KEIL官方针对USB协议栈说的一句话,超经典,其它中间也是一样的
The library handles the low-level USB requests without the need to write the hardware layer code.
Developers can focus on the application's request rather than concentrating on the specialties of the USB protocol。
我们推出这些中间件的目的就是让客户不必为移植协议和底层驱动而烦恼,所有的这些我们都已经写好,用户只需关注自己的行业应用即可。实际的测试中的确是这样的。 10. 此教程配套的硬件平台
STM32F407IGT6开发板:链接
STM32F429BIT6开发板:链接