MSP430FR6047: MCU018

Part Number: MSP430FR6047
Other Parts Discussed in Thread: EVM430-FR6047

Tool/software:

I have two questions:-

1. I have EVM430-FR6047 board I only want to know about the reference voltage of SDHS ADC. I have gone through all the documents available on TI website.

2. I want to know about the DTOF calculation in detail in code. Basically if I have to provide the shift in signals manually and then how can I do that. 

  • Hi Anup,

    1) The SDHS peripheral operates at 1.6V, stated in the device datasheet.

    2) The DTOF calculation algorithm is proprietary to TI, so details are not available. Do you mean that you would like to manually add an offset to these values? This is possible at the application level - in the GUI, please see the DTOF offset entry in the advanced parameters section of the calibration tab. If you prefer to do this manually in the source code you can use the USS_ALG_DCOFFSET define, as listed in the USS Design Center Users Guide.

  • 1) Regarding my 1st question my only interest is in SDHS reference voltage that is in bold letters: Vanalog​ = (Digital Val /( 2N - 1)) * Vref     , where N is Number of ADC bits.

    2) 2nd question is that I tried to create DTOF shift between the samples in excel  but my DTOF comes correct when I shift by exactly 0.25 micro seconds . But if I shift the samples by 0.25 nano seconds then DTOF doesn't come right. 

  • 1) The Vref is 1.6V, generated by the USS LDO.

    2) I am not sure what the problem is here, could you please elaborate and rephrase your question? I've explained that you can't have the DTOF calculation code in detail, and how to apply a shift in the dtof manually.

  • 1) My first question is as it is, Let's take this question another way , suppose on USS tool my ADC count is 800 with 1 dB PGA gain & 4MHz sampling frequency. Now If i check analog signal voltage using CRO then what voltage level I will get. kindly provide how you are calculating?

    2.) Suppose I have 160 ADC samples each for both UPS & DNS. These samples are at 0.25 micro seconds period. Now In excel using cosine interpolation i created 1000 samples between each sample, so my total samples will be now 160000. This means I have now samples at 0.25 nano seconds. Now if I shift the new samples by 10 samples & pick up the samples at 160 samples at 0.25 micro seconds & put those in code then my DTOF will be 2.5 nanoseconds. But it gives zero DTOF. 

    Also If I shift by 1000 samples then it gives me DTOF = 0.25 us

  • 1) I spoke with my colleague earlier today, I see now that the USS subsystem operates on 1.6V as stated in the datasheet, but the actual Vref provided to the SDHS peripheral is 755 mV. Sorry for the conflicting information here.

    2) So you are editing the ADC sample values in excel, then inputting those to the USS algorithm? You interpolate to show the waveform in 160000 samples, then you shift by 10 samples, pull out 160 samples, and then feed them into the USS algorithm again? Can you explain what your goal is here? Does the algorithm return an error code? Depending on how exactly you've performed the interpolation and pulled out the 160 samples, I am not sure if the algorithm would be able to effectively perform the lobe and cross correlation algorithm. 

  • 1) Regarding first question 755mV is looking satisfying answer. Just one query that If I have ADC counts of 810 then please provide how you will calculate the analog input voltage?

    2) For my second question, I gone through your previous reply , it shows you got the things what I am trying to do. My ultimate goal is that in excel I will create a known shift and then pick up the shifted 160 samples of ADC and then put those 160 samples in ADC buffer inside the code. So it should give me that exact DTOF. Code is not returning error it works fine, it gives DTOF value but not matching with my exact shift. I can share the excel sheet with you if it is required to you.

  • Can anyone from TI help me in this?

  • Hi Anup, 

    Thank you for your patience as I have been out of office and will be for the remainder of the week.

    1) I'd calculate the input voltage by dividing the ADC reading by the quantity (2^(ADC Resolution))-1, then multiplying that value by the reference voltage. So [(810/4095) * 0.755], resulting in a voltage of ~0.149V

    2) The USS algorithm performs its own reconstruction of the signal to find the DTOF. It is hard to say how your sequence of interpolation, shifting, and decimation is then changing the constructed signal inside of the USS algorithm. You are welcome to continue to experiment with this but it is not something that I'll be able to assist you with.

  • In reference to my first question , my SDHS ADC is in 2's compliment format. So, does my ADC resolution becomes 11(2047) bit instead of 12(4095) bit. Or is it same as your recent reply? Also what about ADC reference does it also remain same?

  • When using two's complement format for an ADC, you can use the more general formula:

    voltage = [(digital result value)/(2^(n-1)) * Vref] where n is the number of bits. So if you determined that the digital value of the ADC result is 810, and you know the vref is 0.755V, then the voltage is:

    (810/2047)*0.755 which would give a result of ~0.298V

**Attention** This is a public forum