Forum Rule: Always post complete source code & details to reproduce any issue!
Results 1 to 3 of 3

Thread: Very bad sampling on MAX11300

  1. #1

    Very bad sampling on MAX11300


    I am contacting you to ask for your help on my project.

    I use a MAX11300 DAC to generate ADSR type envelopes. Everything works pretty well, however I find that the sampling of the DAC is very bad (around 500 ÁS). According to the datasheet of the manufacturer (https://datasheets.maximintegrated.c...s/MAX11300.pdf ) it is possible to improve it by using the immediate update of the port.

    To drive the DACs I use the "Pixi_demo" library available on Github. ( )
    In the code of the library, I indeed find an allusion to this mode of control ( Pixi.ccp line 151 ) :

    // config DACREF (internal reference), DACCTL (sequential update)
    info = ReadRegister(PIXI_DEVICE_CTRL, true);
    WriteRegister(PIXI_DEVICE_CTRL,info|DACREF|!DACCTL );

    The problem is that I do not see how to modify this mode, which in my opinion is blocked in sequential mode ...

  2. #2
    Senior Member+ KurtE's Avatar
    Join Date
    Jan 2014
    Sorry I have not used any of these DAC chips nor the library and the like.
    So I have no way of trying it out and see what if anything works.

    So probably not much help. One thing you might try doing is looking at other libraries that talk to these chips, like:

    And see if either they work better and/or give you some hints.
    Again not much help. Hopefully someone else up here uses these chips and can give you some more information.

  3. #3
    Thank you for your answer !

    Well I have great news! After a short night, I managed to configure the MAX11300 to obtain a sample rate of 80 ÁS!!

    The solution :

    The solution is not in the library, I used the configuration software for MAX11300 to generate the code to configure the DACs. I then use the library to transmit these codes.

    pixi.WriteRegisterA ( 0x0D, 0x0000 );
    pixi.WriteRegisterA ( 0x0E, 0x0000 );
    pixi.WriteRegisterA ( 0x10, 0x40c4 );
    pixi.WriteRegisterA ( 0x11, 0x0000 );
    pixi.WriteRegisterA ( 0x16, 0x0000 );
    pixi.WriteRegisterA ( 0x17, 0x0000 );
    pixi.WriteRegisterA ( 0x24, 0x5100 );

    PS: it is necessary to drive the DACs directly by their register. "pixi.WriteRegisterA (0x64,voltage[0]);"

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts