1

这是我的问题的简要总结...

我无法将协调器的数量增加到 16 个以上,并且连接表对于 PAN 和协调器是有限的。PAN 在其连接表中最多可以有 16 个节点,而 Coordinator 仅支持 8 个节点。我有 PIC18F87J11 系列,我正在使用 MPLAB C18 编译器。

协调员:

协调器可以将 NUM_COORDINATOR 设置为 16 ,但其连接表中仅显示 8 个节点。CONNECTION_SIZE 必须为 8 或更低,任何更高的数字都会产生错误。

将连接大小从 8 增加到 16 会产生以下错误。

Error - section '__CONNECTION_TABLE' can not fit the section. Section '__CONNECTION_TABLE' length=0x000001d0
Errors    : 1

将协调器的数量从 16 增加到 32 会产生以下错误。

Error - section 'RANDOM_SEND_BUFFER' can not fit the section. Section 'RANDOM_SEND_BUFFER' length=0x00000118
Errors    : 1

平底锅:

PAN 可以将 NUM_COORDINATOR 设置为 16,并在其连接表中显示 16 个节点。CONNECTION_SIZE 必须为 16 或更低,任何更高的数字都会产生错误。16 个节点已连接到网络后,终端设备无法连接到网络。

将连接大小从 16 增加到 32 会产生以下错误。

Error - section '__CONNECTION_TABLE' can not fit the section. Section '__CONNECTION_TABLE' length=0x000001c0
Errors    : 1

将协调器的数量从 16 增加到 32 会产生以下错误。

Error - section 'RANDOM_SEND_BUFFER' can not fit the section. Section 'RANDOM_SEND_BUFFER' length=0x00000118
Errors    : 1

这是我用于ConnectionTable的代码

#if defined(__18CXX)
#pragma udata __CONNECTION_TABLE
#endif
CONNECTION_ENTRY    ConnectionTable[CONNECTION_SIZE];

这是我用于RANDOM_SEND_BUFFER的代码

 #if defined(__18CXX)
 #pragma udata RANDOM_SEND_BUFFER
 #endif

有人可以向我解释为什么我会遇到这些构建错误吗?

谢谢!

4

1 回答 1

0

默认情况下,链接器部分的最大大小为 256 字节。您必须在链接描述文件中扩展部分的大小。

另请阅读: 如何在 MPLAB C18 中创建大于 256 字节的变量?

于 2013-06-17T20:12:57.823 回答