UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Contributor
Contributor
772 Views
Registered: ‎05-10-2018

board to board (ZC706 to ZC706) communication using UART

Hello sir, I want to do board to board communication through uart. I have read some stuff available on internet but not getting exact method how to do the same. will you please help me?

 

Thanks in advance.

0 Kudos
12 Replies
Voyager
Voyager
719 Views
Registered: ‎02-01-2013

Re: board to board (ZC706 to ZC706) communication using UART

Connect Board A's Rx to Board B's Tx, then connect Board A's Tx to Board B's Rx. 

That should do it.

-Joe G.

 

0 Kudos
Contributor
Contributor
671 Views
Registered: ‎05-10-2018

Re: board to board (ZC706 to ZC706) communication using UART

hello sir, i dont have much idea about this. can you please explain in brief? I am using zc706 fpga board.

0 Kudos
Voyager
Voyager
661 Views
Registered: ‎02-01-2013

Re: board to board (ZC706 to ZC706) communication using UART

1) Connect 3 wires between two ZC706 boards (Board A & Board B) as such:

  • Board A J64.5 to Board B J64.7       ("J64.5" means connector J64, pin 5)
  • Board A J64.7 to Board B J64.5
  • Board A J64.6 to Board B J64.6

2) Create a design that connects a UART TX output to PL pin AH18 (PCB net "PL_PJTAG_TDI", which is connected to J64.5), and a UART RX input pin to PL pin AK12 (PCB net "PL_PJTAG_TMS", which is connected to J64.7). The UART IO will be LVCMOS25.

3) Program your design into both ZC706 boards.

Now you can communicate between the boards using UARTs.

-Joe G.

0 Kudos
Contributor
Contributor
469 Views
Registered: ‎05-10-2018

Re: board to board (ZC706 to ZC706) communication using UART

this is using PL UART , right ???

1. For this, I have written simple counter code in one system, say S1 and in another system , suppose i have received the data through rx pin of system 2, say S2. how can i verify that whether the received data (FPGA connected to S2)  is same as the data sent from FPGA connected to S1. ? ==>  ILA ???

2. from reading, i have found ps uart available in zynq processing Ip is the best solution to do this. 

  i have read lot about UART ( PS ) and communication between two boards but not getting clear idea about communication through boards(ZC706 ) using PS UART. 

will you help me please ? 

Thank you, 

Niranjan Nimgaonkar

 

 

0 Kudos
Voyager
Voyager
417 Views
Registered: ‎02-01-2013

Re: board to board (ZC706 to ZC706) communication using UART

The standard system UART of the ZC706 goes through a USB converter. That generally facilitates the connection of the UART to a PC, since most PC's have a USB port and all you would have to do is run a driver on the PC to create a virtual COM port. (That's is a LOT easier to do these days than finding a PC with a DE-9 RS-232 port.)

I provided you with a way to connect the ZC706 boards directly, so they can communicate directly. I assumed you had a reason for doing this. Ordinarily, a source system (S1) creates data for transmission to a sink system (S2). Both systems generally need an embedded processor (PS/PSU, or a Microblaze) running SW in order to interact with the UART IP to make it work. Furthermore, the source and sink systems have foreknowledge of the information that will be transmitted over the UART link. That's just good system design.

If you haven't already done so, whip-up a simple source system to send information out the interconnect UART (S1).  SDK provides a built-in program ("Hello World") to do that. Then, create another system on the sink (S2) that monitors the information from S1. You can echo the information received on the interconnect UART to yet another UART--e.g., the standard system UART--where you can verify the information visually on a connected PC that's running a terminal program. Or you can run SW on the sink to check the information received over the interconnect UART, and then blink an LED upon success.

The world is your oyster.

-Joe G.

 

0 Kudos
Contributor
Contributor
380 Views
Registered: ‎05-10-2018

Re: board to board (ZC706 to ZC706) communication using UART

 
 

hello sir, 

from the statements you said, i understood that i should connect two boards with mini usb cable to each other and send some data  ( i want 32 bits of data to be send ) from s1 and then data received on the uart of s2 will be verified using tera-terminal. For that i should use hello world application project from sdk uartps( import examples ) .  correct ???? 

1. can data (width of data may be suppose 64 bits) also be sent through this application( " uartps hello world example" ) ??

2. how to send data ???

0 Kudos
Voyager
Voyager
333 Views
Registered: ‎02-01-2013

Re: board to board (ZC706 to ZC706) communication using UART


@niranjan wrote:
 
 

hello sir, 

from the statements you said, i understood that i should connect two boards with mini usb cable to each other and send some data  ( i want 32 bits of data to be send ) from s1 and then data received on the uart of s2 will be verified using tera-terminal. For that i should use hello world application project from sdk uartps( import examples ) .  correct ???? 

      No; use my previous instructions to interconnect boards.

1. can data (width of data may be suppose 64 bits) also be sent through this application( " uartps hello world example" ) ??

      No; "Hello World" uses a PRINTF instruction, which will be confused by ASCII control codes.

2. how to send data ???

      Write some software to send data as arbitrary bytes, using the UART documentation as a guide. e.g.: https://www.xilinx.com/support/documentation/ip_documentation/axi_uartlite/v2_0/pg142-axi-uartlite.pdf

 




0 Kudos
Contributor
Contributor
302 Views
Registered: ‎05-10-2018

Re: board to board (ZC706 to ZC706) communication using UART

can you please elaborate this connection ?

1. what data i am sending through (AH18 pin tx output) this connection that you said ?

2. what data i will receive in another board (say another system s2)?

3.    TX system  :- one pc , zc706 board, 2 wires through pmod pins for tx and rx.     

        RX ssytem :-  one pc , zc706 board, 2 wires through pmod pins for tx and rx.  ( TX to RX, RX to TX).

 4. Is this the only connection that is required ? Anything else needed ? 

 

please help me. I am getting frustrated.

 Thank you.                              

 

0 Kudos
Highlighted
Voyager
Voyager
287 Views
Registered: ‎02-01-2013

Re: board to board (ZC706 to ZC706) communication using UART


@niranjan wrote:

can you please elaborate this connection ?

1. what data i am sending through (AH18 pin tx output) this connection that you said ?

     You're asking me what you are sending?

2. what data i will receive in another board (say another system s2)?

     You'll receive the data that you sent from s1.

3.    TX system  :- one pc , zc706 board, 2 wires through pmod pins for tx and rx.     

        RX ssytem :-  one pc , zc706 board, 2 wires through pmod pins for tx and rx.  ( TX to RX, RX to TX).

     Don't forget the ground contact wire--that was the 3rd wire in the list, above. It helps signal integrity.

 4. Is this the only connection that is required ? Anything else needed ? 

     For UART communication, that's all that's needed. It's a very simple technology.

 please help me. I am getting frustrated.

     Oh, I know how you feel. Your original post said you need to "to do board to board communication through uart".  That's an understandable request. For non-hardware-oriented people, being asked to do a small task like that is asking a young person to tell the time by looking at an analog clock--but they can't because the skill was never taught to them. There are a lot of SW engineers searching for simple HW answers at these fora; I figured this was such a situation. So I explained how to get the HW into a useful state.

Implicit, in my mind, is that as part of your original request, you know what a UART is.  But if you don't know what a UART does or how it works, that's a much different issue.

Have you tried to Google "UART operation"?

 Thank you.                              

You're welcome.

 


 

0 Kudos
Contributor
Contributor
153 Views
Registered: ‎05-10-2018

Re: board to board (ZC706 to ZC706) communication using UART

Hello sir, 

I am trying the xuartps_polled_example.c example available in sdk library import examples. As you said, I am using j64.5 and j64.7 pins for transferring data from board to PC. In zc706, VADJ pin is set to 2.5v. 

1. Can i use this pin to connect to red (pin 1,vcc)  pin of USB cable.??? I am using four pins TDI , TMS , VADJ and GND, to connected  to USB end of CPU and check data on tera term (if it is coming serially)?

2. Can i use mini usb to mini usb connector for board to board communication  ? This makes my system as, TWO PC's - TWO zc706 baords,connected via mini usb to mini usb cable and using xuartps_polled_example.c this example code. Can i make it using UARTps ? If no why ?

i have made this cable both sides mini usb and connected two boards. waiting for your reply .

thanks in advance. 

0 Kudos
Voyager
Voyager
128 Views
Registered: ‎02-01-2013

Re: board to board (ZC706 to ZC706) communication using UART

I would not expect that connecting together two USB slave ports like that would allow data to be exchanged between them, but I've never tried it. Maybe they're really OTG ports that configure each other. Give it a shot, and let everyone here know how it went.

USB is like PCIe: they're both ubiquitous--and useless, without a ton of SW to make them work.

-Joe G.

0 Kudos
Contributor
Contributor
86 Views
Registered: ‎05-10-2018

Re: board to board (ZC706 to ZC706) communication using UART

ok sir .thank you. i will try it and get back to you.

0 Kudos