I'm trying to get into embedded system design and have been hung up on what hardware is required to use a USB connection to communicate with the microcontroller (and therefore, flash it). Here's what I have so far.
I will be using an ATMEGA164 (data sheet)
I want to program the microcontroller via a USB so I will use a USB to UART bridge, specifically the FT231XS-U (data sheet)
The data sheet for the FTS231 has a diagram for USB to RS485.
Here's where I start to get confused. I'm presuming that the TXD and RXD pins of the FT231 (after the RS 485 level converter) connect to the RDX and TXD pins of the microcontroller (respectively). Is that correct? Also, the FT231 says that its IO pins (in this configuration) are 3.3V and that 3.63V is the maximum but the microcontroller will be powered by the 5V from the USB so will I need a logic level converter? When I look for a RS485 logic level converter I don't find anything that matches what I'm thinking of which leads me to believe that I'm misunderstanding something.
Am I on the right track or am I misunderstanding something else entirely?
Edit: I intend to use a bootloader, perhaps Optiboot.