2 Replies Latest reply on Dec 11, 2015 12:45 PM by userc_40279

    Changing UART pins?

      Looking at all the sample code (and using the SuperSpeed Kit board):

      When CyU3PDebugInit() selects the UART as output socket, all the CyU3PDebugPrint() output goes to pin C2 (UART-TX_SPI-MISO).
      Is there a way to change that (through the API) into making it go to pin E5 (D!30 / GPIO 48)?



        • 1. Re: Changing UART pins?



          The GPIO 48 will be used as UART_TX when SPI interface is enabled in the code. (Though you are not going to use it anyway)


          Please set useSpi = CyTrue; in CyU3PDeviceConfigureIOMatrix to enable SPI and that should help.




          - Madhu Sudhan

          • 2. Re: Changing UART pins?



            Thanks for the information.
            Turned out, just setting useSpi = CyTrue was not enough. In fact, when I did that, the FX3 would never come up after programming my firmware to RAM, or at least, it wouldn't enumerate. (I wonder why!)
            When I also changed lppMode from UART_ONLY to DEFAULT, my firmware WOULD enumerate and now my UART output indeed goes to the 48 pin!


            Then, just to check, with lppMode set to DEFAULT, I again changed useSpi back to CyFalse ... and I STILL got my UART output on pin 48, so apparently, it's the lpp mode, that determines the pin routing!


            So far so good, but here's the question:

            Is there any documentation of what these magic settings of the IoMatrix actually do, specifically with regards to routing pins.
            I checked the API guide, the tech ref, the datasheet .. and I can't find any of this information!


            Kind regards,


            ~ Paul