Jump to content

Cristian.Fatu

Technical Forum Moderator
  • Posts

    223
  • Joined

  • Last visited

Posts posted by Cristian.Fatu

  1. On 3/25/2024 at 5:22 AM, Zufaruu said:

    Thank you, it's already worked now on baremetal. I think I have some mistakes when checkouting to the correct branch. But, is there a way to import the hardware change so that it can be used on linux project? 

    I try to run my linux project, but it's still capped at 4096 samples

    The fact the the project runs in Baremetal is great. It means that you have the proper hardware platform on one hand, and the proper Zmodlib code (which is identical on baremetal and platform) on another hand. So focus on providing the same hardware platform, build the project for linux (be sure you are defining LINUX_APP in your project) and it should work.

    Good luck.

  2. In order to answer the concern from your initial post, I will tell you some words about the trigger.

    ZmodADC, regarded as a data acquisition device, can be configured (through ZMODADC1410 Class functions) to start the acquisition immediately or to start the acquisition only when a specific condition is met. This condition is called trigger condition, and may be defined by setting the trigger level, trigger mode, trigger edge and window position. You can read more details about these on https://digilent.com/reference/zmod/scope/zmodadc1410libraryuserguide.

    The function ZMODADC1410::acquireTriggeredPolling starts by setting the trigger (call to ZMODADC1410::setTrigger), prepares the buffer length, starts the acquisition and then waits until a buffer of acquired data is available by polling the buffer full bit. In this moment acquired data is in the buffer, so the only thing left is to perform the DMA transfer of the acquired data.

    Below is a explanation of the trigger parameters, taken from the above mentioned user guide.

    image.png

  3. Hello,
    In order to use both (or one) channels you have to:
    1. Call allocChannelsBuffer to allocate the buffer, according to the desired size bufSize. It allocates a buffer of 32 bits values (for both channels).
    2. Populate the buffer: For each sample (0 to bufSize -1), place in buffer a 32 bits value obtained like this: for each desired channels (two or one) call arrangeChannelData or arrangeSignedChannelData, providing a 16 bits value corresponding to that channel. From these 16 bits, only 14 bits will be used.
    3. Call setData function to transfer the buffer to the DAC internal IP buffer
    4. Call start function to start the DAC generation process.

    For more details see https://digilent.com/reference/zmod/awg/zmoddac1411libraryuserguide

  4. We only supported the build through the Xilinx tools.
    Still, I am guessing that you should be able to build using native gcc compiler, having a proper makefile or build command. This might be a difficult task if you are a beginner.
    Taking a look on the screen caption you sent, it seems that the source files (.c) from zmodlib/Zmod/linux/reg, zmodlib/Zmod/linux/flash/, zmodlib/Zmod/linux/dma are never compiled. They are not mentioned in your command line, you only add .o files.

  5. Hello,

    What branch have you used after cloning the repository on github ? Please tell us the location you used for cloning the Zmod libraries. Also, be sure that you are cloning the submodules, as zmodlib is a submodule on git.

    Also, be sure you are defining LINUX_APP in your project.

    As Ionel mentioned, the fnInitZmod is declared in zmodlib\zmod\reg.h and defined in zmodlib/zmod/linux/reg/reg.c.

    Please check that the mentioned files are visible under selected branch.

    For more details please read https://digilent.com/reference/zmod/zmodbaselibraryuserguide

  6. Hello,

    Yes, we provide support for this product.
    Unfortunatelly we do not provide repair service, we only replace the boards according to Limited Warranty conditions for manufacturing defects.
    If you want to have a deeper investigation of your problem, please write a mail to Digilent Support <support.digilent@ni.com> providing the following delivery information:
    1.      Date of Purchase:
    2.      Seller:
    3.      Purchase Order/ Web order Number:

    Thank you,
    Cristian Fatu

  7. The output format is 2's complement. We apologize, there is a mistake in our comment.
    Regarding the generated value, please verify the coupling. You shouldn't have AC coupling selected.
    On the other hand I inform you that we are preparing a release of a new version of ZmodIP.
    Thank you very much for your output.

  8. From your description we suspect that something is broken between J20 and SW8. A simple suggestion is to remove the fuse (F5) and replace it with part 0603SFF500F/32-2. If this is not possible you may try to short it.

  9. Hello,

    Please be sure that you call LEDS_Led0SetValue(0), LEDS_Led1SetValue(1), LEDS_Led4SetValue(1), to check if the LED0 can be turned off, and the LED1 and LED4 can be turned on.

    Please provide the code that you are using.

    Thank you,

    Cristian Fatu

×
×
  • Create New...