ADSP-21489 ,using  the Asynchronous Memory problem?

hello,everyone

       the ADSP489      DATA 0-7     connect    DATA0-7        

      the ADSP21489   A 0-11         connect   A0-11  

      the ADSP21489    RD,WR    connect   RD,WR

                                  MSO         connect   CS

         In my project, the adsp-21489 connect a profibus chip,using as a asynchronous memory .

         now ,the signal of cs,rd,wr,and the addr is ok,but the signal of data has some problem.when i send the oxff to the data ,all the signal of data is like this ;

        

    my code:

      .....

    {

     *pSYSCTL |=  EPDATA32;

    *pEPCTL |=B0SD; // Mapping Bank 0 to non SDRAM

    *pEPCTL &= ~(B1SD|B2SD|B3SD);

    *pAMICTL0 = ( AMIEN | PKDIS  | BW8 | WS31 | HC2 | PREDIS );

     for(;;)

    {

      IINCHIP_WRITE(0x55,0xff);

  }

....

   

void IINCHIP_WRITE(unsigned int address,unsigned char data)

{

//    Delay(200);

    p_data=0x0070ffff+address;//0x4000000

    *(p_data) = data;

//    Delay(200);

}

please give me some advice!

thanks

                                                                 jett

  • Try to separate out if this is a DSP side issue or an issue with the connected device.

    I would move the MS0 signal to a test pin and drive the pin that is currently assigned to MS0 a constant high.

    Then do your write access and have a look. Now that the peripheral should be always deselected you can see if the correct data is driven out by the DSP and also verify the timing.

    If this looks good, then you are likely dealing with a bus contention with your peripheral trying to drive data when you want it to be in receive mode.

    Klaus