网站大量收购闲置独家精品文档,联系QQ:2885784924

从零开始使用CubeMX创建以太网工程.pdf

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
从零开始使用 CubeMX 创建以太网工程 前言 在前面一篇文章中,介绍了如何使用 CubeMX 来建立一个简单的 TCPEchoserver 工程。但是在新建 CubeMX 项目时,是通 过直接选择 ST 的开发板的方式实现的。对于大多数实际的开发场景,可能并不是在 ST 的开发板上进行的,所以在这篇文章 中,我将介绍如何从零开始建立一个以太网工程。 今年 ST 推出的 Nucleo-144 板子上集成了以太网接口,所以在本文中,将以STM32F746-Nucelo 板为例,通过 CubeMXv4.18 来新建一个 TCPEchoserver 的程序。 用 CubeMX 建立基于 STM32F746-Nucleo 的工程 用 CubeMX 进行初始化配置 这回我们直接选择 STM32F746-Nucleo 板上对应的芯片 STM32F746ZGT6U,而不是选择 STM32F746-Nucleo 板。 1. 新建一个 Project,在向导中选择 STM32F746ZGT6U 。 这个时候我们看到的还是一个空的工程。如下图: 2.外设使能,引脚配置 2.1 以太网外设引脚配置 Nucleo-144 板上用的 PHY LAN8742A ,RMII 接口。在Cubemx 中使能 ETH 外设,选择 RMII 接口。Cubemx 会 自动配置对 应的以太网接口。如下图: STM32 的很多引脚都有复用功能,同一个功能也可以 remap 到不同的引脚。所以这里要记得将 CubeMX 自动配置的引脚和 实际电路中使用的引脚进行对比,保证是一致的。 从 UM1974 中可以找到 Nucleo-144 板上以太网引脚分配表。对比这张表格和 CubeMX 的默认配置,会发现 PB11,PB12 引 脚在 STM32F746-Nucleo 板中没有用做以太网的接口,而是用作其他用途了。 STM32F746-Nucleo 上的引脚分配: CubeMX 的默认分配: 在 Cubemx 中修改引脚配置: 修改方法见下图,用同样的方法配置 PG11 和 PG13。配置 PG11 和 PG13 后,对应 PB11 和 PB12 会 自动清除之前的配置, 以免冲突。 输入要配置的引脚,回车找到 对应引脚的位置(闪烁提示) 左键点击,选择要配置的 功能(ETH_TX_EN ) 到现在位置,已经将所有的 GPIO 口都配置好了。 在 Configuration 页面中,还可以看到所有配置的 GPIO。并可以做进一步的配置,这里就先用默认的设置。 2.2 使能 LwIP 协议栈 在这个工程内,我们会用到 LwIP 协议栈,所以还需要在这一页的 Middlewares 部分将 LWIP 勾选上。之后就可以在 Configuration 页面对 LWIP 协议栈进行配置了。 3.时钟配置 接下来进行时钟配置。CubeMX 默认系统时钟 16MHz,但以太网外设需要至少 25MHz 的系统时钟,所以这里会看到 Clock Configuration 页面显示 X 打开 Clock Configuration 页面会自动跳出一个提示框,可以选择让 CubeMX 来帮你自动调整时钟配置,也可以自己手动进行 调整。这里,我选择让 CubeMX 自动配置,CubeMX 会 自动将时钟配成216MHz。 4. 配置以太网参数 1 2 在 Parameter Settings 页面,可以配置 MAC 地址,PHY 的地址,是否进行自动协商等。 这里,我们设置了 MAC 地址为本地地址 02 :00 :0 :00 :00 :00。LAN8742a 的 PHY 地址由上电时 PHYAD0 的状态决定。根据 STM32F746-Nucleo 板的原理图,设置 PHY 地址为 0 。 接收数据的模式有轮询和中断两种方式,中断方式需要和操作系统一起使用,这里我们没有使用任何操作系统,所以在 RX Mode 这一项只能选择 Polling Mode 。 最后一项是”TX IP Header Checksum C

文档评论(0)

小白兔 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档