我在STM32F103C8T6中使用了带有std字符串类型的C ++ Eclipse。我收到如下错误:“区域ROM溢出5980bytes”。

#include "stm32f1xx.h"
#include <string>


std::string a;

int main(void)
{


    for(;;);
}


有什么办法可以解决这个微控制器?

最佳答案

STM32F103C8T6仅具有64 KB的闪存。您的程序不合适。

查看linker output,查看您需要多少。如果可能,您可以获得B版本。
您还可以查看是否可以启用removal of unused objects。由于可能没有甚至不需要的字符串库函数。

c&#43;&#43; - 使用C&#43;&#43;字符串标准的STM32F103C8T6-LMLPHP

*我在猜测您正在使用GNU-ARM。

08-19 18:28