请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:TM4C129ENCPDT 您好!
我正在使用 NDK 库通过链路本地接口在 IPv6套接字上接收和传输 TCP 数据。 这种情况很好、我没有遇到任何问题。
但是、当 Tiva 接收到一个可路由的网络 IPv6地址(前缀20XX)时、它在大约10分钟内出现故障。
该地址通过在本地路由器上运行的 SLAAC 服务器委派给 Tivas。
以下是当我遇到问题时的 HWI 故障跟踪:
"已解码异常":{ "已解码":"硬故障:强制:BUSFAULT:IMPRECISERR" }、 "异常上下文":{ "$addr":"0x20030680"、 "$type":"TI.SYSBIOS.family.ARM.M3.HwI.Excal.HandText"、 "threadType":{}、"0x20030680" 、"0x200bstack"、"0x200d520" "threadStackSize":"3072"、 "r0":"0x0"、 "r1":"0x86"、 "r2":"0x1"、 "R3":"0x0"、 "R4":"0x0"、 "R5":"0x0"、 "R6":"0x86"、 "r7":"0x0"、 "R8":"0x2002A936"、 "R9":"0x20038e5c"、 "R10":"0x2002d42c"、 "r11":"0x0"、 "R12":"0x0"、 "sp":"0x20030758"、 "LR":"0x63d9b"、 "PC":"0x68b5c"、 "PSR":"0x8100f000"、 "ICSR":"0x803"、 "MMFSR":"0x0"、 "BFSR":"0x4"、 "UFSR":"0x0"、 "HFSR":"0x40000000"、 "DFSR":"0x1"、 "MMAR":"0xe000ed34"、 "BFAR":"0xe000ed38"、 "AFSR":"0x0" }、 "异常调用栈":{ "0 LLI6IsRouterStatMachine at lli6.c:217:":"PC=0x00068B5C"、 "1 LLI6Update at llib6.c:":"PC=0x0006IPV6 :0x0006485r: v"、"0x0006Ript 086a:0x0006rb:0x0006:0x0006rb:0x0006r40c:0x0006rb:0x0006rb:0x0006rb:0x0006:0x000a:0x000a:0x0006rb "PC=0x00059E9A"、 "7 NIMUReceivePacket at NIMu.c:304:":"PC=0x0005AF20"、 "8 EMACSnow.c: c6的 EMACSnow_pkt_service:"PC=0x0003F268"、"9 NIMUPacketService at EMACSnu.c:0x000429" 、"NE_CC_TRS=0x0004674":0x0004_NE_CL_CL_TRS=0x00013":0x0004674_NE_CL_CL_CL_CL_0004674_CL_CL_TRB:"0x0004_NE_0004_NETRS=0x0004_0004674_CL_CL_NE.00064_CL_CL_CL_NE.0004_TRS=0x0004_CL_0004_00064_0004_CL_CL_TRS=0x0004_00064_00064_00015"
我已验证所有任务(包括 NDK 任务)没有耗尽堆栈空间。
我在堆上还有可用的内存。
我将 NDK 修订版本更新为2.25.01.11、但未解决问题。
它看起来是 Tiva 接收到的最后一个数据包、是 ICMPv6类型的数据包。
另一个论坛帖子似乎描述了可能相同的问题:
http://e2e.ti.com/support/microcontrollers/other/f/908/t/680689
在最后一篇文章中、有人提到此问题可能已作为 NDK 中的错误进行跟踪。
谢谢、
Brandon Rivera