您尚未登录。

楼主 # 2025-02-05 23:10:32

kmmyk
会员
注册时间: 2025-01-22
已发帖子: 25
积分: 15

F1C200s,C文件里定义全局数据,超过1K就读不到数组里的数据

如果数组小于1K,程序正常,能收到串口发送的数据
但如果大于1K,串口收到的数据就为0
请问,这与连接文件有关系吗?链接文件如下:
OUTPUT_FORMAT("elf32-littlearm", "elf32-bigarm", "elf32-littlearm")
OUTPUT_ARCH(arm)
ENTRY(_image_start)

STACK_UND_SIZE = 0x100;
STACK_ABT_SIZE = 0x100;
STACK_IRQ_SIZE = 0x100;
STACK_FIQ_SIZE = 0x100;
STACK_SVC_SIZE = 0x400;
HEAP_SIZE = 0x00100;

MEMORY
{
    sram : org = 0x00000000, len = 128K
}

SECTIONS
{
    .text :
    {
        PROVIDE(__image_start = .);
        *(.image_header)
        PROVIDE(__text_start = .);
        *(.vectors)
        *(.text*)
        PROVIDE(__text_end = .);
    } > sram

离线

#1 2025-02-06 00:40:17

aozima
会员
所在地: 深圳
注册时间: 2019-05-25
已发帖子: 466
积分: 333.5
个人网站

Re: F1C200s,C文件里定义全局数据,超过1K就读不到数组里的数据

SVC_SIZE = 0x400;

栈溢出了吧?看下你代码中这数据是在全局还是在栈中?

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn