Jump to content

All Activity

This stream auto-updates

  1. Past hour
  2. Hi @Rohan16 You can use StaticIO to drive the DIO 0/1. If not Z this has higher priority over the DIO than Patterns and Protocol.
  3. Hello Arthur, After I remove code from the functions in Zmod/baremetal/intc.c,the functionality of initializing ZmodADC has been consistently unusable.I've been trying to solve the issue of initializing the functionality of ZmodADC these past few days.This problem has been bothering me for quite some time.This is quite a strange question, I can't figure it out by myself, I feel like I still need some advice from you.Here's my main.c code. //-------------------------------------------------- // blog.csdn.net/FPGADesigner // copyright by CUIT Qi Liu // Zynq Lwip TCP Communication Test Program //-------------------------------------------------- #include "timer_intr.h" #include "sys_intr.h" #include "user_tcp.h" #include "lwip/netif.h" #include "sleep.h" //#define TRANSFER_LEN 0xB #define TIMER_LOAD_VALUE XPAR_CPU_CORTEXA9_0_CPU_CLK_FREQ_HZ / 8 //0.25S static XScuGic Intc; //GIC static XScuTimer Timer;//timer //extern volatile unsigned tcp_client_connected; //extern int tcp_trans_cnt; void start_application(void); #include "./Zmod/zmod.h" #include "./ZmodADC1410/zmodadc1410.h" #define SEND_SIZE 1463 //extern struct netif server_netif; static char val_formatted[15]; #define TRANSFER_LEN 0x5B7 // ZMOD ADC parameters #define ZMOD_ADC_BASE_ADDR XPAR_AXI_ZMODADC1410_0_S00_AXI_BASEADDR #define DMA_ADC_BASE_ADDR XPAR_AXI_DMA_ADC_BASEADDR #define IIC_BASE_ADDR XPAR_PS7_I2C_1_BASEADDR #define FLASH_ADDR_ADC 0x30 #define ZMOD_ADC_IRQ XPAR_FABRIC_AXI_ZMODADC1410_0_LIRQOUT_INTR #define DMA_ADC_IRQ XPAR_FABRIC_AXI_DMA_ADC_S2MM_INTROUT_INTR //static char sendBuffer_main[TCP_SEND_BUFSIZE]; //-------------------------------------------------- // 中斷與定時器初始化 //-------------------------------------------------- void System_Init() { Timer_init(&Timer,TIMER_LOAD_VALUE,TIMER_DEVICE_ID); Init_Intr_System(&Intc); // initial DMA interrupt system Setup_Intr_Exception(&Intc); Timer_Setup_Intr_System(&Intc,&Timer,TIMER_IRPT_INTR); Timer_start(&Timer); TcpTmrFlag = 0; } //-------------------------------------------------- // 主程序 //-------------------------------------------------- int main(void) { xil_printf("Im here~~~\n"); uint8_t channel=0; uint8_t gain=0; size_t length=TRANSFER_LEN; ZMODADC1410 adcZmod(ZMOD_ADC_BASE_ADDR, DMA_ADC_BASE_ADDR, IIC_BASE_ADDR, FLASH_ADDR_ADC, ZMOD_ADC_IRQ, DMA_ADC_IRQ); uint32_t *acqBuffer; adcZmod.setGain(channel, gain); acqBuffer = adcZmod.allocChannelsBuffer(length); adcZmod.acquireImmediatePolling(acqBuffer, length); static char time_formatted[15]; uint32_t valBuf; int16_t valCh; float val; int coo; xil_printf("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n"); struct netif *netif, server_netif; //用於lwIP網絡接口的通用數據結構 struct ip4_addr ipaddr, netmask, gw; //unsigned int //開發板的MAC地址 unsigned char mac_ethernet_address[] = { 0x00, 0x0a, 0x35, 0x00, 0x01, 0x02 }; System_Init(); netif = &server_netif; //0x50C004 xil_printf("netif = %s\tnetif = 0x%p\t&server_netif = 0x%p\n", netif, netif, &server_netif); //將4byte結構的IP地址轉換爲unsigned int IP4_ADDR(&ipaddr, 192, 168, 1, 10); //IP地址(開發板) IP4_ADDR(&netmask, 255, 255, 255, 0); //網絡掩碼 IP4_ADDR(&gw, 192, 168, 1, 1); //網關 lwip_init(); //初始化lwIP //將網絡接口添加到netif_list中 if (!xemac_add(netif, &ipaddr, &netmask, &gw, mac_ethernet_address, XPAR_XEMACPS_0_BASEADDR)) { xil_printf("Error adding N/W interface\r\n"); return -1; } xil_printf("netif_final = %s\n", netif); //NULL netif_set_default(netif); //設置默認網絡接口 netif_set_up(netif); //啓動網絡接口 tcp_send_init(); //初始化TCP PCB xil_printf("New acquisition ------------------------\r\n"); xil_printf("Ch1\tRaw\tTime\t\r\n"); // while(1) { if(TcpTmrFlag) { tcp_tmr(); TcpTmrFlag = 0; } xemacif_input(netif); //將MAC隊列中的packets傳輸到lwIP棧中 if (tcp_client_connected) { //連接成功則發送數據 xil_printf("TCP Connected"); /* for (int i = 0; i < 30; i++)// { valBuf = acqBuffer[i]; valCh = adcZmod.signedChannelData(channel, valBuf); val = adcZmod.getVoltFromSignedRaw(valCh, gain); adcZmod.formatValue(val_formatted, 1000.0*val, "mV\r\n"); //xil_printf("%d\t%s\t\r\n",i,val_formatted); strcat(sendBuffer,val_formatted); } */ //send_data(); //xil_printf("tran_cnt:%d\r\n", tcp_trans_cnt); xil_printf("Ready to send"); //strcpy(sendBuffer,""); //adcZmod.freeChannelsBuffer(acqBuffer, length); } if (tcp_client_connected==-1) { xil_printf("errorrrrr exit\r\n"); return 0; } //sleep(2); } return 0; } And if I removed the initiate part of ZmodADC uint8_t channel=0; uint8_t gain=0; size_t length=TRANSFER_LEN; ZMODADC1410 adcZmod(ZMOD_ADC_BASE_ADDR, DMA_ADC_BASE_ADDR, IIC_BASE_ADDR, FLASH_ADDR_ADC, ZMOD_ADC_IRQ, DMA_ADC_IRQ); uint32_t *acqBuffer; adcZmod.setGain(channel, gain); acqBuffer = adcZmod.allocChannelsBuffer(length); adcZmod.acquireImmediatePolling(acqBuffer, length); static char time_formatted[15]; uint32_t valBuf; int16_t valCh; float val; int coo; the code of can run successfully. If you need any other information, please let me know. Thank you very much.
  4. Today
  5. Hi , was wondering if I can use a DB37 male to female extension cable to interface between the 2416 and the AI-EXP32 ? If yes , what is the max length of the cable than can be used considering losses ?
  6. Hi , the manual does mention an ACC-202 Din-rail kit which talks about mounting - how does this go ?
  7. Hi all I would like to ask if any have experience with repairing an instrument, MCC USB-2416-4AO. The instrument is behaving funky with one of the channel is reading a voltage respond to two channels near by. It almost seems that there is a short on the board. Would like to ask if anyone is capable of fixing this instrument and this issue? Also wanted to know how much would that cost approximately. Thank you. Alex
  8. Yesterday
  9. I should probably mention that I'm using InstaCal Version 6.53. to find my device firmware information. I have no idea it that is current either as I have been using basic software polling on the USB-1208 stuff for probably 25 yrs..
  10. Hello. from Kentucky.. I'm a longtime user of the USB-1208 DAC units but not much on this VB.NET Universal Library stuff. Several yrs ago I convinced management to buy a couple of USB-1608GX units. I'm wondering if there might be a later firmware than 1.09 version and if so how do I get the latest version. I'm trying do Analog Scans as I have a need to be a bit faster than our old software polling. Any help? Thanks Ron Byron SMC
  11. Hello, can you please tell me the power consumption for the JTAG-SMT2-NC. Thank you
  12. Hello, I am attempting to run the "dptiDemo" PC demonstration on a USB104A7 FPGA on Windows 10. I am using all of the DPTI logic files found in the "Adept SDK library - samples - dpti - dptiDemo - logic" directory in my design so that the FPGA can interface with the DPTI ports. When I compile "dptiDemo.cpp", program the FPGA with my design, and run the executable with the correct parameters specified in the demo README.md, the transfer is not successful. Specifically, the DptiIO() function fails and a case check on DmgrGetLastError() throws this error: "ERROR: data transfer timed out after 30.125000 seconds." I have created ILA probes in my design to monitor the DPTI control bits using Xilinx's hardware manager tool, and can verify that none of the control bits (RX or TX) are falling from 1 to 0 as expected. I am unable to figure out why the transfer might be failing and could use some help.
  13. Hi, Domme Thank you very much for your response and material. I’m sure it will help me a lot, really! I will test it! I hope to get it :) Thank you very much again, Jesús
  14. Currently running Dasylab v13 What software do I need to run Windows 11? Have a USB-2408 do I need to change?
  15. Hi Fausto, Thank you for your assistance. My apologies for not getting back sooner. I am using DasyLAB 13. Hopefully soon to upgrade to the latest version. I have IOtech Personal Daq/3000 hardware. Unfortunately the worksheet you provided is not compatible. I did get this timer operation to work. I have since upgraded the test station and now have more hurdles to jump.
  16. Can someone please advise me of what modules and actions I should be using in DayLAB to do the following. I have one VSD pump working on two test stations. I have 2 pressure transducers, one on both stations. I have one output controlling the VSD pump. I would like to have a toggle switch that allows me to select either station 1 or 2 to control the VSD pump. For example, If I want station 1 to run or just control the pump, The program needs to route a message to stop station 2 and reset it to zero volts & start communicating with station 1 pressure transducer to control the pump. And vice versa. Any assistance would be muchly appreciated. I have tried so many things and got close but am just missing one small detail.
  17. That's good info - I didn't see that note about the channel numbers. Thanks. I expect to have time to work on this tomorrow so again, I'll try to report back.
  18. You can get previous versions of the DASYLab software here. The USB-2408 is a popular device because it measures both voltage and thermocouples. If it has worked for you, I suggest you stick with it. If you are looking for a faster device that only measures voltage, consider purchasing the USB-1808X or USB-1608GX. If you like the USB-2408 but need more channels, consider buying the USB-2416. If you want to get the same version of DASYLab, please reply with the last five digits of the DASYLab 13 serial number. Some worksheets before DASYLab 14 may have trouble loading, but generally, they do not.
  19. Hi @Takashi "The Yaka mein", I reached out to the Engineering Services Manager about this last Friday. I will follow up again today to hopefully learn an update. Thanks, JColvin
  20. The approximate cost is $200.00. Turnaround is 4-5 weeks from the time it is received.
  21. CEEJ38

    Zynq PWM output issue.

    I am using a Zedboard to output a PWM signal through a Pmod port. I am using the example C code in Vitis to create the PWM. There are functions to set the period and duty cycle, but there is no function to set the Vmax or Vmin. The current output Vmax is 1.16V, and the current Vmin is -2.32V. I need the Vmax to be 5V and the Vmin to be 1.3V. Is this something I need to write my own function for? If so, any ideas on where I should start? I read online that this could be controlled by manipulating clock frequencies, but I don't believe this is true. Could changing the I/O standard of the pin change the output? Any advice would be greatly appreciated. Thanks
  22. I have a Dasylab v13 running on a Windows 98 platform connected to a USB-2408 I want to upgrade to Windows 10 and also upgrade the USB -2408 I have the original software loaded on the PC but the techs cannot find the original program however we can get all the data files we created that are currently running on the software. Question One: Which USB unit should we upgrade to? Question Two: Which Version Dasylab should we go with (i.e. Basic, Full, Pro) that will function as the v13? Question Three: Will we have any issues loading the old program files?
  23. Okay, John. The only driver that is active now is the Unsupported->IOtech PersonalDaq driver. I am only receiving one error now and it is as follows:
  24. @attila This worked, and the FFT script ran. Thank you so much for your help!
  25. The securing plate fixes the AI-EXP32 to the USB-2416. We don't offer mounting solutions, so you'll have to do something custom. If this helps, you can remove the case and drill holes in the bottom.
  26. AXI GPIO is intended for much slower software access to I/Os. You really do need a dedicated hardware design capable of initializing your ADC and properly handling the data coming in as defined by the ADC and FPGA datasheets.
  1. Load more activity
×
×
  • Create New...