问题记录 2011-6-19

来源:互联网 发布:大数据与统计新思维 编辑:程序博客网 时间:2024/06/05 13:27

前两天碰到一个棘手的问题,自重构过程不能正常结束,串口输出的调试信息如下:

In CF2ICAP
filename = pr_dec.bit
In CF2ICAP ..File Opened..
In CF2ICAP ..Header Sector Read..
In CF2ICAP ..File Closed..
In CF2ICAP ..File Opened..
Number of chars read = 98, Sector Number = 0
In CF2ICAP ..Skip Header..
In CF2ICAP ..Writing Word Number 8 from current sector to ICAP..
In CF2ICAP ..Writing Word Number 16 from current sector to ICAP..
In CF2ICAP ..Writing Word Number 24 from current sector to ICAP..
In CF2ICAP ..Writing Word Number 32 from current sector to ICAP..
In CF2ICAP ..Writing Word Number 40 from current sector to ICAP..
In CF2ICAP ..Writing Word Number 48 from current sector to ICAP..
In CF2ICAP ..Writing Word Number 56 from current sector to ICAP..
In CF2ICAP ..Writing Word Number 64 from current sector to ICAP..
In CF2ICAP ..Writing Word Number 72 from current sector to ICAP..
In CF2ICAP ..Writing Word Number 80 from current sector to ICAP..
In CF2ICAP ..Writing Word Number 88 from current sector to ICAP..

出现上述问题的原因如下:
1) 堆栈过小
解决办法:修改Linker Script文件,将Heap Size和Stack Size改为2048B(默认值是1024B)
image 
2) 串口没有初始化
初始化代码大致如下:

XUartLite UartLite;

Status = XUartLite_Initialize(&UartLite, XPAR_UARTLITE_0_DEVICE_ID);
    if (Status != XST_SUCCESS) {
        return XST_FAILURE;
    }

原创粉丝点击