没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
STM32F207和和DM9161A的高速以太网接口设计的高速以太网接口设计
本文以微处理器STM32F207和网络接口芯片DM9161A为核心,并在此硬件平台上添加了网络变压器HS9016。
整个系统通过LwIP协议进行通信,实现了远程终端和上位机的通信,给出了相关硬件设计电路及软件源程序。
引言
本文主要阐述了基于STM32F207微处理器和DM9161A网络接口芯片的以太网方案,能够实现对谐波的监测,很好地解决了谐
波对电网所造成污染这一问题。
1 系统的硬件设计
1.1 系统原理及技术特点
本系统所用的核心微处理器是意法半导体公司生产的STM32F207,该芯片拥有高性能的32位精简指令集,最高工作频率为
120 MHz,内置高速存储器,有丰富的I/O端口和外设资源[1]。
本系统的结构包括:CPU电源管理模块、微处理器控制电路模块、网口电路模块、RS485通信接口电路模块、MAX3232接口
电路等几个部分。系统框图结构如图1所示。
图1 系统框图结构
STM32F207内部集成了MAC(Media Access Control)模块,它依照IEEE802.3数据帧格式控制PHY(物理层),对外提供
MII或者RMII接口,以此实现数据传输。
MII(Medium Independent Interface)即媒体独立接口。MII总线是一种用于将不同类型的PHY与相同网络控制器(MAC)相
连接的通用总线。网络控制器可以用同样的硬件接口与任何PHY 相连接。MII支持10 Mb/s和100 Mb/s的操作,但其所需信号
线较多,一个端口需要14根数据线,例如一个32端口的交换机需要448根线[2]。
RMII是通过MII简化而来的一种接口方式,它也支持10 Mb/s和100 Mb/s的总线接口速度。RMII所有的数据端口公用一个时
钟,所以它的一个端口只需要7根数据线。
MII和RMII综合对比如下:
① MII一个端口需要14根数据线,RMII一个端口需要7根数据线。
② MII的数据传输需要4根线,RMII的数据传输需要2根线。
③ 对于10 Mb/s线速,MII的速率是2.5 Mb/s,RMII的速率是5 Mb/s;对于100 Mb/s线速,MII的速率是25 Mb/s,RMII的速率
是50 Mb/s。
综合对比,本系统中选用的是RMII接口方式。
图2给出了STM32F207的外围电路。
图2 STM32F207外围电路
1.2 网络接口芯片DM9161A
DM9161A是用于100BASETX和10BASETX以太网物理层的、低功耗、高集成度的收发芯片。DM9161A采用先进的CMOS工
艺,完全符合IEEE802.3规定的100BASETX物理层协议。DM9161A还支持自协商功能[3]。
DM9161A在媒介一侧,它提供了一个直接接口,可以直接连接网络。不过考虑到对DM9161A的保护和自动识别网线,在此外
接一个网络变压器HS9016。HS9016内部集成一个网络变压器,并且具有自动翻转功能。它可以自动识别收发信号并自动去
适应,因而可以使用交叉网线或者直通网线连接路由、HUB或者PC。
DM9161A与网络变压器的接口电路如图3所示。
20~17引脚(TXD0~TXD3):发送数据位。在RMMI模式下,只需要用到TXD0和TXD1。
21引脚(TXEN):传输使能位。在RMMI模式下,高电平表示TXD上的数据合法。
29~26引脚(RXD0~RXD3)/PHYAD0~PHYAD3):接收数据位。在RMMI模式下,只需要用到RXD0、RXD1。
32引脚(MDINTR#):状态中断输出脚。如果原来是低电平,则中断时输出高电平;如果是高电平,则中断时输出低电平。
40引脚(RESET#):低电平,用来初始化DM9161A。
DM9161A的物理地址是通过接收的26~29引脚,以及35引脚CRS/PHYAD4来确定的。具体来说,在上电复位时,根据这几
资源评论
weixin_38600341
- 粉丝: 6
- 资源: 959
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (源码)基于Spring Boot和Vue的后台管理系统.zip
- 用于将 Power BI 嵌入到您的应用中的 JavaScript 库 查看文档网站和 Wiki 了解更多信息 .zip
- (源码)基于Arduino、Python和Web技术的太阳能监控数据管理系统.zip
- (源码)基于Arduino的CAN总线传感器与执行器通信系统.zip
- (源码)基于C++的智能电力系统通信协议实现.zip
- 用于 Java 的 JSON-RPC.zip
- 用 JavaScript 重新实现计算机科学.zip
- (源码)基于PythonOpenCVYOLOv5DeepSort的猕猴桃自动计数系统.zip
- 用 JavaScript 编写的贪吃蛇游戏 .zip
- (源码)基于ASP.NET Core的美术课程管理系统.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功