This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

CMSIS UART Driver, permanent receive not available?

Hello All,

in the CMSIS there is a framework for UART communication.
However I have to know in advance how many characters to receive.

I would have expected that UART driver write to kind of circular buffer permanently.

Because usually I do not know WHEN there is communication and HOW MANY data will be transmitted.
I assume that when I abort the receive function with timeout and start again the receive function that in the mean time I might loose data on the hardware. Because if the receive function is not active no DATA AVAILABLE event will be handled.

In my real live projects I only use the UART transmit functions and reimplement my custom receive functions.

How does CMSIS address this issue?
What is the best practice here?

Best regards.

Adib.

Parents
  • "The biggest advantage with own code is that it forces me to read the datasheet and ..."

    Exactly so and I've always done the same.

    Actually, I agree with all you wrote there.

    Unfortunately, in my experience I'd say that it's not a very common point of view; and for various reasons. Just yesterday a new manager was forced on me. He comes from a Windows/Microsoft background and thinks embedded systems must be developed in the same way. Why develop a component when you can just drop an existing one from someone else into a project? Heated discussions ahead.

Reply
  • "The biggest advantage with own code is that it forces me to read the datasheet and ..."

    Exactly so and I've always done the same.

    Actually, I agree with all you wrote there.

    Unfortunately, in my experience I'd say that it's not a very common point of view; and for various reasons. Just yesterday a new manager was forced on me. He comes from a Windows/Microsoft background and thinks embedded systems must be developed in the same way. Why develop a component when you can just drop an existing one from someone else into a project? Heated discussions ahead.

Children
No data