• Join
  • Sign In with my.TI Login
Texas Instruments
  • Products
  • Applications
  • Tools & Software
  • Support & Community
  • Sample & Buy
  • About TI
Sample & Purchase Cart Sample & Purchase Cart
  • Search
  • Advanced
TI E2E™ Community
  • Support Forums
  • Blogs
  • Groups
  • Videos
  • 简体中文
  • More ...
TI Home » TI E2E Community » Support Forums » Data Converters » Precision Data Converters » Precision Data Converters Forum » SDI polarity for ADS8332
Share
Precision Data Converters
  • Forum
  • Files
  • E2E Wiki
Options
  • Subscribe via RSS
Check out
The Signal blog
  • $core_v2_blog.Current.Name

    Pop Quiz!

    Posted 1 day ago
    by Bruce Trump
    Put away your books and take out a sheet of paper. Each question...
  • $core_v2_blog.Current.Name

    Settling Time

    Posted 7 days ago
    by Bruce Trump
    Settling time is the time required for an op amp to respond to...
  • $core_v2_blog.Current.Name

    Slew Rate—the op amp speed limit

    Posted 14 days ago
    by Bruce Trump
    Slewing behavior of op amps is often misunderstood. It’s...

Forums

SDI polarity for ADS8332

This question is answered
Leonard Jowers86084
Posted by Leonard Jowers86084
on Nov 30 2011 20:46 PM
Prodigy80 points

I am converting an existing implementation to an ADS8332. I am having some issue so I came to the forum. I noticed in another post, SDI waveforms with the opposite polarity than what my earlier ADC used. For the ADS8332 is the SDI signal nominally low going high, or nominally high going low? --- Thanks in advance. --- Leonard

A/D converters ADS8332 SDI
Report Abuse
  • Reply
You have posted to a forum that requires a moderator to approve posts before they are publicly available.
All Replies
  • Michael W
    Posted by Michael W
    on Dec 01 2011 15:44 PM
    Expert3285 points

    Hello Leonard,

    The ADS8332's focus is on the falling edge. So, if CPOL = 0, then CPHA = 1 (since phase 1 would be the second active edge => First falling edge). If CPOL = 1, then CPHA = 0 (since phase 0 would mean first active edge => First falling edge). [Also important to note that /CS must toggle]

    Regards,

    Michael W

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Leonard Jowers86084
    Posted by Leonard Jowers86084
    on Dec 01 2011 16:30 PM
    Prodigy80 points

    Michael, thanks. I am working with a 5409 and do not see anything in the 5409/ADS8332 literature that references both CPOL & CPHA (except one mention in SBAS363B that CPOL=1 and CPHA=0). The serial link "appears" to work, but my results are oxFFFF for all channels (except for the lsb). That leads me to believe that the ADS8332 is not reading my analog input channel selection. I drop /CS to read and write. I've tried write then read, and read then write ... no difference. I am going through the ADS8332EVM to get to the ADC. Any suggestions? --- Leonard. 

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Tony Calabria
    Posted by Tony Calabria
    on Dec 01 2011 19:12 PM
    Mastermind42820 points

    Hi Leonard,

    Finding the critical edge for this device may be a little tricky. In this particular interface, the SDO data bits do not change on a specified clock edge but, instead, a fixed time after the falling edge (tD1, tD2 timing specs). Therefore, depending on the speed of your SCLK and the data setup and hold times for your microcontroller or FPGA, you could read back data on either the rising edge or falling edge of SCLK without a problem. Latching data into the converter (SDI) is done on the falling edge of SCLK and you can see this looking at the tSU4 and tH3 timing specs in the timing diagrams section of the data sheet.

    Hope that helps,

    Regards,

    Tony Calabria

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Michael W
    Posted by Michael W
    on Dec 02 2011 10:05 AM
    Expert3285 points

    Thanks Tony for helping to clerify!

    Also, assuming by '5409' you mean TMS320VC5409 DSP, you'll want to follow Figure 5-23 or 5-26.

    Regards,

    Michael W

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Leonard Jowers86084
    Posted by Leonard Jowers86084
    on Dec 02 2011 11:01 AM
    Prodigy80 points

    Thanks. I may not have a document that I need. It is a TMS320VC5409, but I do not find a Figure 5-23 or 5-26 in any of my literature. What document is that?

     

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Leonard Jowers86084
    Posted by Leonard Jowers86084
    on Dec 02 2011 11:07 AM
    Prodigy80 points

    Sorry. I had it. SPRS082F.

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Michael W
    Posted by Michael W
    on Dec 02 2011 11:08 AM
    Expert3285 points

    The literature that I'm looking at is the latest from the product folder [SPRS082F, Revised October 2008]

    Figure 5-23 is on page 74, and 5-26 is on page 77.

    Regards,

    Michael W

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Leonard Jowers86084
    Posted by Leonard Jowers86084
    on Dec 05 2011 15:47 PM
    Prodigy80 points

    No joy yet. Please give me some insight into these:

    1. Is it necessary that I issue a "Read Data" (0xD000) to get meaningful traffic from the ADS8332? For example, after every channel select?

    2.Under what conditions should SDO display voltage levels rather than a serial stream?

    The basic cycle (1-5) from which I am trying to get meaningful results is:

    0.     My “Write CFR” is 0xE0FF.

    1.      Lower FS/!CS

    2.     Issue a "Select analog input channel" command

    3.     Wait for transmit buffer empty

    4.     Read data

    5.     Raise FS/!CS

    FS/!CS is almost a square wave on 3.3us

    I properly decode the "Select analog input channel" on SDI.

    I measure the inputs to the ADS8332 and see that all of the channels are 0V except two that I have set to be 1.88V and 2.6V.

    The scope shows SDO goes high after FS/!CSß0 for about 1us.

    Can you tell from this what I am doing wrong?

     

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Tony Calabria
    Posted by Tony Calabria
    on Dec 05 2011 17:47 PM
    Verified Answer
    Verified by Michael W
    Mastermind42820 points

    Hi Leonard,

    First off, double check that you are having SDI input data change on the rising edge of SCLK so that it is valid when it is latched on the falling edge of SCLK.

    Second, what voltage do you have on each specific channel?

    Third, it looks like you are planning to use the part in manual channel mode with auto trigger. The ADS8331/ADS8332 supports 3 of the 4 possible configurations of channel select mode and start conversion mode. Auto, channel select mode with Auto-trigger mode is supported, Auto-channel select mode with Manual-trigger mode is supported, and Manual-channel select mode with Manual-trigger mode is supported. Manual-channel select mode with Auto-trigger mode is not supported. The reason being, in Auto-trigger mode their is not control over /CONVST to EOC timing causing you to violate the timing specs when attempting to change the channel in manual channel mode. If run in Manual-channel select mode with Auto-trigger mode, the ADC will will continuously output the converted data for channel zero.

    However, there is a "work-around" way to change channels and get the ADC to work in Man-channel select mode and Auto-trigger. To run it in this mode and change channels follow the steps below:

     - Power on the ADC and set the CFR accordingly for Auto-trigger and Manual-channel select. You can perform a read back of the register is verify that you are communicating with the ADC correctly and set it correctly.

    - Check the output of the ADC, you should reading back the converted data from channel zero. 

    - If you want to change to read channel one - Write to the CFR to set the ADC to Manual-trigger mode. 

    - Write to the ADC to set the internal mux to channel one. 

    - Write to the CFR to set the ADC back to Auto-trigger mode. 

    - Now your output will read back the converted data for channel one. You can repeat this process to read back any of the channels in auto-trigger, manual-channel select mode. 

    As of right now I do not know if we plan to write this procedure into the data sheet. I know we plan to revise the data sheet to make it clear that auto-trigger, manual-channel select mode is a supported mode in the ADC. However, if you follow the procedure above you can get it working. 

    Regards,

    Tony Calabria

     

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Leonard Jowers86084
    Posted by Leonard Jowers86084
    on Dec 06 2011 11:59 AM
    Prodigy80 points

    Thanks Tony. I tried it and it appears to work; however, the added communications eats up my processor time. I will use one of the supported modes. Thanks again.

     

     

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Leonard Jowers86084
    Posted by Leonard Jowers86084
    on Dec 12 2011 12:08 PM
    Prodigy80 points

    Tony,

    I am still wrestling with this. After your last post, I beefed up my initialization to read back the CFR. With some rigging I got it to give me a valid feedback one time, but that was all. After looking at my waveforms, and comparing them with another post ("ADS8332 stops EOC operation in Auto channel sel mode"), I see issues, but have not been able to resolve them. I have attached a JPG of my waveforms (at this point I have ignored that I have not properly communicated with the ADS8332 so that I can see McBSP working). The TMS320VC5409 is master  (CLKSTP=10, CLKXP=1, and others per Table 2-31, SPRU302) .

    • 1. My SDI signal is inverted compared to the other post.
    • 2. My SCLK has 16 falling edges whereas the other post has 19 (I suppose that is because they are using tags; since I am failing to program the ADS8332 I cannot verify.)
    • 3. My SCLK appears to be 150ns out in front of my data (If I change CLKXP, SCLK is inverted but the clock aligns with the data).
    • 4. My SDO is unstable near zero! but appears coincident with FS/CS at 5V!

    Help! Does it look like I have a sick part?

    Leonard

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Tony Calabria
    Posted by Tony Calabria
    on Dec 12 2011 17:59 PM
    Mastermind42820 points

    Hi Leonard,

    Do you have the ability of disconnecting your SCLK line from the ADC to see if the issue is the SCLK pin from the ADC is fighting to pull the SCLK line low or if there is something else going on? Does this always happen or just happen once you changed your SCLK to idle high?

    Regards,

    Tony

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Vincent Hu
    Posted by Vincent Hu
    on Sep 13 2012 21:43 PM
    Prodigy20 points

    Hello Tony,

    I received your email and response.  I had tried your procedure mentioned.  It's ok when hardware only link to IN1 and set Auto-trigger and Manual channel select mode.  I measured waveform of IN1 and MUXOUT on chip ADS8331.  It's ok and AD value also be ok.

    So I want to confirm some point:

    1.  If hardware only use one channel, it should be better to link signal to IN0, right ?  It's easier to initialize Auto-Trigger and Manual channel select mode , and send CFR 0x0000 to select channel zero.  Because channel zero is the default channel in this mode.

    2. Because i want to use 500kSPS, so i must select Auto-Trigger mode , right?

    3. ADS8331 datasheet not mentioned this procedure in latest version, when will you plan to upgrade datasheet?  Maybe there will be some users meet the same issue as mine if they just has one channel and link to IN1/2/3 ,and use Auto_Trigger and Manual channel select mode.

    Thank you for your help. And hope your response ASAP.   ^_^

     

    Best Regards,

    Vincent

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Tony Calabria
    Posted by Tony Calabria
    on Sep 14 2012 09:02 AM
    Mastermind42820 points

    Hi Vincent,

    1. If you decide you want to only use one channel with auto trigger mode, channel 0 would be best. If you want to use a different channel for the single channel, you need to put the ADC in manual trigger mode to switch the mux. After the mux is switched, you can put the ADC back into auto-trigger mode to begin conversions. See the comment under Table 1 on page 22 of the data sheet.

    2. Not a must. You can use the /CONVST pin to control the data rate timings. Pulsing the pin every 500kSPS would achieve the same data rate as using auto-trigger mode.

    3. It was just recently added a month or two ago. It was added under Table 1 on page 22 of the data sheet. The e2e post discusses the work around procedure in some more detail.

    Regards,

    Tony Calabria

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
TI E2E™ Community
  • Support Forums
  • Blogs
  • Videos
  • Groups
  • Site Support & Feedback
  • Settings
TI E2E™ Community Groups
  • TI University Program
  • Make the Switch
  • Microcontroller Projects
  • Motor Drive & Control
Other Communities
  • Deyisupport
  • Designsomething.org
  • beagleboard.org
  • TI on Element 14
  • TI on TechXchangeSM
Other Technical & Support Resources
  • WEBENCH® Design Center
  • Product Information Centers
  • Technical Documents
  • TI Design Network
  • TI Technical Articles
  • TI Training

All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.

Content on this site may contain or be subject to specific guidelines or limitations on use. All postings and use of the content on this site are subject to the Terms of Use of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Terms of Use of this site. TI, its suppliers and providers of content reserve the right to make corrections, deletions, modifications, enhancements, improvements and other changes to the content and materials, its products, programs and services at any time or to move or discontinue any content, products, programs, or services without notice.

Follow Us Texas Instruments on Facebook Texas Instruments on Twitter Texas Instruments on LinkedIn Texas Instruments on Google+
TI Worldwide | Contact Us | my.TI Login | Site Map | Corporate Citizenship | mobile m.ti.com (Mobile Version)

TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs and
embedded processors, along with software, tools and the industry’s largest sales/support staff.

© Copyright 1995-2013 Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy Policy | Terms of Use