Dependerá en gran medida de las características que ofrezca su dispositivo.
El UART a través de USB es una solución atractiva porque puede usarlo en cualquier microcontrolador que pueda funcionar con UART, incluso si no tiene el hardware y tiene que golpearlo un poco. Los puentes FTDI UART-a-USB (también hay otros, como Silicon Labs, pero FTDI es el más usado) ocultan todos los detalles del USB, por lo que no hay ningún requisito para el microcontrolador al respecto. Un microcontrolador con 512 bytes de Flash y 2 E / S puede comunicarse con una PC de esta manera.
CDC es diferente. Es una clase USB, lo que significa que necesita una pila USB y el controlador CDC. Especialmente el controlador CDC puede ser un problema en los microcontroladores de gama baja, mientras que pueden estar disponibles para un RTOS, pero entonces probablemente se ejecutará en una plataforma más avanzada. Dado que ejecutará el software USB, tendrá que obtener un ID de proveedor (VID) y un ID de producto (PID) si desea identificarlo en un bus USB. Una licencia cuesta dinero: 2000 dólares para el VID, sin el cual no se le permite usar el logotipo USB.
El uso de chips FTDI resuelve este problema: FTDI tiene un VID y PID, por lo que no tiene que preocuparse por eso. Por defecto, el PID no será exclusivo de su producto (todos los FT232R tendrán el PID 0x6001, por ejemplo), pero el PID se almacena en la EEPROM del chip y puede modificarse. FTDI puede proporcionarle un bloque de PID únicos.
Para su proyecto diario, trabajaría con los chips FTDI, ya que no necesitan huella en el microcontrolador y son tecnología probada.