STM32接入以太网基础

本文介绍了单片机如何通过RJ45接口、网络变压器、PHY芯片以及可能的MAC模块接入以太网,强调了在没有内置MAC的芯片中需外部配合,同时提到了集成MAC和TCP/IP协议栈的高级单片机简化了编程过程。
摘要由CSDN通过智能技术生成

    前面简单的说了一下计算机网络的基本架构以及TCP、UDP的基础入门内容,但这些说的时候都是基于计算机的,那在单片机中是怎么接入以太网的呢?

    首先,我们需要知道,单片机想要接入以太网,在硬件上我们需要哪些器件,下面我画了一个简单的示意图,我们根据图来看一下。

    仔细看一下图中的组成,图的最右侧是一个称为RJ45的网络接口,这是一种以太网口,对应的是我们平时家用电脑的网口,当然,也可以使用WIFI模块等等的无线连接方式。在这个网口的左侧,是一个网络变压器,这个变压器的作用简单来说即提高信号的抗干扰能力,再就是分离传来的不同设备的不同电平。再往左看,是一个叫PHY的模块,这是一个芯片,这个芯片的作用是识别物理层的电信号,再进行转换,转换成后续设备对应的标准,使其能够被后续设备识别。这个PHY通过MII与最左侧的MCU相连接,这个MCU对应的是我们想要接入以太网的单片机,MCU中,有一个MAC模块,我们现在应该都知道,接入网络的设备必须有一个MAC用来寻址,所以MAC模块是必不可少的,其中,这个MII是一种接口标准,用来将PHY和MAC模块相连接。

    这下大体的框架就有了,我们拿一根网线过来,使其连在一个RJ45接口上,这个接口连着一个网络变压器上,再连载一个PHY芯片上,以处理网络变压器处理过的电信号,最后通过MII标准接口连在芯片上,但这里有一个问题,这个芯片上一定有MAC吗?答案是不一定的,有的芯片上集成了MAC的部分,例如STM32FXX7系列的芯片,这些芯片只需要添加上图中剩下的内容就可以接入以太网,但其实大多数芯片是没有MAC的,例如我们最常用的STM32F103C8T6,这个芯片就没有MAC的部分,我们如果想要将这些设备接入以太网,我们就需要改变一下上述的方案。只需要做一个小小的改动:

    上图中,我们可以看出,在MCU中没有MAC模块时,我们可以将使用PHY+MAC的处理芯片,一样可以完成单片机的以太网接入。

    除此之外,还有一种比较高级的单片机,其内部直接就集成了MAC和PHY,这种使用起来就更简单了。此外,有些PHY芯片中,不仅有MAC的部分,还会加入TCP/IP协议栈的解析内容,使的单片机的编程部分更为简单,最常见的有W5500芯片等等。

    上面只是一个简单的框架,其中MII是怎么样的标准,PHY和网络变压器之间的连接是怎么接的......等等内容这里都没有提,我们在平时用电脑时,网口传来的数据电脑自动就给你处理了,所以什么不用管,但我们在用单片机接以太网时,我们就需要将这些数据一层一层的进行解析,对应的就是上面PHY、MAC、TCP/IP协议栈等等,所以也就是一个通过硬件和软件逐层解析数据包的过程。这里就简单写这么一点,有一点认识就好,后面再慢慢完善内容。

  • 6
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值