Sridhar Prasath Aruppukottai Ganesan

Members
  • Content Count

    31
  • Joined

  • Last visited

About Sridhar Prasath Aruppukottai Ganesan

  • Rank
    Frequent Visitor

Recent Profile Visitors

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

  1. hello @JColvin Thanks for the reply and your support. I have been working on the interrupts for the past month. I think I have already found one possible solution for my query. But I think your support and help would be also very helpful in moving forward. I will definitely go through the content given in the link. Thank you.
  2. Greetings all, I have gone through the xuartlite interrupt system example many times.But still I could not able to understand the process of the example. My task : 1. A process will be continuously running in a while loop, 2. If an interrupt ( a string "RING") in the receiver buffer of uartlite occurs, the first process should stop and the interrupt handling process should occur. 3. After the interrupt handling, the first process should continue. Anybody having any idea how to resolve this? Thank you in advance. PS: If there is any clear explanation about the xilinx provided uartlite interrupt example anywhere in the internet, please kindly provide the link. It would be really helpful
  3. Dear @jpeyron i could also get the same ouput for uartlite interrupt example in my sdk. But I couldnt able to understand the code completely. There are some doubts in that code. 1. What are sendhandlers and recvhandlers? 2. Could you please just tell in simple words what are we exactly doing in that example? Your help is very much needed. Thank you
  4. suppose that, if i receive a string "RING" in the receiver buffer of UARTLITE, I have to enter the interrupt handler function. How should I define this interrupt?
  5. Greetings all, This might be a basic question about uartlite interrupt. lets assume that, we are going to use the uartlite in interrupt mode. 1. If we scugic interrupt, it will enter into interrupt handler function for each cycle(based on the timeout value). 2. If we use custom interrupt(user defined interrupt) , how will it enter the interrupt handler at the first place? "The interrupt handler should know that this is the reason(interrupt)why i am entering the interrupt handler function" ..right? 3. where will we define that interrupt? otherwise there is a great chance that it wont enter the interrupt handler function at all..right?
  6. Dear @jpeyron sorry to disturb you again. But I think that i have found the problem. There is nothing wrong about the initialization of uartlite or using multiple uarts. I will list out the problem i am facing . There is some problem with the coding . I dont know what that is. If you see the previous example with arduino, If I send some commands to GSM module,it will send some response.(only once) 1. Here in SDK, I have written some code for sending command "AT". Usually the response should be "OK" and it happens only one time(as you can see in the arduino code). Here, I am getting the response from the GSM but I have to give it in a while loop to get the response (see files: file1 and file4). I donno why I have to give in a while loop and it contain the correct response as well as some of the characters("T") from the given command("AT"). And since it is infinetely running, i could not take a screenshot. Thats y I stopped the cursor and took a photo. 2. For the next command "AT+CPIN?" , the response should be "+CPIN: READY". Here also , I have to give it in a WHILE loop to get the response back . And it contains some of the characters("T+CPIN?") from the given command. I dont know why that is happening. (see files: file2 and file3) 3. I tried to give the commands without the WHILE loop. Then I am not getting any correct response("+CPIN: READY") . I am getting only the characters("T+CPIN?") from the already given command.(see file5). I hope I have explained the problem to your proper understanding.
  7. Dear @jpeyron I might have found what is causing the problem. Ur valuable advice is needed. 1. As you can see from the uploaded image, the first xil_printf statements( xil_printf("AT");) is the command which needed to be sent to rx of uartlite_1 block(GSM module is connected). 2. But the default stdin and stdout of xilinx sdk is ps7_UART 1. So whatever the xil_printf statemets are, they are redirected towards uart 1(and not towards uartlite) . GSM module will only work if it receives commands from uartlite. I hope I have explained this clearly. 3. So I tried to change the stdin and stdout to uartlite so that the xil_printf statements are directed towards uartlite. But the problem is that now I am not able to view anything in the terminal. Is there a way to change the stdin and stdout to uartlte and still view the xil_printf statements?????? ur valuable advice is needed. Thank u in advance
  8. Greetings all, Usually, the default uart for xilinx sdk is ps7_uart1. But I want to use axi uartlite block as my stdin and stdout since I want to redirect the xil_printf statements to uartlite rx pin. Is that possible to change the stdin and stdout to axi uartlite and still view the printf statements in the terminal output???
  9. Dear @jpeyron Thanks for the reply. As far as I know, this does not require any ip customization and block modification. For your understanding, I thought it would be a good idea to post the arduino code as well. The module sagem HILOC works at a baudrate of 115200. 1. I have attached the screenshot of the arduino code for sending a simple command "AT" to GSM. For that, the reply from GSM would be "OK". PFA the file(file name: 1) 2. Hardware part(vivado): I thought of replicating the same in xilinx sdk. But here, the baudrate could be configured in vivado. So first, I have created AXI uartlite(baudrate 115200) and connected the pins rx and tx to JC2_N and JC2_P pins of JC connector. I have used zync block for processing the data. Finally, I have created a bitstream and exported the code to xilinx sdk. (file name: 4) 3. Software part(xilinx sdk): Then I have done a simple coding in xilinx sdk. I am sending "AT" to GSM. And expecting response "OK" from GSM.(file names:2 and 3) Note: First I used sleep function to create a delay. It doesnt seem to be working. Hence I have created a manual delay. So I have created a simple timer which goes inside the loop and count the seconds.(Its functionality is checked in other codes as well). I could not able to find what I am doing wrong. I have tried to change the stdin and stddout (bsp settings) to axi_uartlite_1, the block i m using for GSM module. Its also not working. Please help me with this process. If the staff members have any idea about this, I would be really thanful to them.
  10. yaaa sure...... 1. I will share the link which will help to get the response from gsm module when connected with ARDUINO... https://stackoverflow.com/questions/36884514/get-at-command-response Just have a look at it ,so that you will get a flow of what is happening. And I will also share the datasheet as well.. 2. This is the link for the user manual of HILO module. https://fccid.io/VW3HILOC/User-Manual/Users-Manual-965333 I will also attach AT commands list in a file and what will be the response from the GSM module. PFA the file. Just have a look at it and help me in this process. AT Command Set for SAGEMCOM Hilo3G Module draft 0.2.pdf
  11. hello @jpeyron I will check the datasheet of the GSM module. I am using sagem HILO module...
  12. hi @jpeyron Thanks for your reply. The code I have designed is printing the streaming data and I have managed to parse the data (latitude,longitude,time,date etc) and store it in the memory. Infact, that is what I needed to do with pmodgps by connecting pmodgps ip. But unfortunately, for vivado 2017.4, I think there is a problem with pmodgps ip . So I decided to do it with AXI uartlite Ip and do manual coding . Even there is no problem with pmodgps ip, have managed to collect the data with my code and my purpose has been served. So, I dont need to do it with pmodgps IP anymore. My next task is to send the data to server via gsm module. So if you have your valuable time,please have a look at my querry about my GSM module. Warm regards, Sridhar Prasath
  13. Hi @jpeyron Thanks for the reply. You are the one who is replying to my question every time. Thank you so much. I have used pmodgps ip and ran the sample code ...It didnt work for me. I have waited for almost half an hour near the window. Instead, I have created AXI UARTLITE IP and connected the tx and rx pins of gps module and created a manual custom code to parse the streaming data. Now its perfectly working with my manual code. Thank you again. If you have time, try to look at my next post about GSM module. I am really trying to find the answer for the past 10 days. Thank you in advance.
  14. Hello @xc6lx45 Thanks for ur reply. Its completely dependent on the GSM module. And I have verified the loopback test as well. They are perfectly working. The response should be from the tx pin of GSM module. I have to send some commands from tx pin of UART of zedboard. And I should receive some response from the GSM module from the tx pin of GSM to the rx of zedboard. I think I have explained my doubt clearly in the above post. Please go through the post once again and do the needful \
  15. Greetings, My project is to send some data to http server from zedboard via GSM module(through AT commands). I have designed the hardware connection in vivado (conected rx,tx,vcc and gnd pins in JB connector) . I have set the baudrate to 115200(for module hilo) and I think I am sure that the tx and rx pins are perfectly working. Now my question is how to send AT commands to GSM module. For those who dont know about GSM module , I ll just brief about its working. Basically in GSM modules, if some characters(AT COMMANDS) are typed and sent , the GSM module will respond with some characters. For example, 1. If I type 'A','T' (2 characters in this case) , the response from GSM module will be OK('O','K') 2. If I type 'A','T','+','C','P','I','N','?' (7 characters), the response will be 'C','P','I','N',':','R','E','A','D','Y' (CPIN:READY) So basically I have to send some commands from tx pin of zedboard to rx pin of GSM module. And I have to receive some response from tx pin of GSM to rx pin of zedboard. Hope everybody gets the basic idea.(only for those who doesnt know abt GSM module. Not for pros😀) So I have wrote some code, which will send the commands to the baseaddress of UARTLITE ( I have used AXI UARTLITE for this module). The problem is that I m sending the data to the UARTLITE address and searching for the response from the same UARTLITE baseaddres. But I dont know from which address to read the response back.. Hope all got my question. For your convenience, I will post some part of the code. unsigned char Sender1[] = {'A','T','\0'}; unsigned char Sender2[] = {'A','T','D','+','4','9','1','7','6','3','0','1','7','4','8','1','4',';','\0'}; int Index =0; int i = 0; int u=0; SendBuffer[Index]='\0'; RecvBuffer[Index]='\0'; while(Sender != '\0'){ for (Index = 0; Index < TEST_BUFFER_SIZE; Index++) { SendBuffer[Index] = Sender[i+Index]; XUartLite_SendByte(UARTLITE_BASEADDR, SendBuffer[Index]); } for (Index = 0; Index < TEST_BUFFER_SIZE; Index++) { RecvBuffer[Index] = XUartLite_RecvByte(UARTLITE_BASEADDR); Receiver[i+Index] = RecvBuffer[Index]; } i = i + TEST_BUFFER_SIZE; u++;