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

【STM32以太网在线培训】+HTTP IAP之一波三折

[复制链接]
衔胆栖冰 发布时间:2017-7-21 14:49
本帖最后由 衔胆栖冰 于 2017-7-21 14:56 编辑 ) t# C- ]4 M+ f! ?, k' u- I' R" W
( H  Z. G4 d5 G0 K  k* {) R
    原本报了线下的培训,结果因为工作原因无法前往参加。没想到社区有视频直播,忙里偷闲的开了小窗口看来起来。按照规矩,先来签个到。
3 T9 n2 f) P, ~   

签到

签到

. w+ b* ?, c$ U+ k. |    上午的培训,主要介绍了网络底层的东西,主要有网络结构、以太网外部phy的使用,MAC、STM32以太网DMA和接收方式轮询(no os),中断(os)等,同时也介绍了lwip部分,主要讲了network interface、lwip memory(接收数据用动态申请)和PCB等。. H1 D( S0 i( T$ y- G
    下午主要是实验环节部分。& }' v5 Y4 d% e- i0 V
     作为一名小白,下载了工程,IAR工程,基于HAL库,集成了lwip和freertos, 对于“一keil到底”和“一直裸奔”的我也是一脸迷茫啊。      QQ图片20170721134302.jpg 0 Y! A: F# g% \  E) v
还好官方提供了“填坑说明”,' |$ Z1 _8 e, o- Q! J6 }& b
QQ图片20170721133948.png
- {, N7 p9 I$ o9 {3 O% m1 u- h# w    这也是挺照顾小白的。而且各种文档都比较齐全。
/ d5 z3 B/ E& o9 I$ G  I  n# G( Y  ^6 E按照规则去填坑:! p- ?4 m$ _( W. F) Z6 F
TODO1:RMII/MII接口设置错误 * @8 a6 j5 O5 v6 K8 M
    找到ethernetif.c ,把 void low_level_init(struct netif *netif)函数中的EthHandle.Init.MediaInterface = ETH_MEDIA_INTERFACE_MII;改为EthHandle.Init.MediaInterface = ETH_MEDIA_INTERFACE_RMII;7 ]( [6 ?7 K" l
TODO2:PHY地址设置错误
9 f3 L* \9 c2 i7 \$ T    找到stm32f7xx_hal_conf.h,把PHY的地址为 #define LAN8742A_PHY_ADDRESS    0x00U
% Y9 S6 G4 }4 D) MTODO3:检查PHY状态寄存器的地址是否错误  5 `5 A5 b- l  t$ {7 \1 C* c, n
    同样在stm32f7xx_hal_conf.h中找到相关的宏,修改如下2 [; ?" i- e4 h! u
    QQ图片20170721131246.png
2 b' p3 O/ D7 m1 h; |! UTODO4:调用netif_add向Lwip协议栈注册网卡接口的代码遗漏
* C3 C# f$ {" u4 ~    找到network.c,把network_init(void)中的netif_add函数补全为netif_add(&Netif, &addr, &netmask, &gw, NULL, ðernetif_init, ðernet_input);
% s5 N+ T; P5 l/ {完成了这4步,编译后下载到开发板并运行,通过串口打印:% X! V; H5 y0 m
    QQ图片20170719194631.png
" G3 r! y, k. \  ~    任务1完成了,可是,问题来了.......* h6 R- |7 `3 Z) u: \1 w
根据规则,按下蓝色按钮,出现如文档提示,但是发y一直没反应,无法进行下一步。/ y8 J5 T; e4 T7 p
    QQ图片20170721140208.png
% L: o- n2 e, }# M检查网络,ping了一下,
! \) D0 `/ q& x1 }" k6 L1 l6 f5 H    07211111ping失败.png : u* Z' R: X' p' ]7 V' s6 v. Q
这网络.......我开始怀疑是不是硬件没连好,于是给开发板烧了个STM32Cube_FW_F7_V1.7.0里的demo跑了一下,: g* V6 _" E2 g1 w/ h
    20170721111800.png ( i" d( \/ E+ G& R
库里的demo能跑,这就尴尬了......
6 S# H5 m# C8 W$ l5 L0 M. V     就在我百思不得其解的时候,丫丫大神来救场了,- a% b  A" Z  ]% U
[原创] 【STM32以太网在线培训】+HTTP协议更新固件 https://www.stmcu.org.cn/module/forum/thread-612628-1-1.html
! m/ `" L! E4 u, L) v' J      把我激动得,马上下了大神的工程,根据大神的提示,一步一步去做,突然意识到我忽略了双bank启动什么鬼,F7这高端货小白还是一次摸。
# i3 v7 Y  n/ p8 j3 }0 K下了个ST-LINK Utility,; Z- H$ J  I+ e+ V* w  q/ S, o
    QQ图片20170721142031.png + t6 q  k2 k% W1 D
修改好之后,erase chip操作,再编译下载。当我摆好姿势准备看结果的时候,现实的一个耳光......         1.png
/ j, e/ {' Y" v/ H  G8 ^此刻我都不淡定了,到底是哪里操作不当?7 o+ ^; n  H8 e: q; x- s- X' l% ?& B' c
      QQ图片20170721134316.jpg 0 {& m$ t! _' q, x$ ]  u& Q9 D
    不是所有的剧本都是喜剧,不是所有的故事都有幸福美满的结局!剩下的操作,等我解决了再补全。
  h6 l# q" d1 k& o& a: f: F
* g6 a$ B; C! p! e2 r
. w- r- j5 a8 H) V! ^8 O    望各路大神指点迷津。小弟不胜感激。
: S7 b& P; y5 m
5 S7 q1 R" s  `2 [
, F/ q# Q% `, K* `8 h, R: ]
9 E; n8 E# U  Z& w
  c: p6 h3 E! p- M/ r% b3 [: N* V  ^/ n3 {; p$ J4 n
收藏 2 评论10 发布时间:2017-7-21 14:49

举报

10个回答
zero99 回答时间:2017-7-21 14:57:48
谢谢分享啦  
Inc_brza 回答时间:2017-7-21 15:14:00
bank的设置是为了解决iap完成之后切换的时候启动不了的问题跟你现在这个现象无关。4 Y5 P% X$ M# C* h. O
然后我看你,发Y没反应的这个问题,我建议你换个串口调试工具试试看!% e3 R" b1 P- d! d9 @2 m' E1 V3 j
putty.rar (448.19 KB, 下载次数: 12)
衔胆栖冰 回答时间:2017-7-21 15:25:40
Inc_brza 发表于 2017-7-21 15:14
0 Y1 Q" L( |: l4 ^% J2 {  g( Ebank的设置是为了解决iap完成之后切换的时候启动不了的问题跟你现在这个现象无关。
: y% \% M! i* g5 `然后我看你,发Y没反应 ...

( }+ [; b; q- b6 E% S谢谢! 可是ping断断续续,是什么问题呢?
Inc_brza 回答时间:2017-7-21 17:03:39
衔胆栖冰 发表于 2017-7-21 15:25
7 ~" {& w- H" V$ x1 D, g) u谢谢! 可是ping断断续续,是什么问题呢?

% l. [9 n6 i( [. k& b这个有可能是自带的协议栈还没有优化过,你可以下载最新的协议栈覆盖进去再尝试尝试
衔胆栖冰 回答时间:2017-7-21 17:47:35
Inc_brza 发表于 2017-7-21 17:03
; \2 w, C* c( {  }: u% T$ a这个有可能是自带的协议栈还没有优化过,你可以下载最新的协议栈覆盖进去再尝试尝试 ...
, X" a# b& ~$ J0 h. f
好的,我再试下,多谢
wangsheng1997 回答时间:2017-7-27 20:37:11
请问你查到ping丢包的原因了吗?
衔胆栖冰 回答时间:2017-7-27 22:02:30
wangsheng1997 发表于 2017-7-27 20:375 m4 \( k$ p- w8 A" X4 R& N
请问你查到ping丢包的原因了吗?

- q; {* v- G& g6 V还没有
wdss1993 回答时间:2018-2-28 11:08:52
学习了!
tangtang83 回答时间:2018-10-25 11:08:27
非常详细,谢谢分享
zimiqi512 回答时间:2018-11-6 08:31:44
你好

所属标签

相似分享

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