我使用DA14580上的Keil-uvision编译器得到这个错误
\out\full\U emb(输出\完整\U emb)_系统内存.axf:错误:L6406E:执行区域中没有与.hardfault\u handler.o(.text)匹配的任何选择器的空间。
\out\full\U emb(输出\完整\U emb)_系统内存.axf:错误:L6406E:执行区域中没有与.gpio.o(i.gpio\u SetPinFunction)匹配的任何选择器的空间。
\out\full\U emb(输出\完整\U emb)_系统内存.axf:错误:L6406E:执行区域中没有与.gpio.o(i.gpio\u ConfigurePin)匹配的任何选择器的空间。
\out\full\U emb(输出\完整\U emb)_系统内存.axf:错误:L6406E:执行区域中没有空间。任何与gpio.o(i.gpio\u SetInactive)匹配的选择器。
\out\full\U emb(输出\完整\U emb)_系统内存.axf:错误:L6406E:执行区域中没有空间。任何与gpio.o(i.gpio\u SetActive)匹配的选择器。
\out\full\U emb(输出\完整\U emb)_系统内存.axf:错误:L6406E:执行区域中没有空格。任何与d2f.o(.text)匹配的选择器。
\out\full\U emb(输出\完整\U emb)_系统内存.axf:错误:L6406E:执行区域中没有与.arch\u main.o(.constdata)匹配的任何选择器的空间。
\out\full\U emb(输出\完整\U emb)_系统内存.axf:错误:L6406E:执行区域中没有与.ffixui.o(.text)匹配的任何选择器的空间。
\out\full\U emb(输出\完整\U emb)_系统内存.axf:错误:L6406E:执行区域中没有空格。任何与f2d.o(.text)匹配的选择器。
\out\full\U emb(输出\完整\U emb)_系统内存.axf:错误:L6406E:执行区域中没有空格。任何与strcpy.o(.text)匹配的选择器。
\out\full\U emb(输出\完整\U emb)_系统内存.axf:错误:L6406E:执行区域中没有与.ANY选择器匹配的app.o(.constdata)的空间。
\out\full\U emb(输出\完整\U emb)_系统内存.axf:错误:L6406E:执行区域中没有与.ffltui.o(.text)匹配的任何选择器的空间。
\out\full\U emb(输出\完整\U emb)_系统内存.axf:错误:L6406E:执行区域中没有与.gpio.o(.constdata)匹配的任何选择器的空间。
\out\full\U emb(输出\完整\U emb)_系统内存.axf:错误:L6406E:执行区域中没有与.o.o(.text)匹配的任何选择器的空间。
\out\full\U emb(输出\完整\U emb)_系统内存.axf:错误:L6407E:聚合大小为0x300字节的节无法放入任何选择器。
但是,我使用的编译器的有限版本应该在32K时退出。据我所知,32K小于DA14580上的可用空间。为什么我会犯这个错误呢?
是不是32K与数据/常量/代码有关,不包括RAM?
我开始相信32K限制只是代码和常量(比如字符串)。