2

我在 stm32f407 上编程并使用 vsprintf 访问分配给 argv 的所有参数,例如:

va_list argv;

va_start(argv, __format);


vsprintf(buffer, __format, argv);


va_end(argv);

但是程序挂在 vsprintf 中。我修改了 stm32_flash.ld :

      ._user_heap_stack :
  {
    . = ALIGN(4);
    PROVIDE ( end = . );
    PROVIDE ( _end = . );
    PROVIDE ( __end__ = . ); 
    . = . + _Min_Heap_Size;
    . = . + _Min_Stack_Size;
    . = ALIGN(4);
  } >RAM

Makefile 中的 Cpu 标志:

CFLAGS += --specs=rdimon.specs -Wl,--start-group -lgcc -lc -lm -lrdimon -Wl,--end-group

有谁知道如何解决这个问题?请帮我。非常感谢。

4

0 回答 0