Jump to content

Zlxt

Members
  • Posts

    5
  • Joined

  • Last visited

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

Zlxt's Achievements

Newbie

Newbie (1/4)

0

Reputation

  1. Hi everyone,I encountered difficulties when using ZYNQ PS DMAC, and hope someone can provide any solutions or ideas. The problem is: I wrote a QSPI module with AXI_LITE interface for my LCD screen,Then I want to use LVGL. I allocated a 32-bit address for the tx register of the QSPI module, but actually only the lower 8 bits are used, and 8 bits are sent at a time. LVGL uses a 16-bit array to store RGB data. Therefore, it is necessary to split the 16-bit data into two 8-bit data and send them to the tx register of QSPI. I wanted to use ZYNQ's PS DMAC to do this for speed and lower CPU usage. To simplify the problem, I think, is to a 16-bit array, let DMAC take 8 bits each time, and transfer to a 32 bit array. So I configured DMAC DmaCmd as: XDmaPs_Cmd DmaCmd = { .ChanCtrl = { .SrcBurstSize = 1, .SrcBurstLen = 1, .SrcInc = 1, // increment source address .DstBurstSize = 4, .DstBurstLen = 1, .DstInc = 1, // Ignoring the configuration here, I want to be able to see how the data is mapped in memory after the transfer, so I didn't set it to 0. }, }; In this configuration, the expectation is that the DMAC will take 8 bits each time from the source address, expand to 32 bits, and write to the destination address (set zeros in the high bits). But in fact, this configuration doesn't seem to let DMAC work. DMAC seems to work only if the source and destination address configurations are the same(BurstSize and BurstLen). I don't want to write another C function to convert the LVGL color array to an 32-bit array,it would take a lot of CPU time to move the data around. My board is Zynq-7020. I'm not particularly good at writing C programs. Can anyone provide a better solution? Thanks.
  2. @zygot After I installed and set up Digit ADEPT 2, it worked properly. I think this would rely too heavily on Digilent's software, making it difficult to use on other projects or boards. I found another project that includes the DPTI interface and it should work . This is its link. The rs232Comm.exe in the project is implemented through 'FTD2XX_ NET. dll'. I think it can also be used as a nice reference project. Thanks.πŸ˜ƒ
  3. @zygot Thank you for the tutorial. I tried to run the program following the contents of the document, but failed. I successfully compiled 'VideoDemo.cpp'. However, when running the command, it appears that the 'NexysVideo' device cannot be found. 'ERROR: unable to open device' I checked the device manager of Win10 and found that there is indeed no device named 'NexysVideo', only a device named 'Digilent USB Device'. I have also tried using 'Digitent USB Device' or other names as device name parameters, but the same prompt indicates that the device cannot be found. I think there is no problem with my board, and it can be recognized by Vivado normally and run the program. I used Vivado to download the program, and I am not very familiar with Digilent's Adept Utility. Just in case, I downloaded the Adept Utility and tried the 'djtgcfg.exe enum', 'dadutil.exe enum', and 'dsumecfg.exe enum' commands, but it couldn't find the device either. I am currently unable to confirm what parameters' DmgrOpen() 'requires.The device name, USB ID, or the device name displayed by windows,or something else. Have you ever encountered the same problem? Is there a problem with my settings? Thanks.πŸ˜ƒ
  4. I'm learing use DPTI interface. But,I could't build the example project. I download it from github. When i run "create_project.tcl",vivado report "ERROR: This script was generated using Vivado <2015.4> and is being run in <2020.2> of Vivado. Please run the script in Vivado <2015.4> then open the design in Vivado <2020.2>. Upgrade the design by running "Tools => Report => Report IP Status...", then run write_bd_tcl to create an updated script." So,I changed the version number in the TCL file and ran it again. Unfortunately, many errors will also be reported. Can anyone provide me with a project, that I just need to run"Report IP Status". By the way, it would be even better if you could share some information about DPTI. I only find very little relevant information online. Thanks.πŸ˜„
  5. Hi, I having same issue. My board is nexys video. Please help.Thanks
×
×
  • Create New...