在SRAM实验中能不能这样写 用于测试

2019-07-20 09:36发布




        LCD_ShowString(x,y,239,y+16,16,"Ex Memory Test:   0KB");
        //每个地址写入一个数据,总共写入1024*1024个数据,刚好是1M字节
        temp =0;
        for(i=0;i<1024*1024;i++)
        {
                FSMC_SRAM_WriteBuffer(&temp,i,1);
                temp+=1;
        }
        //依次读出之前写入的数据,进行校验       
        for(i=0;i<1024*1024;i++)
        {
                  FSMC_SRAM_ReadBuffer(&temp,i,1);
                if(temp != i)
                {
                    delay_ms(10); // 如果进入这个条件,说明写入和读出的数据不一致,有异常
                }
        }       



如果把代码改成上面的,调试发现能进入异常条件中,即写入和读出的数据不一致,此时i=256
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
9条回答
hehelloook
2019-07-21 11:11
菜鸟一个了,大家见笑了,个人也觉得是笑话,u8 temp=0; 哈哈

现在一个疑问请教,在SRAM中定义:u32 testsram[250000] __attribute__((at(0X68000000)));//测试用数组

是不是已经可以说明数组testsram中的内容已经在SRAM中了,如果这样的话,那么读和写SRAM的功能是不是不需要了,即testsram就可以像在RAM中使用一样?

以下函数多余?
void FSMC_SRAM_WriteBuffer(u8* pBuffer,u32 WriteAddr,u32 n)
void FSMC_SRAM_ReadBuffer(u8* pBuffer,u32 ReadAddr,u32 n)

一周热门 更多>