Hi,
I'm currently struggling with a simple GPIO example in the PL area as well.
I was working with zedboard before, but with the TE0715 ZYNQ 7030 Module and the 0706 Carrier-board I can't even get the simplest GPIO operation working.
My target is to set all IOs of bank 13 to HIGH to double check the pin routings of our baseboard adapter - but unfortunately this simple task is not working for me.
- The project was created by using the TEST_BOARD script with the right board part name: trenz.biz:te0715-01-30-1c:part0:1.0
- I set up the AXI Master in the ZYNQ IP Configuration and added the AXI GPIO IP.
But, I also can't figure out the meaning of the crypted J1:P1A, J1:P1B, J2:P2A, J2:P2B, J2:P2C, and J3:P3. combinations, which I'm able to select during the GPIO IP configuration... so I used CUSTOM.
- I set all ports of the GPIO IP as OUTPUT and "0xFFFFFFFF" as default value
- Made an external port and named it "GPIO[31:0]"
- I set up the constrains:
set_property PACKAGE_PIN W12 [get_ports {GPIO[0]}]
set_property IOSTANDARD LVCMOS33 [get_ports {GPIO[0]}]
set_property PACKAGE_PIN U17 [get_ports {GPIO[1]}]
set_property IOSTANDARD LVCMOS33 [get_ports {GPIO[1]}]
...
set_property PACKAGE_PIN U19 [get_ports {GPIO[31]}]
set_property IOSTANDARD LVCMOS33 [get_ports {GPIO[31]}]
- To ensure all ports are really set to "1" I also manually set the GPIO[31:0] in the wrapper hdl file to "0xFFFFFFFF"
=> VIVADO quits this with a notification that all GPIO output ports are constant driven by "1" which is correct.
- Synthesis and implementation run without any error: Just the few "more than one IO STANDARD" (DRC-23-20) messages which can be ignored.
- Programmed the device but not one of the specified outputs is driving HIGH.
What am I doing wrong?
Maybe the DIP switches of the XMOD JTAG Adapter or the Baseboard is not set correctly (I'cant find a documentation regarding these switches...)
Thanks in advanced and regards
Joachim