打印

STM32F2x系统需要2个网络接口,怎么做?(香版怎么不吭声?)

[复制链接]
2147|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yzzly|  楼主 | 2013-7-15 12:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 yzzly 于 2013-7-15 15:41 编辑

本人的STM32F2x系统,需要2个以上的RS232串行口和2个网络接口,用CPU自己的网络连接信号能否实现2个网络接口?如果不行怎么做可以办到?谢谢!本人几年前用51+CP2200系统做过4个网络接口,是一种数据线和地址线复用的并行扩展模式,目前不想再用51实现。
沙发
bbstr| | 2013-7-15 14:00 | 只看该作者
挂两个phy,地址配置的不一样即可。但是估计不能同时使用,需要加些互斥
或者一个挂mac,一个接fsmc总线,可以同时使用

使用特权

评论回复
板凳
yzzly|  楼主 | 2013-7-15 14:23 | 只看该作者
不能同时使用不要紧,数据不多,实时性要求也不高,只是用户要求配2个接口;我想2片PHY芯片都挂在FSMC上,只是我的100脚的CPU只有NE1一个片选,怎么挂2片?用地址线做片选?谢谢!

使用特权

评论回复
地板
yzzly|  楼主 | 2013-7-15 14:48 | 只看该作者
与FSMC连接的芯片CP2200只有8位数据宽度,CPU的NBL0和NBL1应该怎么处理?

使用特权

评论回复
5
bbstr| | 2013-7-15 15:05 | 只看该作者
NBL0,NBL1是16位宽度的高低enbale信号,具体你得看看你的cp2200是不是有这样的信号对接。一般ram芯片会有这两个脚,主要是stm32给cp2200的

NE如果只有一个的话,你只能一个挂fsmc,一个挂mac了。如果用地址做片选的话,你软件编写就得很小心了,很容易造成被别的设备读写而弄乱

使用特权

评论回复
6
yzzly|  楼主 | 2013-7-15 15:13 | 只看该作者
谢谢5楼的回答,CP2200没有高低字节选择信号,NBL0与NBL1怎么处理?用NE1和地址信号合成片选信号不是可以挂N多片吗?

使用特权

评论回复
7
bbstr| | 2013-7-15 15:28 | 只看该作者
要想挂,很简单。gpio都可以模拟fsmc出来。但是不利于软件编程。用fsmc控制器,你只需要对某个地址进行读写就可以了。一般网卡都有几位是配置地址的,比如A0,A1,A2这样的,你看看网卡手册,在这里下点功夫,片选就用NE1,但是地址配置成不同的

使用特权

评论回复
8
yzzly|  楼主 | 2013-7-15 15:39 | 只看该作者
我现在关心的是STM32F系列MCU的FSMC与只有8位数据宽度的芯片连接时,MCU的NBL0和NBL1怎么处理?谢谢!

使用特权

评论回复
9
bbstr| | 2013-7-15 15:41 | 只看该作者
不用接

使用特权

评论回复
10
aozima| | 2013-7-15 15:51 | 只看该作者
1. STM32F2内置EMAC连接交换机芯片,可以扩展出N个端口,EMAC是共用的。如果交换机芯片支持Vlan,也可以理解为隔离的。
2. 使用内置EMAC连接一个端口,再加1片EMAC芯片连接一个端口,两个网口是完全隔离的。
3. 直接使用同时内置两个EMAC的芯片,如FM9B9F618,这个可以找我。

使用特权

评论回复
11
heenson| | 2013-7-15 21:14 | 只看该作者
加个交换机芯片就可以

使用特权

评论回复
12
getmore| | 2013-7-16 08:40 | 只看该作者
用DM9000AEP吧,DM9000AEP自带MAC和PHY,价格也不贵,两片用FSMC连在一起,只要片选线分开就可以了。

使用特权

评论回复
13
冥顽的石头| | 2013-7-16 12:51 | 只看该作者
这个应该很好解决吧

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

427

主题

1178

帖子

3

粉丝