TI中文支持网
TI专业的中文技术问题搜集分享网站

关于28335外部扩展ram的使用问题,请各位指导指导~~

  1. 我在程序cmd文件中, 定义了一片外扩ram的区域:  PAGE 1 :     ZONE6RAML  : origin = 0x100000, length = 0x040000 /*ZONE6 Sram data */
  2. 我在头文件中进行抽象数据类型定义

    typedef struct { void (* GenBitInvLabel)(Uint16 ,void *); //
    void (* SwapBitInvArray)(void *, Uint16); //¸
    void (* CalcWnTable)(void *); //
    void (* FFTCalc)(void*, Uint16); //
    COMPLEX (* ComplexMUL)(COMPLEX, COMPLEX); //
    void (* CalcComplexModel)(void *, Uint16); //
    void (* CalcComplexPhase)(void *, Uint16); //
    void (* CalcTHD)(void *, Uint16); //
    void (* IFFTCalc) (void *); //
    Uint16 Size; //
    Uint16 Stages; //
    Uint16 BitInvLabel[FFT_SIZE]; //
    Uint16 EnableFalg1; //
    Uint16 EnableFalg2; //

    COMPLEX X1[FFT_SIZE]; /
    COMPLEX X2[FFT_SIZE]; //
    COMPLEX X3[FFT_SIZE]; //
    COMPLEX X4[FFT_SIZE]; //

    union {float f; //
    Uint16 ui[2]; //
    }AmpMagBuf1[FFT_BUF_SIZE]; //
    union {float f; //
    Uint16 ui[2]; //
    }PhaseBuf1[FFT_BUF_SIZE]; 
    union {float f; 
    Uint16 ui[2]; 
    }AmpMagBuf2[FFT_BUF_SIZE]; 
    union {float f; 
    Uint16 ui[2];
    }PhaseBuf2[FFT_BUF_SIZE]; 

    union {float f; 
    Uint16 ui[2]; 
    }AmpMagBuf3[FFT_BUF_SIZE]; 
    union {float f; 
    Uint16 ui[2]; 
    }PhaseBuf3[FFT_BUF_SIZE]; 

    union {float f; 
    Uint16 ui[2];
    }AmpMagBuf4[FFT_BUF_SIZE]; 
    union {float f; 
    Uint16 ui[2]; 
    }PhaseBuf4[FFT_BUF_SIZE]; 
    union { float f; 
    Uint16 ui[2]; 
    }THD1[THD_SIZE]; 

    union { float f;
    Uint16 ui[2]; 
    }THD2[THD_SIZE]; 

    union { float f; 
    Uint16 ui[2]; 
    }THD3[THD_SIZE]; 

    union { float f; 
    Uint16 ui[2]; 
    }THD4[THD_SIZE]; 
    float TotalAmpBuf1; 
    float TotalAmpBuf2; 
    float TotalAmpBuf3; /
    float TotalAmpBuf4; 
    COMPLEX WnTable[WN_SIZE]; /
    Uint16 EnableFlag1Count; /
    }FFT;

    3在源文件中进行对象定义并初始化,并且数据存放于外部ram使用

    FFT MYFFT = MYFFT_DEFAULTS;
    #pragma DATA_SECTION(MYFFT,"ExtRamFile");

    4最后,我在程序中使用时 MYFFT.GenBitInvLabel(MYFFT.Stages,&MYFFT);  MYFFT.GenBitInvLabel的地址指针指向(0x8E2658D2)并不指向函数的地址,很明显,在上面定义对象时没能进行初始化

    5我想问的是,外部ram定义的对象,如何可以在建立的时候对其初始化,麻烦各位指导一下

赞(0)
未经允许不得转载:TI中文支持网 » 关于28335外部扩展ram的使用问题,请各位指导指导~~
分享到: 更多 (0)