This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TMS320F28335: Reading From an External ADC Into XINTF Zone 6 With A Parallel Interface

Part Number: TMS320F28335

Hi, I am using the TMS320F28335 to read data from a AD7657 ADC using a parallel interface without much luck. The examples I've found all seem to be using SPI. 

I have already configured the external zone. XINTF clock is enabled, the timing registers are set, x16 data bus selected, the appropriate XD, XA, XZCS, etc. are selected. 

A pointer to the first memory location of zone 6 is used to read the data from the external zone. 

A potentiometer is connected to the input of the ADC. I am viewing the contents of zone 6 using the Memory Browser in CCS. There seems to be random values populating the memory. I have command the ADC to reset so I expect zeros to be returned.

Has anyone else worked with peripherals which communicate to external zones outside of SPI that can point in the right direction?   

 

  • Himesh,

    It seems like this should be possible, but I am not familiar with the AD7657 device. Do the signals look correct on an o-scope or logic analyzer?

    Debugging XINTF communication can be difficult because the signal sequence is executed through a state machine.

    One thing you can try is to max-out all of the XINTF timings to slow down the bus as much as possible. This will help to eliminate timing as a potential cause of failure.

    If that does not work, you may want to use the GPIO function of the XINTF pins to establish manual write/read communication with the AD7657.
    You will have granular control over the signal sequencing with GPIO. Once communication is confirmed, you can then try to configure the XINTF to behave like the working GPIO sequence.

    -Tommy
  • Hi Tommy,

    Thank you for your feedback. I took your advice and configured the XINTF pins as GPIOs. Unfortunately, the XRD pin is not a GPIO and therefore, I couldn't manually establish communication. 

    I did end up solving the issue however, I reverted back to my old configuration and initiated an ADC read by using a pointer to the memory mapped address. The following post guided me through this process: 

    https://e2e.ti.com/support/microcontrollers/c2000/f/171/p/215317/760567

    Thanks,

    Himesh

  • Himesh,

    I'm glad that you got things working. Thanks for reporting back your results.

    -Tommy