UART Basic Before Writing Code

Presidint

New Member
I have 8051 microcontroller and using Keil, and before jumping into coding, I feel it's better to get a solid understanding of some basic concepts.

I have a couple of questions that I’m a bit confused about:

When we talk about terms like UART, do we refer to it as hardware, software, or protocol? Sometimes I see them used in different ways, and it’s not always clear to me.

To keep it simple, can I refer to it as hardware modules inside the microcontroller? Is that a correct way to think about it?

Also, if UART is considered a software protocol, how can it be full duplex? In code, I usually see we either send or receive a character, not both at exactly the same time. But as per the definition, full duplex should mean sending and receiving can happen simultaneously. Could you please clarify how that works in practice?
 
Cookies are required to use this site. You must accept them to continue using the site. Learn more…