第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. Django 之 路由URL,视图,模板,ORM操作

    1.后台管理的左侧菜单,默认只有第一个页签下面的选项是显示的,点了别的页签再显示别的页签下面的选项,问题是:点了任何菜单的选项后,左侧菜单又成了第一个页签的选项显示,别的页签隐藏,也就是左侧的菜单刷新 ...

  2. 基于cxf的app文件上传接口(带回显功能)

    1.SaleImpl @Override public String uploadPic(final List<Attachment> attachments) { return this ...

  3. ajax导致Echarts不显示饼图数据、柱状图数据只显示气泡的问题。

    1.ajax导致Echarts不显示饼图数据.柱状图数据只显示气泡的问题. ajax的同步.这个同步的意思是当JS代码加载到当前ajax的时候会把页面里所有的代码停止加载,页面出去假死状态,当这个aj ...

  4. 将已经存在的异步请求callback转换为同步promise

    由于js是单线程执行,为防止阻塞,会有很多异步回调函数callback,嵌套层次多了,可读性就差了很多.随着社区的发展,出现了promise.我们来将一些常见的回调函数做修改,变成promise的链式 ...

  5. mongodb导出数据到csv

    mongo cws export.js > out.csv export.js // Date.prototype.getIOSDate = function () { return new D ...

  6. LVDS、CVBS

    LVDS(Low Voltage Differential Signaling) 是一种低压差分信号技术接口.它是为克服以TTL电平方式传输宽带高码率数据时功耗大.EMI电磁干扰大等缺点而研制的一种数 ...

  7. Python 实现 KD-Tree 最近邻算法

    这里将写了一个KDTree类,仅实现了最近邻,K近邻之后若有时间再更新: from collections import namedtuple from operator import itemget ...

  8. python3 代理设置

    前言: 用过很多种代理使用方式,这里总结一下. 1.urllib+socks5的代理1 from sockshandler import SocksiPyHandler import socks fr ...

  9. python第十六天

    一.包 1.什么是包? 一系列模块的集合 2.有什么用? 包通过文件夹来管理一系列功能相近的模块 3.包重点? 包中一定有一个专门用来管理包中所有模块的文件   __init__ 4.什么是包名? 包 ...

  10. Python语言的PyCharm开发工具的简单使用

    1.创建一个新的项目 创建一个目录或者文件夹 设置模板:制作一个常用的,模板 # @Author:lnx# @version V1.0# -*- coding:UTF-8 -*- 搜索/替换快捷键 代 ...