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.

How to Load Data Onto LMX2492

Other Parts Discussed in Thread: LMX2492, CODELOADER, USB2ANY

I am trying to load data via SPI onto the LMX2492 PLL registers in order to create a ramp. But I am unaware of exactly how to do it. I have assumed the following about loading data:

If I want to load data 0x15 onto register 0x24 then the 24-bit data packet should be as follows:

0b 0001  0101  0000  0000  0010  0100, where the left-most 0001 0101 represents the 8-bit data 0x15 and the right-most 16-bit data 0000 0000 0010 0100 represents the register address 0x24. 

Can anyone confirm that this is the way data is loaded onto appropriate registers?

  • Edward,
    The CodeLoader software programs our devices, and even if you don't have a device, you can still use the software to verify your programming information. The LMX2492 register consists of a 16 bit overhead (address + R/W bit), followed by 8 bits of payload (data). So I think it should be 0000 0000 0010 0100 0001 0101.
    Regards,Dean
  • Thanks for the response! Do you also know if the registers need to be written in a descending order, i.e. the highest numbered register is filled first? The data sheet mentions "Registers are programmed in REVERSE order from highest to lowest." [section 8.6]. I reckon that this means Register 90 should be filled before Register 89 which should be filled before Register 88 and so forth.
  • Yes, the registers are programmed highest first to lowest.

     

    Regards,

    Dean

  • Also, is there a way to read the values loaded onto individual registers without using CodeLoader?
  • Eddie,
    Indeed, the LMX2492 supports readback. In regards to using the CodeLoader and USB2ANY board for readback, there are software issues, so this is likely to be more of a frustration than a help. However, the part does support readback and I have done this using an oscilloscope. You basically set the MUXout pin to readback and Push-pull format and it sends the data out. The timing diagram for writing also applies to reading.
    REgards,Dean
  • Thanks Dean for the information. I am working on reading back the registers now but I am having difficulty understanding how exactly binary data loaded onto the registers is displayed on the oscilloscope. There are 24 bits in every register. If everything is done properly, does the oscilloscope simply show a linear sequence of 24 pulses with high rectangular pulses (3.3 volts) for every '1' on the register and a low pulse (0 volts) for every '0' on the register? And once a register is set to read-back mode, does it continuously transmit its value or is there a time window within which the relevant pin has to be probed with an oscilloscope?