- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Greeting All,
In our application, we are using the PSoC3 UART to communicate with another device using a packet based protocol. We have our own interrupt handled software input/output buffers (64 bytes each).
We are observing random/intermittent lockups from the PSoC UART. The only way to regain the UART is to reflash the PSoC using a MiniProg3 programmer or to cycle the power on the PSoC board. This failure occurs without any error signaling from the UART. It just stops passing bytes. The PSoC continues to process interrupts, including communicating with other hardware devices on SPI and I2C buses. Our interrupt handler is checking UART status and sending/receiving bytes via the Cypress UART API (uint8 UART_Bluetooth_ReadRxStatus(), void UART_PutChar(uint8), and uint8 UART_Bluetooth_ReadRxData(void)).
We have multiple PSoC3 devices running the same firmware and all exhibit this behavior.
Our UART Configuration: 57600, 8, None, 1, No Flow Control
Our Tx interrupt mask is: UART_TX_STS_FIFO_NOT_FULL. This interrupt mask is set to zero when the output buffer is empty.
Our Rx interrupt mask is: UART_ RX_STS_BREAK | UART_RX_STS_OVERRUN | UART_RX_STS_STOP_ERROR | UART_RX_STS_FIFO_NOTEMPTY. This mask is set during initialization and remains during operation.
Any thought on how to detect what this error is and/or how to gracefully recover the UART would be greatly appreciated.
Thanks,
Ron Denton
- Labels:
-
PSoC 3
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I think it best you psot project archive, to examine how you handle the
traffic, etc.. A schematic, of UART interface at least, pertainent.
“File” Creator
“Create Workspace Bundle”
Use Firefox or IE, not chrome to post.
Regards, Dana.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Please create a tech support case for this query, submit your project and elaborate the steps involved in reproducing this issue.
Follow the steps below or use the link directly to create a techsupport case.
www.cypress.com
Support and community -> Technical Supprt - > create a my case
Thanks,
Ram