Now I use PSoC6 to connect other board by UART. The board only has four lines, namely, Vcc, GND, Rx(GPIO) and Tx(GPIO). The board uses Tx as GPIO to wake up PSoC6. Meanwhile, the board use Rx as GPIO to be waken up. The board is from other company, I cannot modify.
The PSoC6 is in deep sleep in order for low power consumption. UART interrupt cannot wake up PSoC6 from deep sleep. Thus, I wish to multiplex PSoC6.
I use pins of P9 and P9.
In general, P9 is configed as GPIO input. Then, the board can wake up PSoC6 by GPIO interrupt from deep sleep. After waked up, P9 need to configed as UART Rx so as to receive from the board.
When need to transmit to the board, P9 is configed as GPIO outpout to wake up the board. Then, P9 need to be configed as UART Tx so as to transmit to the board.
I want to know whether this case is feasible? How to achieve the goal?
Your timely support would be highly appreciated!
Solved! Go to Solution.
Thanks for your reply!
I am trying to porting your demo code to my application, but failed.
P9 is configured as GPIO. PSoC6 can be woken up from deep sleep.
Then I changed P9 to UART Rx, but PSoC6 cannot receive from the board.
P9 is configured as GPIO. It can wake up the board.
Then I changed P9 to UART Tx, but PSoC6 cannot transmit correctly, namely, the board got messy code.
I am still trying to achieve the goal.
I do not achieve the goal.
At present we have to make PSoC6 in sleep instead of deep sleep.
Wish PSoC6 should be in deep sleep earlier!