Design de hardware: sistemas USB Tipo C
Aqui estão alguns designs de exemplo para sistemas USB Tipo C.
Um sistema USB tipo C típico tem estes componentes:
- O controlador de Dual-Role USB é capaz de operar na função de host ou na função de função/dispositivo/periférico. Esse componente é integrado ao SoC.
- A detecção de Carregamento de Bateria 1.2 pode ser integrada em determinados SoCs. Alguns fornecedores de SoC fornecem um módulo PMIC que implementa a lógica de detecção, outros implementam no software. Windows 10 Mobile dá suporte a todas essas opções. Entre em contato com o fornecedor do SoC para obter detalhes sobre esse componente.
- O controlador de porta Type-C -PD gerencia os pinos CC no conector USB Type-C. Dá suporte à codificação/decodificação BMC de mensagens de entrega de energia. Esse componente não está integrado na maioria dos SoCs.
- Mux Pares USB superSpeed para uma porta no controlador, dependendo da orientação detectada pelo controlador de porta Tipo C. Pares SuperSpeed do Mux e possivelmente linhas de SBU em outro lugar (geralmente o módulo Exibir) ao entrar em um modo alternativo.
- A origem VBus/VConn é necessária. A maioria dos PMICs implementa o controle VBus/VConn. Entre em contato com seu fornecedor de SoC/PMIC para obter detalhes.
Design do sistema USB Tipo C com um controlador inserido
Além dos componentes na lista anterior, um sistema USB Tipo C pode ter um controlador inserido. Esse microcontrolador inteligente que atua como o gerenciador de políticas do Tipo C e do Power Delivery para o sistema.
Aqui está um exemplo de um sistema USB Tipo C com um controlador inserido:
Aqui está outra exibição:
Para um sistema que tenha um controlador inserido, carregue o driver interno fornecido pela Microsoft. UcmUcsi.sys implementa a especificação UCSI (Interface de Software do Sistema) do Conector USB Tipo C.
Driver UCSI. Para obter informações sobre as pilhas de dispositivo carregadas para o driver, consulte Drivers for supporting USB Type-C components for systems with embedded controllers(Drivers for supporting USB Type-C components for systems with embedded controllers).
Para um sistema que tem um controlador inserido que usa transporte não ACPI.
Escrever um driver de cliente UCSI
Referência de driver tipo C USB
Design do sistema TIPO C USB
Aqui está um exemplo de um sistema USB Tipo C para um dispositivo móvel que não tem um controlador inserido:
Aqui está outra exibição:
Para o design anterior, implemente um driver que se comunique com o conector e mantenha o sistema operacional informado sobre eventos USB Tipo C no conector.
Gravar um driver de conector USB Tipo C
Referência de driver tipo C USB