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.

Ramp Fails to Start

Other Parts Discussed in Thread: LMX2492, CODELOADER

I am using the LMX2492 PLL to generate a linear ramp. I have set all parameters including the ramp length, ramp increment value, and ramp trigger source. I have also set PLL_EN (enable) bit to 1 and written values into PLL_R and PLL_N. I would expect writing into PLL_N to start the ramp but so far, no ramp has been observed. Apart from these settings, I have left most other registers unchanged. Is there anything that I am missing that should go into the registers before the ramp can start at all? Would be grateful for any suggestions. 

  • Eddie,
    The simplest thing would be if I had the settings. Ideally, if you could send me a file from the CodeLoader, it would be the fastest thing to debug, but if not, the settings for the critical words and maybe a register dump could do.
    The two words I did not see mention of is RAMP_NEXT and the RAMP_LIMIT_LOW and RAMP_LIMIT_HIGH. RAMP_NEXT. For ramping waveforms, there is typically a chain of ramps and the end of the last ramp points to the first ramp. This linking is done with the RAMP_NEXT. For the RAMP_LIMIT_LOW and RAMP_LIMIT_HIGH, this will limit the ramp and not allow it to go. The other confusion is that this is expressed in 2's compliemnt, so if you put 0's for both RAMP_LIMIT_LOW and RAMP_LIMIT_HIGH, this will stop the ramping commands from working.
    Regards,Dean
  • The settings for the critical registers that I have used are as follows:

    Register 92: RAMP0_NEXT = 0 [the same ramp continues over and over again]

    : RAMP0_NEXT_TRIG = 0 [end of the current ramp is trigger for next ramp]

    : RAMP0_RST = 1 [ramp is reset after every cycle]

    : RAMP0_FLAG = 0 [no flag set]

    Register 91,90: RAMP0_LEN = 12,000 (0x2EE0)

    Register 89,88,87,86: RAMP0_INC = 291 (0x123) [RAMP0_DLY and RAMP0_FL in Register 89 are both set to 0]

    Register 58: RAMP_TRIG_A = 1 [TRIG1 Terminal Rising Edge]

    : RAMP_EN = 1

    : Everything else for this register is left to default values

    Register 36: TRIG1_MUX = 17 [Output R Divide/4]

    : TRIG1_PIN = 1 [Open Drain Output]

    Register 27: OSC_2X = 1

    : Everything else in this register is left to default values

    Register 26,25: PLL_R = 1

    Register 17,16: PLL_N = 25 (0x19)

    This is everything I have written onto the registers. As you pointed out, I have left the values for RAMP_LIMIT_LOW and RAMP_LIMIT_HIGH to default values which are zero. This may be one of the reasons why the ramp is not working. But if you also see anything unusual in the register values above, I would be delighted to know.

  • have you tried any external triggering using TRIG1 or TRIG2
  • Eddie,
    Nothing seems suspicious about these settings ecept the RAMP_LIMIT_LOW and RAMP_LIMIT_HIGH. I have had these set to 0 before and found that it stopped the ramps from going.
    Regards,Dean