Programming Example – Assign MIO Pin to CAN RX Input

Zynq UltraScale+ Device Technical Reference Manual (UG1085)

Document ID
Release Date
2.3 English

This example assigns MIO pin 46 to the CAN RX controller signal. These steps refer to the IOU_SLCR register set.

1.Route the reference clock. Write 32h'0000_1221 to the MIO_PIN_46 register.

2.Disable output driver. Write a 1 to the MIO_MST_TRI1 [PIN_46_TRI] bit.

3.Select CMOS input (not Schmitt). Write 0 to BANK1_CTRL3 [21] bit.

4.Select the internal pull-up resister. Write 1 to BANK1_CTRL4 [21] bit.

5.Enable the internal pull-up resister. Write 1 to BANK1_CTRL5 [21] bit.

The I/O buffer output controls, [drive0], [drive1], and [slow_fast_slew_n] do not need programming, but it is recommended to select minimum drive and slow slew rate. The voltage applied to PSIO bank 1 can be read using the BANK1_STATUS [0] bit.