• 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 » ADS1158 MUXSCH register
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 15 days ago
    by Bruce Trump
    Slewing behavior of op amps is often misunderstood. It’s...

Forums

ADS1158 MUXSCH register

This question is answered
edison du
Posted by edison du
on Jul 17 2012 00:41 AM
Prodigy80 points

hello:

 I'am using the ADS1158, on my board ,there are 3 ADS1158 for 48th channel; I have read the datasheet, in the fixed channel mode , how to confiugurat the MUXSCH

 register for channel select .for example: I want to select the second channel, the value of MUXSCH is 0x01, if i want third channel , its value is 0x30 , it's a right?

In addition, in the fixed channel mode , I read the value of s.tatus byte from the channel data format , the value is 0x9F , the BITS CHID[4:0] is the value: 1F, but it is the channel ID. why?

best regards.

edison

Report Abuse
  • Reply
You have posted to a forum that requires a moderator to approve posts before they are publicly available.
All Replies
  • Tony Calabria
    Posted by Tony Calabria
    on Jul 17 2012 14:55 PM
    Verified Answer
    Verified by Tony Calabria
    Mastermind42820 points

    Hi Edison,

    A couple things off the bat -

    - If you have having trouble writing and reading back what you expect, I would suggest double checking the phasing and polarity of your clocking to make sure you are changing data on the correct edge and reading on the correct edge.

    - Fixed channel mode does not support AINCOM, meaning that you cannot use it in typical single ended fashion. You will need to dedicate one of the 16 channels to ground if you would like to do single ended measurements.

    - The MUXSCH register uses the first four bits to set the AINP channel and the second four bits to set the AINN channel. Writing the value of 0x01 will set the positive channel to AIN0 on the converter and the negative channel to AIN1 on the converter. Another example would be If you write something like 1110 0011 into the register, you will be setting the positive input to channel channel 14 (1110) and the negative input to channel 3 (0011).

    - The status byte is disabled in fixed channel mode. See Note 2 in the read back section on page 29 of the data sheet. There is no channel ID bits to be read back in fixed channel mode.

    Regards,

    Tony Calabria

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • edison du
    Posted by edison du
    on Jul 18 2012 03:47 AM
    Prodigy80 points

    hello, Tony.

             Thanks for your introduction, the question have been obviated by me. In debugging, I find another quesiton:

    At the font-end, the input votage is 2.5V, why the conversion value is about 15000 instead of the normal value 65536/2? I don't  know the reason! My circuit configuration such as:

    - In Auto-Scan mode.

    - VREFP = +5V ; VREFN = GND ; AINCOM = GND; AVDD = 5V; AVSS = GND; DVDD = 3.3V; DGND = DGND.

    - MUXOUTP and MUXONTN after connecting the Low Pass Filter output the ADCINP and ADCINN.

    - I'm no using the chopping mode.

    I want to know the reason .

     

    Best regards,

    edsion

     

    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 Jul 18 2012 10:08 AM
    Suggested Answer
    Mastermind42820 points

    Hi Edision,

    The input range to the ADC is +/-Vref meaning  that when used differentially with a 5V reference, you can set AIN+ to 5V and AIN0 to 0V or AIN+ to 0V and AIN- to 5V. Therefore, using the converter in a single ended fashion, you will only have half the code range available (65536/2 =32767). Setting the input to 2.5V is half of the Vref, so you should see about 32767/2 = ~15000 codes.

    Regards,

    Tony Calabria

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • edison du
    Posted by edison du
    on Jul 18 2012 23:00 PM
    Prodigy80 points

    Hi Tony:

    Thanks a lot, I see that if i want to use the full code, I must use the -2.5V to +2.5V as the reference voltage, It's that?

     

    Best Regards

    Edison

    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 Jul 19 2012 09:40 AM
    Verified Answer
    Verified by Tony Calabria
    Mastermind42820 points

    Hi Edison,

    If you want to use the entire code range while using the converter in a single ended fashion you will want to use a 2.5V reference and set Aincom to also 2.5V. This will allow you to swing and of the single ended inputs from 0 to 5V while keeping the code range in tact. When the input is within the range of 0 to 2.5V, you will be using the -Vref range. When in the range of 2.5V to 5V, you will be using the +Vref range.

    Regards,

    Tony Calabria

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • edison du
    Posted by edison du
    on Jul 23 2012 21:07 PM
    Prodigy80 points

    Hello, Tony:

    I'm completely see you ideas, thanks a lot !

     

    Best Regards

    Edison

     

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • edison du
    Posted by edison du
    on Aug 01 2012 21:37 PM
    Prodigy80 points

    Hello, Tony:

               In my debugging, I have find a difficult:

    when i read the converted value in the Auto-Scan mode, the initial channel of starting the AD conversion was not same at per time, why this phenomenon was existing? there is register responsible for the configuration? Becasue i want the AD conversion is started from the fixed channel at per time, thanks a lot .

     

    Edison

    Best Regards

    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 Aug 02 2012 10:02 AM
    Suggested Answer
    Mastermind42820 points

    Hi Edison,

    The measurement priority order is shown in Table 10 shown on page 32.  Here you can see where the START pin / pulse convert command is assessed in comparison to where the index to the next channel data is ready. We show that once a START is issued, the second /DRDY pulse immediately following START high is the highest priority data you are looking for. Take a look at this post for some more information on channel indexing and the priority table I am referring to -

    http://e2e.ti.com/support/data_converters/precision_data_converters/f/73/p/41261/144229.aspx#144229

    Regards,

    Tony Calabria

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • edison du
    Posted by edison du
    on Aug 03 2012 05:33 AM
    Prodigy80 points

    Hi,Tony:

          My registers was configured such as: MUXDIF=0x00, MUXSG0=0xff, MUXSG1=0xff. but after pulse convert command i read channel data ,I note the first start convert channel  is no same after 16 times per cycle; sometimes the first channel number is AIN15, sometimes the first channel is AIN2 and son on. I dont know the reason!

    Edison

    Regards

    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 Aug 08 2012 11:59 AM
    Verified Answer
    Verified by Tony Calabria
    Mastermind42820 points

    Hi Edison,

    Verify that you have the START pin low when using the pulse convert command. Here are some questions that would better help solve this issue -

    Is the device indexing correctly? As in, when you get it running correctly, as you pulse the convert command, the converter is indexing to the correct auto scan priority order?

    Is the issue that the starting channel is appearing random?

    The channel priority will reset anytime a write command is made. Are you writing to any GPIO registers etc. in between the sent pulse convert commands?

    Regards,

    Tony Calabria

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • edison du
    Posted by edison du
    on Aug 08 2012 20:19 PM
    Prodigy80 points

    Hi Tony:

    "The channel priority will reset anytime a write command is made. Are you writing to any GPIO registers etc. in between the sent pulse convert commands?" ,your idear is that I can't accesse any register (writing register) in the Auto-Scan mode except the pulse convert command, If I write any register (except the pulse convert command) , the indexing may bee updated?

    If that right , I think i find the reasons for my question , my AD convertion vlaues of 3ICs such as:

                        conversion X-AXIS: 015329ADC output falg: 151015
    090021AD conversion X-AXIS: 015380ADC output falg: 136000
    090021AD conversion X-AXIS: 015309ADC output falg: 137001
    090021AD conversion X-AXIS: 015236ADC output falg: 138002
    090021AD conversion X-AXIS: 015367ADC output falg: 139003
    090021AD conversion X-AXIS: 015338ADC output falg: 140004
    090021AD conversion X-AXIS: 015377ADC output falg: 141005
    090021AD conversion X-AXIS: 015441ADC output falg: 142006
    090021AD conversion X-AXIS: 015428ADC output falg: 143007
    090021AD conversion X-AXIS: 015386ADC output falg: 144008
    090021AD conversion X-AXIS: 015427ADC output falg: 145009
    090021AD conversion X-AXIS: 015486ADC output falg: 146010
    090021AD conversion X-AXIS: 015368ADC output falg: 147011
    090021AD conversion X-AXIS: 015356ADC output falg: 148012
    090021AD conversion X-AXIS: 015344ADC output falg: 149013
    090021AD conversion X-AXIS: 015453ADC output falg: 150014
    090021AD conversion Y-AXIS: 015440ADC output falg: 151015
    082021AD conversion Y-AXIS: 015367ADC output falg: 136000
    082021AD conversion Y-AXIS: 015442ADC output falg: 137001
    082021AD conversion Y-AXIS: 015270ADC output falg: 138002
    082021AD conversion Y-AXIS: 015238ADC output falg: 139003
    082021AD conversion Y-AXIS: 015371ADC output falg: 140004
    082021AD conversion Y-AXIS: 015341ADC output falg: 141005
    082021AD conversion Y-AXIS: 015267ADC output falg: 142006
    082021AD conversion Y-AXIS: 015443ADC output falg: 143007
    082021AD conversion Y-AXIS: 015296ADC output falg: 144008
    082021AD conversion Y-AXIS: 015406ADC output falg: 145009
    082021AD conversion Y-AXIS: 015442ADC output falg: 146010
    082021AD conversion Y-AXIS: 015361ADC output falg: 147011
    082021AD conversion Y-AXIS: 015372ADC output falg: 148012
    082021AD conversion Y-AXIS: 015433ADC output falg: 149013
    082021AD conversion Y-AXIS: 015289ADC output falg: 150014
    082021AD conversion Z-AXIS: 015269ADC output falg: 151015
    082021AD conversion Z-AXIS: 015360ADC output falg: 136000
    082021AD conversion Z-AXIS: 015356ADC output falg: 137001
    082021AD conversion Z-AXIS: 015384ADC output falg: 138002
    082021AD conversion Z-AXIS: 015252ADC output falg: 139003
    082021AD conversion Z-AXIS: 015381ADC output falg: 140004
    082021AD conversion Z-AXIS: 015400ADC output falg: 141005
    082021AD conversion Z-AXIS: 015407ADC output falg: 142006
    082021AD conversion Z-AXIS: 015435ADC output falg: 143007
    082021AD conversion Z-AXIS: 015503ADC output falg: 144008
    082021AD conversion Z-AXIS: 015366ADC output falg: 145009
    082021AD conversion Z-AXIS: 015348ADC output falg: 146010
    082021AD conversion Z-AXIS: 015462ADC output falg: 147011
    082021AD conversion Z-AXIS: 015407ADC output falg: 148012
    082021AD conversion Z-AXIS: 015470ADC output falg: 149013
    082021AD conversion Z-AXIS: 015397ADC output falg: 150014
    082021AD conversion X-AXIS: 015330ADC output falg: 151015
    090021AD conversion X-AXIS: 015380ADC output falg: 136000
    090021AD conversion X-AXIS: 015309ADC output falg: 137001
    090021AD conversion X-AXIS: 015236ADC output falg: 138002
    090021AD conversion X-AXIS: 015365ADC output falg: 139003
    090021AD conversion X-AXIS: 015339ADC output falg: 140004
    090021AD conversion X-AXIS: 015378ADC output falg: 141005
    090021AD conversion X-AXIS: 015441ADC output falg: 142006
    090021AD conversion X-AXIS: 015430ADC output falg: 143007
    090021AD conversion X-AXIS: 015386ADC output falg: 144008
    090021AD conversion X-AXIS: 015424ADC output falg: 145009
    090021AD conversion X-AXIS: 015486ADC output falg: 146010
    090021AD conversion X-AXIS: 015369ADC output falg: 147011
    090021AD conversion X-AXIS: 015356ADC output falg: 148012
    090021AD conversion X-AXIS: 015344ADC output falg: 149013
    090021AD conversion X-AXIS: 015454ADC output falg: 150014
    090021AD conversion Y-AXIS: 015442ADC output falg: 151015
    082021AD conversion Y-AXIS: 015368ADC output falg: 136000
    082021AD conversion Y-AXIS: 015442ADC output falg: 137001
    082021AD conversion Y-AXIS: 015269ADC output falg: 138002
    082021AD conversion Y-AXIS: 015238ADC output falg: 139003
    082021AD conversion Y-AXIS: 015370ADC output falg: 140004
    082021AD conversion Y-AXIS: 015342ADC output falg: 141005
    082021AD conversion Y-AXIS: 015267ADC output falg: 142006
    082021AD conversion Y-AXIS: 015442ADC output falg: 143007
    082021AD conversion Y-AXIS: 015294ADC output falg: 144008
    082021AD conversion Y-AXIS: 015407ADC output falg: 145009
    082021AD conversion Y-AXIS: 015442ADC output falg: 146010
    082021AD conversion Y-AXIS: 015360ADC output falg: 147011
    082021AD conversion Y-AXIS: 015371ADC output falg: 148012
    082021AD conversion Y-AXIS: 015433ADC output falg: 149013
    082021AD conversion Y-AXIS: 015290ADC output falg: 150014
    082021AD conversion Z-AXIS: 015269ADC output falg: 151015
    082021AD conversion Z-AXIS: 015360ADC output falg: 136000
    082021AD conversion Z-AXIS: 015355ADC output falg: 137001
    082021AD conversion Z-AXIS: 015384ADC output falg: 138002
    082021AD conversion Z-AXIS: 015253ADC output falg: 139003
    082021AD conversion Z-AXIS: 015383ADC output falg: 140004
    082021AD conversion Z-AXIS: 015401ADC output falg: 141005
    082021AD conversion Z-AXIS: 015408ADC output falg: 142006
    082021AD conversion Z-AXIS: 015434ADC output falg: 143007
    082021AD conversion Z-AXIS: 015503ADC output falg: 144008
    082021AD conversion Z-AXIS: 015365ADC output falg: 145009
    082021AD conversion Z-AXIS: 015350ADC output falg: 146010
    082021AD conversion Z-AXIS: 015464ADC output falg: 147011
    082021AD conversion Z-AXIS: 015406ADC output falg: 148012
    082021AD conversion Z-AXIS: 015471ADC output falg: 149013
    082021AD conversion Z-AXIS: 015397ADC output falg: 150014

    for example: 090021AD conversion X-AXIS: 015380ADC output falg: 136000

    090021 is register value configurated , 015380 is AD convertion value , 13600 is the channel number (status register); becasue i conducted the register writing command before pulse convert command , so the indexing can bee updated ! X-AXIS, Y-AXIS , Z-AXIS is the 3ICs ADS1158.

    Edison

    Regards

     

      

    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 Aug 08 2012 20:35 PM
    Verified Answer
    Verified by Tony Calabria
    Mastermind42820 points

    Hi Edison,

    That is correct. The write command will reset the channel pointer. See the description of the START pin of page 27 of the data sheet here -

    http://www.ti.com/lit/ds/symlink/ads1258.pdf

    Regards,

    Tony Calabria

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • edison du
    Posted by edison du
    on Aug 13 2012 04:58 AM
    Prodigy80 points

    Hi Tony:

         the problem has been solved, thanks a lot.

     

    Edison

    Best Regards

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Tom Hendrick
    Posted by Tom Hendrick
    on Aug 14 2012 18:39 PM
    Guru86375 points

    Hi Edison,

    Thank you for the confirmation!  We really do appreciate the feedback.

     

    Regards,

    Tom

    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