第3章       初学RL-TCPnet的准备工作及其快速上手

俗话说万事开头难,学习一门新的知识,难的往往不是知识本身,而是如何快速上手,需要什么资料和开发环境。一旦上手后,深入的学习就相对容易些了。

本章节就起到这样的作用,主要说明初学RL-TCPnet需要做的准备工作。

3.1  初学者重要提示

3.2  开发环境说明

3.3  配套例子重要说明

3.4  RL-TCPnet参考资料

3.5  RL-TCPnet调试方法

3.6  总结

3.1   初学者重要提示

1、学习本网络教程,大家没有任何网络基础也没有关系,因为本教程以实战为主。更深入的网络协议知识,需要大家专门去学习,特别推荐书籍《TCP/IP详解》。

2、网络教程涉及到的实战操作比较多,大家初学一定不要嫌麻烦,其实首次实现电脑端和开发板之间的通信,还是非常兴奋的。

3、本教程配套的所有例子都使能了DHCP,所以强烈推荐将网线接到路由器或者交换机上面测试,可以自动获取IP地址。如果需要固定IP进行测试,学习第57章即可。

4、本教程配套的大部分例子都是裸机,uCOS-III,RTX和FreeRTOS四个版本。针对这三款操作系统,我们都有教程。

(1)FreeRTOS教程:http://bbs.armfly.com/read.php?tid=17658

(2)RTX教程:http://bbs.armfly.com/read.php?tid=14837

(3)uCOS-III教程:http://bbs.armfly.com/read.php?tid=1788

(对于uCOS-III教程,后面还会出完整版)

5、教程中仅对裸机和RTX操作系统的例子进行了说明,FreeRTOS和uCOS-III两个版本的例子跟RTX基本是一样的,所以教程中不再赘述。

最后还是强调一点,搞网络教程,一定要多多实战,实际动手操作,实战才是学好网络教程的最佳途径。另外,初学时不要一上来就研究RL-TCPnet的底层驱动接口,容易影响初学的积极性,搞得后面越来越没有兴趣去研究了。

3.2   开发环境说明

1、IDE:MDK4.7X或者MDK5.XX。

2、调试器使用JLINK,ULINK或者STLINK均可。

3、配套开发板是安富莱的:

(1)STM32-V5开发板,MCU是STM32F407IGT6。

(2)STM32-V6开发板,MCU是STM32F429BIT6。

3.3  配套例子重要说明

1、对于教程配套的RTX操作系统例子,请务必使用MDK4.74,原因如下:

(1)每个MDK的安装目录里面都会有一个RTX源码,对于MDK4.XX来说,大家使用的哪个MDK版本,务必使用哪个MDK版本下面的RTX,这样使用MDK自带的RTX调试组件时,才能显示正确的调试信息。本教程配套例子的RTX源码是来自MDK4.74,所以务必使用MDK4.74。

(2)对于MDK5.XX,RTX也在其安装目录里面,但是RTX已经不作为单独版本发布了,它有一个全新的名字叫CMSIS-RTOS RTX。ARM官方在RTX的基础上给RTX又做了一层封装。

2、裸机,uCOS-III和FreeRTOS三个版本的例子,不限制,只要支持F407和F429即可,所以推荐使用MDK4.7X或者MDK5.XX版本即可。另外特别注意一下,KEIL官方最近一次升级的MDK5.24a不支持MDK4.XX创建的工程转换成MDK5了,详情看此贴:http://bbs.armfly.com/read.php?tid=32100

不知道KEIL以后发布的新版本是否也不再支持了。因此,如果喜欢用最新版本的MDK5,需要给MDK5安装MDK4的兼容包。

总的来说,强力推荐大家使用MDK4.74,防止不必要的麻烦。大家的电脑中可以安装多个MDK版本的,而且互不影响,只要将其安装在不同的安装目录即可。比如我这里,在C盘中安装了三个版本:

MDK4.74的下载地址:http://bbs.armfly.com/read.php?tid=2972

3.4  RL-TCPnet参考资料

学习RL-TCPnet主要有两个可以参考的资料:

(1)KEIL MDK安装目录里面的rlarm.chm文件。

(2)KEIL官网上在线查看。

当然,两者的内容是一样的。其实不光RTX操作系统是这样,像FreeRTOS和uCOS现在也是这种形式,一个离线方式的电子手册和一个在线的手册。

rlarm.chm文件在MDK4.74的安装目录C:\Keil_v474\ARM\Hlp里面,打开后的效果如下:

官网的在线手册地址:

http://www.keil.com/support/man/docs/rlarm/rlarm_tn_tcpip_prot.htm ,打开后的效果(部分截图):

等RL-TCPnet入门后,主要看这两个手册即可,基本可以解决大部分问题。

3.5  RL-TCPnet的调试方法

针对RL-TCPnet的调试方法,在本教程的第11章专门进行了讲解。初学时,可以优先看下。

3.6  总结

本章节就为大家讲解这么多,建议初学者花些时间对RL-TCPnet手册的章节结构了解一下,随着以后的学习最好可以达到熟练查看这个手册的程度。

【RL-TCPnet网络教程】第3章 初学RL-TCPnet的准备工作及其快速上手的更多相关文章

  1. 第2章 初学 emWin 的准备工作及其快速上手

    以下内容转载自安富莱电子论坛:http://forum.armfly.com/forum.php?mod=viewthread&tid=24552&extra=page%3D3%26f ...

  2. 【安富莱TCPnet网络教程】HTTP通信实例

    第41章      HTTP超文本传输协议基础知识 本章节为大家讲解HTTP(HyperText Transfer Protocol,超文本传输协议),从本章节开始,正式进入嵌入式Web的设计和学习. ...

  3. Airtest 快速上手教程

    一.Airtest 简介: AirtestIDE 是一个跨平台的UI自动化测试编辑器,适用于游戏和App. 自动化脚本录制.一键回放.报告查看,轻而易举实现自动化测试流程 支持基于图像识别的 Airt ...

  4. 【RL-TCPnet网络教程】第32章 RL-TCPnet之Telnet服务器

    第32章      RL-TCPnet之Telnet服务器 本章节为大家讲解RL-TCPnet的Telnet应用,学习本章节前,务必要优先学习第31章的Telnet基础知识.有了这些基础知识之后,再搞 ...

  5. 【RL-TCPnet网络教程】第30章 RL-TCPnet之SNTP网络时间获取

    第30章      RL-TCPnet之SNTP网络时间获取 本章节为大家讲解RL-TCPnet的SNTP应用,学习本章节前,务必要优先学习第29章的NTP基础知识.有了这些基础知识之后,再搞本章节会 ...

  6. 【RL-TCPnet网络教程】第28章 RL-TCPnet之DNS应用

    第28章      RL-TCPnet之DNS应用 本章节为大家讲解RL-TCPnet的DNS应用,学习本章节前,务必要优先学习第27章的DNS基础知识.有了这些基础知识之后,再搞本章节会有事半功倍的 ...

  7. 【RL-TCPnet网络教程】第20章 RL-TCPnet之BSD Socket客户端

    第20章      RL-TCPnet之BSD Socket客户端 本章节为大家讲解RL-TCPnet的BSD Socket,学习本章节前,务必要优先学习第18章的Socket基础知识.有了这些基础知 ...

  8. 【RL-TCPnet网络教程】第19章 RL-TCPnet之BSD Socket服务器

    第19章      RL-TCPnet之BSD Socket服务器 本章节为大家讲解RL-TCPnet的BSD Socket,学习本章节前,务必要优先学习第18章的Socket基础知识.有了这些基础知 ...

  9. 【RL-TCPnet网络教程】第17章 RL-TCPnet之UDP通信

    第17章      RL-TCPnet之UDP通信 本章节为大家讲解RL-TCPnet的UDP通信实现,学习本章节前,务必要优先学习第16章UDP用户数据报协议基础知识.有了这些基础知识之后,再搞本章 ...

随机推荐

  1. OpenStack—neutron组件介绍与安装

    neutron介绍 Neutron 概述:传统的网络管理方式很大程度上依赖于管理员手工配置和维护各种网络硬件设备:而云环境下的网络已经变得非常复杂,特别是在多租户场景里,用户随时都可能需要创建.修改和 ...

  2. displaytag如何实现获取到每行的id字段的值。

    1.displaytag如何实现获取到每行的id字段的值. 使用封装好的框架,有时候,对于一个知识点不熟悉,可能会浪费你大把的时间,我使用displaytag主要是使用它的分页技术,但是客户提出的需求 ...

  3. 使用 Vscode +PlantUml 画uml图

    什么是PlantUML PlantUML是一个快速创建UML图形的组件,官网上之所以称它是一个组件,主要是因为多数情况下我们都是在Eclipse.NetBenas.Intellijidea. Emac ...

  4. 深入理解position属性&containing block

    一.包含块(Containing Block) 要讲position,首先就涉及到一个概念:包含块. 1.包含块介绍 包含块简单理解就是一个定位参考块,就是"大盒子里套小盒子"中那 ...

  5. .net 获取配置文件AppSettings的键值

    //AppSettings.config 节点代码 <appSettings> <add key="IsUpdate" value="false&quo ...

  6. JS全角与半角转化小结

    最近在做PC端网站的页面的一个表单校验,需要把全角输入转化成半角符号.之前没有了解过这些编码的知识,还是得Google一下查查资料,故简单总结一下. 什么是全角.半角 传统上,英语或拉丁字母语言使用的 ...

  7. java解析json的操作

    import java.io.FileNotFoundException; import java.io.FileReader; import com.google.gson.JsonArray; i ...

  8. URL包里的URL.getpath()对路径中空格识别为%20的处理办法

    方法(1),使用repaceAll("%20",' ')替换后,只能解决空格问题.但是路径中包含%和中文就不行了. 方法(2),使用URLDecoder.decode(str,&q ...

  9. git 相关学习

    1.Git 的一些快捷键 第一次创建本git 本地仓库 :: git  init  //在本地创建一个 Git仓库 :要在该目录下 第一次 要配置GitHub 的 账号和邮箱: git config ...

  10. UOJ#75. 【UR #6】智商锁 随机化算法 矩阵树定理

    原文链接www.cnblogs.com/zhouzhendong/p/UOJ75.html 前言 根本没想到. 题解 首先我们可以考虑一种做法: 找一些图,使得他们各自的生成树个数乘起来等于 k. 那 ...