I am learning UART and the problem that i have is understanding what happens when i send serial data to my PC via USB which is built in to the Arduino uno board.
For incoming serial data i am using Terminal v1.9b and it basically lets me to set some parameters and listen to incoming data on Software serial port and or write to it.
- Atmega328p's Baud rate is set to 9600
- Terminal connects to it (it performs a reset) and i get my data in.
Very simple, it all works and i don't have a problem with it. What my question is: I assume that my PC doesn't talk to atmega328p directly since it has no USB interface. it talks to a bootloader chip which converts the USB to UART and then i receive that message on my atmega328p. How does that chip know which baud rate we agreed to. OR "Terminal" sends the baud rate to that bootloading chip via usb protocol and it sets its UART settings ?