完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
在f407上移植LWIP协议栈 一到这个地方就进入硬件中断 请问是我的指针没初始化好吗?还是其他原因??
/* entry point to the LwIP stack */ err = netif->input(p, netif); |
|
相关推荐
1个回答
|
|
在STM32F407上移植LWIP协议栈时,如果总是进入硬件中断,可能有以下几个原因:
1. 指针未初始化:确保在使用指针之前对其进行了正确的初始化。如果指针未正确初始化,可能会导致访问非法内存地址,从而触发硬件中断。 2. 中断配置问题:检查STM32F407的中断配置是否正确。确保正确设置了中断优先级、中断向量表等。 3. LWIP配置问题:检查LWIP协议栈的配置是否正确。例如,确保正确设置了网络接口、IP地址、子网掩码等。 4. 硬件问题:检查STM32F407的硬件连接是否正确。例如,确保以太网PHY芯片与STM32F407之间的连接正确,以及以太网PHY芯片的配置是否正确。 5. 驱动问题:检查STM32F407的以太网驱动是否正确实现。确保驱动能够正确处理接收到的数据包,并将数据包传递给LWIP协议栈。 6. LWIP版本兼容性:确保使用的LWIP协议栈版本与STM32F407兼容。如果版本不兼容,可能会导致一些未知的问题。 7. 代码错误:检查代码中是否有逻辑错误或语法错误。这些错误可能导致程序执行异常,从而触发硬件中断。 为了解决这个问题,你可以尝试以下步骤: 1. 仔细检查代码,确保所有指针都已正确初始化。 2. 检查STM32F407的中断配置,确保中断优先级、中断向量表等设置正确。 3. 检查LWIP协议栈的配置,确保网络接口、IP地址、子网掩码等设置正确。 4. 检查STM32F407的硬件连接,确保以太网PHY芯片与STM32F407之间的连接正确。 5. 检查STM32F407的以太网驱动实现,确保驱动能够正确处理接收到的数据包。 6. 确保使用的LWIP协议栈版本与STM32F407兼容。 7. 使用调试工具(如ST-LINK)逐步执行代码,找出触发硬件中断的具体位置。 8. 如果问题仍然存在,尝试使用其他版本的LWIP协议栈,或者寻求社区帮助。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1658 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1568 浏览 1 评论
996 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
695 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1616 浏览 2 评论
1876浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
660浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
528浏览 3评论
547浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
517浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-28 22:30 , Processed in 0.830280 second(s), Total 82, Slave 64 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号