芯片:stm32F107VCT
以太网芯片:DM9161AEP
使用ide:rt-thread studio 基于芯片建立工程
根据教程添加好了HAL_ETH_MspInit函数,board.h中使用的的是#define PHY_USING_DM9161CEP
但是烧录运行时报错如下图


请大佬指点下
以下是rrt源码中的DM9161CEP中原本的配置,是不是还要对于DM9161AEP的需要改成什么样的呢
麻烦大佬们提点下
#ifdef PHY_USING_DM9161CEP
#define PHY_Status_REG 0x11U
#define PHY_10M_MASK ((1<<12) || (1<<13))
#define PHY_100M_MASK ((1<<14) || (1<<15))
#define PHY_FULL_DUPLEX_MASK ((1<<15) || (1<<13))
#define PHY_Status_SPEED_10M(sr) ((sr) & PHY_10M_MASK)
#define PHY_Status_SPEED_100M(sr) ((sr) & PHY_100M_MASK)
#define PHY_Status_FULL_DUPLEX(sr) ((sr) & PHY_FULL_DUPLEX_MASK)
/* The PHY interrupt source flag register. */
#define PHY_INTERRUPT_FLAG_REG 0x15U
/* The PHY interrupt mask register. */
#define PHY_INTERRUPT_MASK_REG 0x15U
#define PHY_LINK_CHANGE_FLAG (1<<2)
#define PHY_LINK_CHANGE_MASK (1<<9)
#define PHY_INT_MASK 0
嗯好的 大佬们 还有报了个内存不足的错,麻烦指点下,图贴上了
检查下是否启动过早,此时内存还没初始化。
应该不是吧,整个运行的顺序都是按照基于芯片建立的工程的的运行顺序。没有改变过顺序,只是添加了使用cubeMX生成的HAL_ETH_MspInit函数,和开启相关的宏定义而已。
@whj467467222 因为是基于芯片建立的,
应该是内存不够用,我把lwip换成1.4.1,就没有内存不足的异常,但是有新的错误
配置中,有几个lwip相关的buf数量,你都改小些就可以减小内存占用。
@aozima 大佬 有新的错误 麻烦您看下 我邀请您了