DM6437-读写SRAM测试过程


硬件平台:DM6437EVM

调试工具:CCS3.3

编写SRAM  读写程序:

Uint32 memfill_print( Uint32 start, Uint32 len, Uint32 val ) {     Uint32 i;     Uint32 end = start + len;     Uint32 errorcount = 0;

/* Write Pattern */     for ( i = start; i < end; i += 4 )     {         *( volatile Uint32* )i = val;     }  //从起始地址开始,依次写入同一个测试值         /* Read Pattern */     for ( i = start; i < end; i += 4 )     {         if ( *( volatile Uint32* )i != val )         {             errorcount++;             break;

        }  //从起始地址开始,依次将存入的值打印输出         printf( "%x\n",*( volatile Uint32* )i );     }return errorcount; } 

  (volatile Uint32 *)i :将 i 强制转换成易变指针,指向start,start为SRAM写入的首地址。

*(volatile Uint32 *)i :改写 i 指向地址中的值。

编写test函数:

Int16 sram_test_1( void )
{
    Uint32 errors = 0;
    Uint32 base = EMIF_CS2_BASE;  //起始地址在evmdm6437.h中定义
								  // #define EMIF_CS2_BASE  0x42000000
    Uint32 size = 0x00000100;  
  
    /* Initialize SRAM */
    sram_init( ); //sram初始化

    /* Data tests */
    memfill_print( base, size, 0xFFFAAAAA );
}

编写主函数:

void main( void )
{
    /* Initialize BSL */
    EVMDM6437_init( );
    sram_test_1( );
  
    printf( "\n***ALL Tests Passed***\n" );
    
}


运行结果正常:


易失败点:

①在.c文件中使用printf函数的时候要注意加上stdio.h

②测试的时候将EVM板上的JP2跳线帽跳到SRAM,方能进行SRAM的测试。

你可能感兴趣的:(测试,读写,EVM,sram,DM6437)