你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【问答汇总】STM32以太网 在线培训互动

[复制链接]
zero99 发布时间:2017-8-30 14:22
看了之前以太网在线培训的视频教程,大家肯定是受益颇多吧有时间的吧& U  y0 i8 h: D

) c7 E8 B+ M2 f. J可以跟着大佬一起完成培训中的动手实验>>
6 j/ e8 G6 J% B( I6 [0 S2 _9 ^( W$ h, ?' Q+ h

1 D4 I- E: L# s$ ?; ?3 o, S/ K5 S小破把在线互动的问答整理如下,希望对大家有帮助~% J) v. {: m+ p, S

3 ?/ E3 z( I: r" Y3 r  g# F% A) v" n# i" W0 d$ e
1、问:LWIP协议与标准IP协议之间有什么差异?- i/ M4 v$ J: p/ x0 o+ c1 M5 l
FAE:LWIP是对TCP/IP协议的开源实现。具体现在LWIP支持了哪些协议,你可以去http://savannah.nongnu.org/projects/lwip/做进一步了解。& l( g) W7 J. r4 Q3 y

9 r* w$ G1 ^1 B0 R2、问:LWIP协议怎么对memory进行动态分配管理的?
6 b# f; D  f* ~8 Y0 O' lFAE:LWIP协议提供两种动态内存管理的方式:动态内存堆和动态内存池。简单的理解,他们的区别是,前者是按照你申请的大小来进行分配,后者是每次只能分配一个或多个固定大小的内存块。" z$ ?9 d" U% z# ^, L+ y0 A

  P& V6 m1 Y0 D9 P3 C3、问:LWIP协议的配置有没有特殊的要求或原则?6 l! Z# |1 L- o9 G& i" u0 ?& z+ C
FAE:根据应用进行配置,LWIP 协议栈会对一些有相互关系的宏定义进行检测,但不是全部。
/ l; `. z" \9 t  F# k+ h7 ~$ H: Y" y$ X
4、问:RMI和MII的速率谁快?
- x8 R& a5 I( z  d  q' |% UFAE:理论上来说是一样的。RMII虽然只用了4根数据线,但是它的时钟比MII提高了一倍。
+ h/ H2 S  n8 M0 U4 V
; l- p8 J$ L; ?7 E5、问:RMII  需要50M晶振。不能使用HSE 50M晶振直接MCO提供吗?
% X% ~( M( T) I# VFAE:STM32外接晶振不能超过26MHz, 所以你可以通过直接提供50MHz的时钟给STM32和PHY7 m8 S% W' r0 b
4 j6 O7 h6 I/ r4 [9 @2 ~
6、问:STM32支持以太网接口的MCU有那几个系列?+ _5 E5 l* ?& y
FAE:F1/F2/F4/F7都有,我们的STMCU FINDER工具可以帮你快速的进行选型
! J6 h/ F2 L8 t
. x, Y: i) u- J  R" X7、问:怎么使用UDP的各种常用功能,有没有可以参考的资料?8 I$ Z1 U0 q( v- o7 Z( u. j5 \
FAE:可以参考我们Cube库里的LWIP的例程,里面有UDP client/server的demo
* U0 a' R- B. Y, H+ u( ?- P$ h/ m# z7 Q) Q5 f2 F0 o
8、问:请问一下STM32支持IP协议的芯片系列都同时支持MII和RMII两种标准吗?# p8 k  f6 `2 g
FAE:是的
3 U$ Q& z: T* b: P. k  `: q  k* V; y7 ]! @: p0 m" [
9、问:这么说Nucleo 144带Ethernet接口的电路板是使用第一种模式,25MHz了?
- r% L# N+ ?# iFAE:Nucleo144带以太网接口的板子,都是用的RMII接口,PHY使用的是LAN8742A,该款PHY可以将25MHz的时钟倍频到50MHz,所以外部用了一个25MHz的晶振
9 U6 B& Z% F3 A3 |/ D2 k6 U/ ]. x2 V3 ^. I2 F
10、问:最新的,如F7系列,一般都支持MII和RMII?
2 _& x$ z# S' y7 A3 NFAE:stm32的以太网外设都支持MII和RMII这两种接口
+ s2 O8 K; {$ W6 N" i0 @
3 N( i( v( W1 F) I$ Q. b/ j11、问:STM32驱动不同的PHY时在软件上需要注意或修改的部分有哪些?. ^& y; A! `; h. f0 O" n
FAE:需要你结合PHY的数据手册和板子的原理图来具体分析。比如:PHY和STM32的MAC的接口是否不同,是否用到PHY中断引脚,PHY 的bootstrap,PHY的寄存器的不同等等,具体的内容今天下午的PHY移植这部分会做详细介绍。
1 N0 h, x1 z- ]' A# G0 _7 N, o
12、问:MII和RMII两种标准的接口除了PIN脚的差异还有其他差异吗?& `4 Z% N' J/ l2 O% {: M
FAE:使用的时钟不一样。
2 g$ h9 u6 {' s2 L$ x% l# k
, B+ J. ]! t, a, [13、问:ST有没有类似TI的 EtherCAT实时工业以太网的支持?或者说,何时能提供类似EtherCAT实时工业以太网的支持?- g8 i1 r1 R7 X7 o, F
FAE:现在我们有合作伙伴提供的有这方面的解决方案。
! X8 E4 A! q# L- K' K8 {% m/ ~: i
14、问:crc一般是什么格式?2 Q# ~; }9 d) v5 @
FAE:在用户手册的以太网章节对使用到的CRC有具体介绍。生成多项式如下:Gx = x32 + x26 + x23 + x22 + x16 + x12 + x11 + x10 + x8 + x7 + x5 + x4 + x2 + x + 11 |: ?- E. C4 _7 @
+ {# A! Q. o' Z. e3 ~
15、问:CRC那么多,automatic crc,默认是哪种?! e2 t2 h2 G9 M, s3 k4 j' Y
FAE:在用户手册的以太网章节对使用到的CRC有具体介绍。生成多项式如下:Gx = x32 + x26 + x23 + x22 + x16 + x12 + x11 + x10 + x8 + x7 + x5 + x4 + x2 + x + 1
: i( ^/ l! r6 r+ z% Z8 r
8 n1 l4 f/ G& }, ~* I16、问:CRC还有多种么?
# s0 @( {  `( M- @; dFAE:CRC有两种方式,一种是硬件CRC(MAC计算),二是软件CRC,mcu计算
7 S5 o' G# M# }% `4 f1 b; ^5 K% w2 m
17、问:IP datapram header error and payload error during transmission 当出现error的时候,我们应该怎么处理  b; X, i; m$ V3 W
FAE:请实现HAL_ETH_ErrorCallback回调函数,并且检查AIS中的具体的bit位,以确认是什么错误?& \, I1 z1 c5 K5 h: D% z* Q4 b
ETH_DMA_FLAG_AIS这个包含的哪些异常信息,请参考RM0090, P1212,DocID018909 Rev 9  N4 V/ Q) e7 x& k

# I7 `3 d; F7 k7 D5 G, g. n/ I18、问:请问 STM32L4系列 哪个型号集成以太网收发器包含以太网功能?
4 L( K: h' e! xFAE:STM32L系列目前不支持以太网5 ~% K5 \. h/ X7 y* j/ A" A8 b

( a8 g) u. }2 ]5 q19、问:用STM32做以太网口转4串口,单核能做吗?目前要做一个以太网转4串口透传模块,一个STM32能搞定吗?是不是需要什么内核?" S# f. j) D% K; P0 g" U
FAE:1.从外设资源上,需要有足够的串口和有以太网支持。
; r: N6 [) _( {' g6 E+ O4 S         2.系统资源上,需要评估你的应用占用的总线带宽,看带宽,速率和 SRAM,是否满足应用需求。都满足的情况下,一颗STM32的MCU理论上是可以实现的。
8 E+ p6 Q8 F" \' y% d9 f4 `# [$ q
2 l" a7 Y/ K1 V1 S0 E% f2 {20、问:在以太网驱动的设计中DMA链驱动FIFO只是用来接收吗?
/ U7 W9 Y; i3 S9 v, {! zFAE:DMA  实现接收、发送功能,以解放mcu负荷。% {3 A8 _! @5 \9 c: A. E/ E1 J

! T. I/ b/ s% a# P0 G3 O/ a21、问:CUBEMX是不是不支持STM32F107以太网的管脚重新映射?$ V' `% _) O  P! S6 h
FAE:CubeMX 4.21.0不支持。: Q! N7 S+ N2 x6 Z* O

9 g1 V" u9 v$ L$ E, M+ ?+ u( z" l22、问:目前正在调试207的以太网,PHY芯片用的是AR8032。lwip移植。目前是10M配置的 ping 不会丢包, 但是100M的话 ping就会经常丢包,求教大家有没有遇到这个情况?
2 c# W9 C* E& z3 zFAE:这个需要详细分析,MII/RMII接口?晶振?lwIP配置?AR8032的注意事项等,建议先请代理FAE帮助分析定位。
3 i$ `- e5 y! _3 ^' F+ D2 x" r& I! T
) ?# T1 x0 p' D- h9 V23、问:哪些 nucleo板子有带以太网Phy的呢
+ _$ Q( {/ O( p- S, e8 |FAE:NUCLEO-F2907ZG, NUCLEO-F429ZI, NUCLEO-F746ZG, NUCLEO-F767ZI
* f4 w, o' _4 I6 e( W+ k7 x" ^* Y" u7 B- j& K9 `
24、问:lwip协议那个版本最稳定?2.0还是1.4.1?
( E4 s, u' ?6 x0 x3 hFAE:2.0版本较1.4.1有新属性,二者都比较稳定。) K; E, F& A9 t9 k' k
8 g* D% B: h# L3 e& h. L. n
25、问:stm32以太网接收断续,使用stm32f429的片子,用cube生成包括lwip的示例,无操作系统。不知道什么原因cube的lwip不能选择igmp,只好手动打开此开关,同时为了编译通过关闭了dhcp?0 P8 c, I3 c0 J3 y$ K$ c: f  O/ C
FAE:这个或许是CubeMX的功能待进一步提高。9 e2 V, U. A' S5 h

+ Z# x) y* h( j/ q' G$ G26、问:PTP 与 EtherCAT 是什么关系?$ w8 s4 I5 N6 f% ]0 }) ^
FAE:PTP跟etherCAT没有关系,PTP是关于timestamp问题,etherCAT是工业以太网标准2 J5 l- H# o' D3 j) @
$ \  y5 L/ c- p7 U
27、问:以太网低功耗模式唤醒有历程吗?官方的' E$ m; o; ]6 Y; g2 _& |: U
FAE:目前没有7 f0 }3 G% z- \( `+ w

+ V8 }6 U* _& ^/ @" L+ S6 Q9 {8 n28、问:IEEE 1588的精确时序协议(PTP)通过以太网使分布式设备的时序同步精度达到纳秒级,从而满足分布式应用系统的要求。  刚才讲解是达到ms级,然而1588目标是ns级,要达到ns级需要什么做什么?3 Q7 U9 r& Y) X  h) F" Z- Y/ ^
FAE:IEEE1588 V2能达到亚微妙级的精度,PTP是MAC里的一个模块,如果要达到纳秒级,对硬件的时钟频率、电气、机械特性要求更高,当然成本更高。* _3 N* v" v" c" K

3 o. M6 T8 Y4 ]8 R29、问:2K的Rx fifo和 2K的Tx Fif 是需要软件开辟缓存的吗?还是硬件自动分配好ram?6 [) d; {9 y6 Y& [: N* d% W
FAE:这两个缓冲区对用户不可见,可以不用关心,专用的缓冲区; F' f0 ?3 j$ S, H5 ~1 X  y/ s
- N+ m2 `5 h6 }+ X) J9 s5 I; y
30、问:CubeMX中以太网的Extended Register应该如何配置?) w9 C0 C! C5 m- X
FAE:这个请参考ieee关于扩展寄存器的定义。9 Z% |/ d/ H' C2 S7 i: a; |, e4 Q
: n( v: r$ g' F4 }8 H6 X
31、问:Threshold mode 和Store-and-Forward mode 2种传输模式 在 具体工程哪里有定义?! I, A1 F4 e( i6 u3 s3 t
FAE:在驱动文件stm32f7xx_hal_eth.c里,函数ETH_MACDMAConfig里,代码片段为:  \$ A- F. w! t& M4 F1 K% ~
  1. dmainit.ReceiveStoreForward = ETH_RECEIVESTOREFORWARD_ENABLE;# N" f! ~8 X$ l
  2. dmainit.TransmitStoreForward = ETH_TRANSMITSTOREFORWARD_ENABLE;
复制代码
     建议使用存储转发模式,这样可以利用MAC,执行硬件CRC! c8 u" }6 P; b  R7 f! v- c! t2 r3 y

5 {& I9 {+ e0 e8 m: H2 l7 E32、问:STM32以太网协议栈是uIP用的多还是lwIP用的多?% Y) v- \; O+ O/ I  r* }, M
FAE:STM32协议栈是使用LwIP: K. D3 H  F- b) ]( x7 K
9 v# {7 V7 V8 E. k  s) w
33、问:uIP也是免费的?cubeMX有uIP吗?
+ S; i/ ~  _2 ]5 b) SFAE:uIP是开源的。CubeMX目前不支持。, U: g. K+ y6 z% a* S

9 D7 r! g9 d6 H# h$ D  F34、问:目前方案中2种 TCP/IP 协议栈都有用,但稳定性都不太满意,特别是工业应用,不知道为什么。希望能在这块改进,提高稳定性 。
; L# L/ z' H9 _* t, mFAE:lwIP和uIP都是免费的TCP/IP解决方案,一般如果没有特殊需求是可以满足功能要求的,如果性能、" o& d3 V6 r/ W1 w. \& A+ m
特性要求苛刻,建议使用商用版本,如micium TCP/IP, Oryx TCP/IP等等,但是这些涉及license,请斟酌。
! j1 o0 I- d5 ]
: z; u+ {4 X' D- D5 b1 F35、问:以太网试验中ping是什么原因?提示无法访问目标主机?但是数据却接受
$ ]! A- H; S1 f" M( O$ i1 g9 tFAE:一种可能的原因是,PING过程的延时太长,看到产生无法访问主机。可以使用抓包工具看下数据包的情况。3 I! O5 g( x" O/ l0 }; m  r
& {) J' i) R% ?8 d" [1 V  p
36、问:请问如何解决stm32F7 用了cubemx库以后在mdk下编译缓慢的问题?1 X* l! v" a, |3 B' M! ?5 p
FAE:Cube库为了提供在各系列MCU之间的移植性,对底层驱动做了封装,代码量相对来说变大。你也可以使用我们的LL编程接口,来直接操作底层寄存器,来获得更高效的代码,但同时也要求编程者要十分熟悉STM32的使用。
2 }: _' T" A$ Y
& T% d: _8 Q' n' ~8 F1 a37、问:针对 TCP/IP协议栈,只有MCU的适用性,不同的MCU有针对性地优化吧?
4 @; x( k. R) `" ?; m4 |6 V( Q3 q* BFAE:您的问题是指MCU层面对应用程序的优化吗?比如对memory的划分,通过开CACHE来提高程序性能?这个可以根据不同的MCU进行,比如有的MCU提供CCM RAM(只有CPU能访问,并且不经过系统的busmatrix),你可以把程序的堆栈放在这里。可以参考我们不同系列MCU的对应AN(在官网上找到你所使用的MCU,就可以找到和它相关的所有AN)
  f9 E  O4 m/ O) f5 _
# P9 g) U/ p3 ?38、问:STM32F407以太网有两个中断向量,但是有一个是用于唤醒的,所以只有一个中断向量能用。现在想用中断发送数据,但是找不到中断源,不能进入中断,怎样触发也不知道?
, J, j& N+ g, L8 c; J9 D* y0 r4 l, oFAE:底层发送数据是通过low_level_output完成的,它会将协议栈要发送的数据,保存到发送的descriptor中,剩下的事情就是DMA在做了,你只需要在初始化时,设置好FIFO数据弹出的模式就可以了。* M( m/ X6 ], h  U, S) Z
' E! b; y3 u* l! l
39、问:为什么不直接传给FIFO,还得用descriptor来管理DMA?
) g! P* q6 G# B# PFAE:DMA做的就是将数据从STM32系统RAM发送到FIFO的工作- r* O4 W6 n$ `5 r  J4 q  E1 Y
+ [2 ^# I" W- G: Q: c
40、问:以太网传输ADC采样数据偏差,我用stm32f4的以太网传输ADC采用数据,在通讯的时候会造成采样数据偏差,以太网采用的是lwip协议栈,FAE:ADC采样六通道正弦波,每500ms通讯一次,在通讯期间的ADC采样数据会发生偏差,给ADC采样数据做递推平均值算法后,不稳定
; Q% W, f6 h8 a% L4 M你的问题是ADC采样数据在传输中出错(校验出错),还是有采样数据在传输中丢失?用的UDP还是TCP?( r" h: |' e% N8 D1 _9 l& C
* n8 v* K: f4 B9 K; ^9 x' D% ^9 L
41、问:压力测试如何  会不会丢包?
* h5 j9 P8 J2 G( j. t0 o6 P9 H- BFAE:应用程序写的不好,也会丢包。这个问题要跟具体的应用来分析。  |- X8 [" ^4 n9 N! b6 z0 d# [

# z$ H8 E4 a" K, c42、问:stm32有自带的以太网模块,为什么还要用ENC28J60?& B' b3 h- U: J( Z; ~1 r
FAE:这个是看客户所选用的具体型号和他的具体应用。Stm32并不是所有的系列都有以太网外设,而且以太网外设的只有MAC控制部分,还需要外接一个PHY。如果客户想要支持多个网口,就会选择使用ENC28J60等芯片了。
  o+ W) r3 H3 F. m/ ^8 n/ Z
& ^& C! L+ x( c& p7 L43、问:请问STM32F407可以配LAN8720A以太网PHY吗?用RMII模式,我把INT脚用作50MHz REFCLK输出给STM32,所以没有PHY没有中断输出给STM32了。我看例程里是要有中断的,该怎么修改例程呢?
/ }& _) g& F( n, W! K: H, n( V( zFAE:首先肯定是可以用LAN8720A的。如果没有中断信号给MCU,就需要使用轮询的方式来查询PHY的中断状态。
/ x2 i) }( d6 I  i7 J1 I, F" [
44、问:接上一个问题 还有驱动里面的寄存器定义是不是跟8720不一样?我怎么检测出来是10M全双工,实际应该是100M全双工& c8 ~* p6 G, X% n. M
FAE:请确认例程中的PHY型号是不是8720.如果不是8720,那么寄存器定义会有不同,请参考Amanda讲课的移植指南进行改动。, {, C: b6 Z5 o6 k
: C& L' T; ]7 G; A8 ^! y+ u
45、问:如何实现以太网功能的,是用F107或F407芯片自己移植Lwip还是采用SPI转以太网模块?
+ ?0 f, _6 ^8 }; ?2 dFAE:建议使用自带的以太网外设,节省BOM。 ) h( q* E4 |; L5 Y4 N  u
" o  w0 O6 C2 c5 q: {- q
46、问:8720问题,如果想使用100M全双工,你可以配置寄存器使其强制百兆模式?" w# N/ W; T9 u' _
FAE:不要使用自动协商模式。" G0 m! S( a; K- W3 ~9 I: Z1 z
9 \7 x9 ^% k8 D0 \
47、问:PHY芯片DM9612用于F407的效果和稳定性如何?
0 J$ K* `3 d- i; U( |& bFAE:稳定的。) ~% r+ p& x% i9 Z4 Q7 G) e

1 W+ F  W+ U* z4 k6 m! D48、问:自己做的STM32407,程序跑一段时间之后以太网无法通讯,ping不通,RJ45绿灯常亮,黄灯闪烁,其它部分正常,也就是程序通过IO能控制,通过CAN通讯也能控制,只有以太网部分死掉?- w4 S6 G( O) W: ]7 c
FAE:建议把其他所有功能都关闭,只保留以太网功能做测试,再做分析。8 O$ z) T; Y, E
& u; ~4 {* n% F* |6 e' [( h* Q
49、问:stm32和dm9161实现以太网,但是ping不通d,m9161已经工作,工作在100M全双工模式,但是Ping不通,不知道为什么,初始化什么的都成功了?
. L3 @7 Y# g0 y& P1 }FAE:首先确认LwIP中的ICMP功能打开,然后用抓包工具抓包,分析问题,最后也要检查硬件连接是否正确,时钟是否有输出。7 y- h- g  v- w! W; b
1 f' P$ E1 B; @8 @
50、问:cubemx能支持uIP吗?6 }. G1 j! X4 j/ m# X, K, `/ n
FAE:目前不支持- n  Y+ q! a8 W; ?" L; Q: _2 e' j

1 M9 a" F+ s0 z% d- Z# _; w! \51、问:DM9612除了电压切换和时钟还有什么功能?
+ m9 e! {0 l/ p0 e. y! l& }) p5 ~  }FAE:请参考DM9612 datasheet
6 Y, f( W! l4 R. d7 {
& A! @4 x3 s( e52、问:STM32以太网中断问题,为什么我的以太网中断在最初系统复位进去3 -- 4次之后就再也进不去了。有没有常规的解决办法?& }7 `' z1 P! H
FAE:使用调试模式分析,请确认硬件、驱动,lwIP配置
1 g/ r, {7 j' q% i" P: ]! j1 u( D$ s5 h# t: r, z4 H2 }
53、问:我用cubemx最新版初始化了串口,GPIO,ADC, RTC, IIC, 几个定时器,还有ETH,但程序根本不运行,我把ETH的相关初始化注释掉,程序就可以正常运行,这个现象一般是什么原因造成的?# s+ h4 O) L/ X3 H9 o+ [" k. h
FAE:CubeMX的初衷帮助开发者生成应用程序框架,开发者还是需要仔细看一下时钟配置,GPIO配置,descriptor配置等。9 ^- ?5 T& m% S/ M: C
  w/ }. ~" q. ~) T7 q& O
54、问:LWIP三种编程接口那种稳定最好,适合短时间内传输大量数据?1 u. ^; i) f. \" L6 X
FAE:如果需要吞吐量大的话,建议raw接口,这样减少OS中任务切换开销,但是对开发者要求较高。
7 a7 k% L: w, J. f) [6 W& T4 O* @' {6 ?0 E. s6 r
55、问:按照初阶培训的资料,新建工程,为啥一段时间和就会掉线呢?需要重启才会好?, C" @: c3 b* {& W; [
FAE:请确认硬件连接正常,驱动程序正常,lwIP配置合理。
5 U9 y8 O! H' u5 N% _& G2 C9 m
+ C: J5 g2 G7 n0 I) r6 Y6 m' M56、问:有什么办法能解决开发板死掉的问题,UDP似乎没办法检测连接状态?# ^; p8 x; K  l: L1 t
FAE:只有使用st-link或者j-link等调试工具,调试、分析、定位。
, k$ M. v- r, @. b0 u) v: c+ f5 a, G8 w+ Y  V! g
57、问:拿一块STM32+W5500,怎么写相关的程序(什么UDP,客户端之类的)?
2 [3 I* r! b! W. _4 ]3 Z8 j  _5 @FAE:请google、bing、百度相关例程,或者看看W5500提供商能否提供3 `7 s/ S! y$ Y- [+ q1 N

9 u' W: `9 _3 W# T1 Y58、问:STM32的以太网如何动态切换速度和双工状态?8 ^$ F" ~8 T+ h
FAE:请将ethernet配置为自动协商模式1 W/ n% W$ h2 Z, v% \
* x: Z2 N, N$ }: n1 \1 X2 f" v
59、问:内存 分配  Heap/ Pools 2种方式,哪个更加可靠?
/ y* A8 F! }2 x) M$ u! U, RFAE:都可靠,适合不同的场合。
/ ?0 ~7 L7 D3 j% q
+ r: ]1 E7 p7 m$ t2 L! G3 W/ E! e60、问:lwip如何根据自己的应用来配置参数,主要是buffer、window之类的?
9 ^& e( P! N( I' ]  R% I0 Z9 MFAE:请参考LAT https://www.stmcu.org.cn/module/forum/search.p...AA%8C
! b" N5 }$ p( ^) C& s$ C; Q, l3 j; z' V
61、问:stm32与stm32之间可以通过以太网连接吗?
3 n* Y5 J# L8 t% I) d$ ~- ^1 O) }FAE:两个设备同时都有以太网接口,就可以做以太网传输。一个做客户端,一个做服务器。) B( ~7 M% M" `4 R+ y# K) c& p# i

2 @2 j  f- ?: g' \* U5 ?/ M62、问:stm32f4与其他外设之间的传输可以用以太网来传输吗?
/ [8 d4 _* V, o  z4 QFAE:需要支持以太网的设备,才能实现以太网传输。
2 s8 o0 o* e% u3 y/ c
( K9 p# g$ v9 l$ p63、问:STM32+LWIP通信正常,加上ADC+DMA后,以太网不通了。请教什么原因?
, Z& G8 p3 s3 QFAE:建议查看 管脚复用
/ m3 W/ p1 z) a+ s) e5 W5 V  ?/ ~5 c, F; A& B2 K  j* o; z
64、问:最近在做STM32F107的以太网通信,使用的是TLK110的PHY芯片,基本功能和DP83848类似,现在在SMI通信处卡壳了,进行写操作时,对STM32的MDIO和MDC管脚测量波形,都是正常的,但进行读操作时,无论我刚才写了什么数据,波形时钟不变,出去前面的引导码等等,数据部分时钟是低电平。不知道是不是还有什么地方没有设置,或者是我的硬件搭建有问题?: ?. M) i. Q* O
FAE:请确认PHY的默认地址跟TLK100 datasheet一致,硬件bootstrap正常
4 N- F0 L- T: p* a
$ H) D# G$ ]' {% j0 {. ~) I  E65、问:怎么几个pool和pbuf混淆了呢?
+ a2 f1 m0 [4 O% H, F& o; IFAE:pbuf的内存时从pool里分配的,之所以建立不同pool,是适应不同的需求
; d! x/ }8 e9 X$ _3 J2 g! w# F( T% f. k
66、问:请教下我用的是STM32F407+DP83848做客户端,程序在那里打印可以,确定物理没有收到服务发过来的数据? 谢谢!; k8 V) l$ Y6 I$ X* b0 s8 q
FAE:你可以检查一下MAC还有PHY的配置。我们的F407的EVAL板上用的就是DP83848,Cube库里也有对应使用DP83848的demo,可以对比参考一下。7 n7 L' V% g- {; c5 U5 U# \+ {

5 z/ H& I; R) j5 P, Z* _. j67、问:请问ST 专家,STM32CubeMX中鼠标拉左 边的滑动条时经常自动关闭软件 的问题怎么解决,重装换电脑都 没用。谢谢2 O4 t( z& @- r7 F9 s: w: ?* q% n- {& t
FAE:请关闭电脑上的有道,金山词霸等应用。和CubeMX有冲突。
+ ]+ b, f' j( P+ Z
- `6 `7 k6 U$ `; S6 G" m68、问:请问有没有如何根据自己的需求,来决定如何配置LWIP参数(内存,tcp window等)的教程?! ?3 V& s5 P2 b# Y
FAE:www.stmcu.com.cn上的实战经验里有LAT关于LWIP的配置,里面有一些相关介绍。+ a6 {) H" A; G
7 w( A; _2 [% O$ D! x7 }1 t4 b+ l
69、问:stm32中断机制是否有demo?
% D$ |2 A& {, D% GFAE:有的。请见STM32F756的Cube库里的LWIP的例子" _2 a% N4 M! F6 p) c8 [, j# J
" k8 S; ~1 t0 ?- P% a+ r+ `- `
70、问:STM32f746 EVAL board 的MCU频率和Nucelo 时钟频率一致么?
2 J3 r0 u# X# ^+ zFAE:没太看懂你的问题。你是指系统的时钟?系统时钟一样。指MAC和PHY接口的时钟?EVAL板是MII接口,使用25MHz时钟,NUCELO板是RMII接口,使用50MHz时钟, r3 n3 [2 ?; i
" b) D6 M, m2 `, i! b
71、问:stm32带以太网控制器的用哪一款芯片好点?
2 c8 a, N9 D2 j  ?4 BFAE:以太网外设都一样,其他根据你的应用来选型。* f: D0 f5 q4 i& K$ }! O

' S$ t' H2 \0 P% w% U6 Z6 ~72、问:ping 包和 UDP 测试都会丢包,大家的也会这样吗?
- p. w6 G% V$ c, Y( RFAE:ping丢包有很多情况,有时是延时太长。UDP本来就不是可靠传输的协议。
! r" \5 _/ ~* V4 O8 h: m* o# T$ W/ p1 {0 c6 B! M& Z
73、问:第一条途径,通过高级语言熟悉socket编程,在嵌入式系统中应用 lwIP协议栈。第二种途径,通过分析嵌入式以太网代码,结合TCPIP协议栈规范逐步实践协议栈代码。这两种方式哪个更适合大型项目开发?: ]3 D& v. p3 ~( e* \3 @3 z
FAE:前者。不要重复发明轮子,而且TCP/IP博大精深,玩转它不易。5 w& k8 a, ]0 d4 a/ L# N

* n5 t+ U7 \2 U; a  D1 Q74、问:stm32427以太网IO口线和AD采集口线挨着,会影响AD信号不?( {9 Y+ w* E/ `' a& O4 a0 u
FAE:会
! L) x; ?5 F2 o" z: C4 \+ F6 m$ W* |( e# d/ M/ f* t3 I0 z
75、问:Enthernet  在PCB设计差分信号线宽有要求么?
* Z- q& L0 j& Q6 qFAE:是的+ G2 r6 R$ U/ T) ^7 F7 x# Z

, R# Z6 `! U6 p/ ]/ f- Y76、问:自动协商是什么意思?作用?
) l& _: \, V! n4 q  H& r& CFAE:简言之,就是网线连接的双方,协商诸如通信模式,速度等参数值
5 a% g  X) a' H; l: L, e8 z3 b- @9 }  u& I8 }
77、问:接下来会有lora或nb-iot方面的培训吗?/ m3 ]) K. ?; h0 k$ j# j5 K, y
FAE:计划中,请关注ST官网
* Z8 `: [4 b% A2 x; ~0 {4 X+ U1 {! M4 k* A/ \% ^4 O4 |8 |

: E5 n" I6 _4 \) F. J. o! S
收藏 1 评论4 发布时间:2017-8-30 14:22

举报

4个回答
freeelectron 回答时间:2017-8-30 16:34:00
阔以阔以,这就很赞!
creep 回答时间:2017-8-30 16:41:51
厉害了,这是看视频一个一个记录的吗。
zero99 回答时间:2017-8-31 11:11:15
creep 发表于 2017-8-30 16:415 Y4 H! j' ~  j" L3 V0 ?
厉害了,这是看视频一个一个记录的吗。
. A, N! Z( T5 {3 p' m) i+ z
FAE帮忙给记录的
annQian 回答时间:2018-7-6 16:33:25
发送描述符合接收描述符在内存中是怎么存的?咋没人问呢?

所属标签

相似分享

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版