0

在我的应用程序中,我有一个在 Nordic Semiconductor 的 nRF51422 IC 内运行的 Cortex M0。

尝试使用Basic Compression Library时,我让 LZ 和 Rice 正常工作,但 Huffman_Compress 给了我一个硬件故障。我怀疑处理器正在访问未对齐的内存地址,但如何确定呢?

您能否快速查看代码以查看是否可以找到错误?这是来自开发者网站的代码。在这段代码中,我尝试在处理器挂起之前使用 RTT 打印东西,它完成了_Huffman_Hist( in, sym, insize );但甚至没有进入_Huffman_MakeTree( sym, &stream );函数。

提前致谢!=)

4

1 回答 1

0

您可能会在此处看到堆栈溢出Huffman_Compress()需要多于 1 KB 和_Huffman_MakeTree()多于 2 KB的额外堆栈空间,因此此时您总共获得约 3 KB。

默认的链接器脚本只为堆栈分配 2 KB,其中大部分空间用于软设备无线电操作。

于 2015-06-21T22:41:24.070 回答