|  | 

Segger emUSB-C PD

emUSB-C PD trasforma il cavo in una connessione intelligente, consentendo il rilevamento del tipo di dispositivo collegato, delle capacità di alimentazione, del software USB Host/Device e molto altro. Con la libreria emUSB-C PD di SEGGER, le applicazioni embedded possono gestire facilmente una porta USB-C su qualsiasi dispositivo dotato di un controller USB PD.

emUSB-C PD è in grado di rilevare se un dispositivo collegato è una sorgente (source) o un utilizzatore (sink) di energia, e persino di identificare i ruoli dei dati USB (host/device). Per i dispositivi che utilizzano l’USB-C puramente come fonte di alimentazione o per la ricarica della batteria, supporta funzioni come il “dead battery signaling”, garantendo una gestione affidabile dell’energia anche in condizioni critiche.

La libreria è altamente efficiente, scritta in codice sorgente ISO/ANSI C e dotata di un’API estremamente semplice per un’integrazione immediata. Gli sviluppatori possono configurarla per un footprint di memoria minimo, rendendola ideale per sistemi con risorse limitate. Inoltre, emUSB-C PD supporta l’uso di caricabatterie con tensione di alimentazione variabile, aumentando la flessibilità.

emUSB-C PD può essere utilizzata in combinazione con emUSB-Host e/o emUSB-Device, oppure come soluzione stand-alone per dispositivi che sfruttano l’USB-C solo per l’alimentazione o la ricarica.


Caratteristiche principali

  • Role Swap (Scambio di ruolo): Di default, l’host USB è sempre la sorgente di energia e il device è l’utilizzatore. Grazie al role swap, un host può diventare utilizzatore (sink) e un dispositivo USB collegato può diventare la sorgente (source).
  • Rilevamento connessione su connettori USB Type-C: La libreria rileva e identifica i dispositivi collegati alle porte USB-C, garantendo compatibilità e funzionalità ottimali.
  • Negoziazione dinamica dell’alimentazione fino a 20V 3A: emUSB-C PD consente alle applicazioni di negoziare dinamicamente l’erogazione di potenza, assicurando che i dispositivi ricevano la tensione e la corrente ideali per le proprie esigenze.

Casi d’uso

L’USB-C dispone di linee aggiuntive e può trasmettere molta più potenza rispetto alle precedenti connessioni USB. Questo aiuta gli sviluppatori a soddisfare i requisiti del mandato UE (Direttiva 2014/53/UE), che impone l’uso del cavo USB-C per tutte le apparecchiature elettroniche dotate di ricarica cablata.

  • Evitare perdite improvvise di alimentazione: Un dispositivo alimentato a batteria può chiedere al dispositivo collegato di fornire energia quando le proprie batterie iniziano a scaricarsi, evitando interruzioni improvvise della connessione.
  • Ricarica più rapida: Con l’USB tradizionale, la potenza è limitata a 5V e 500mA (1.5A nel migliore dei casi). Con l’USB-C PD, il protocollo interroga le capacità del cavo e richiede tensioni e correnti più elevate per ricariche rapide e affidabili.

Come funziona emUSB-C PD

La libreria si compone di due livelli: lo stack di protocollo indipendente dal dispositivo e un driver per gestire l’hardware specifico del target. Entrambi i livelli sono divisi in due moduli:

  1. Modulo Base: Fornisce l’API e gestisce il rilevamento statico dei pin CC.
  2. Modulo PD: Responsabile della comunicazione dei pacchetti Power Delivery.

Funzioni dei Pin

Il connettore USB-C ha 24 pin. emUSB-C PD viene utilizzato principalmente per controllare i pin aggiuntivi CC1 e CC2 (Channel Configuration), usati per determinare l’orientamento del cavo, la distribuzione dei ruoli e il controllo della porta.


Utilizzo tipico delle risorse

FunzioneCodice (Flash)RAM
USB-C OTG (On-The-Go)1400 bytes220 bytes
USB-C PD (Power Delivery)5100 bytes450 bytes
USB-C PD (Solo Sink)3800 bytes450 bytes
USB-C PD (Solo Source)3300 bytes450 bytes

Licenze

emUSB-C PD è disponibile sotto vari modelli di licenza per software embedded e viene fornito come pacchetto di codice sorgente. Tutte le licenze prevedono un pagamento una tantum, sono royalty-free e non basate su abbonamento.

Articoli simili

  • Segger emFile

    PanoramicaemFile è un file system che consente alle applicazioni e ai sistemi embedded di archiviare dati in modo sicuro e affidabile su ogni tipo di dispositivo di memoria. Essendo indipendente rispetto all’hardware, può essere eseguito su qualsiasi target a 16, 32 o 64 bit per il quale sia disponibile un compilatore; inoltre, è supportata la…

  •  |  | 

    Segger emBoot Secure

    Panoramica emBoot-Secure è la soluzione di SEGGER conforme al Cyber Resilience Act (CRA) per aggiornamenti firmware sicuri e verificabili su dispositivi embedded. Questo approccio end-to-end protegge i dispositivi da modifiche non autorizzate del firmware, furto di proprietà intellettuale e clonazione. Garantisce che venga installato solo firmware autentico e approvato dal produttore, utilizzando un’architettura crittografica a…

  •  |  | 

    Segger emMQTT

    Panoramica Il Message Queuing Telemetry Transport (MQTT) è un protocollo di trasporto messaggi di tipo publish/subscribe (pubblica/iscriviti) progettato per funzionare sopra il protocollo TCP/IP. È semplice, leggero e aperto. Queste caratteristiche lo rendono ideale per molteplici situazioni, inclusi gli ambienti con risorse limitate come la comunicazione Machine to Machine (M2M) e i contesti Internet of…

  •  |  | 

    Segger emFTP

    FTP significa File Transfer Protocol (Protocollo di Trasferimento File). È il meccanismo di base per spostare file tra macchine su reti basate su TCP/IP, come Internet. L’FTP è un protocollo client/server, il che significa che una macchina (il client) avvia il trasferimento contattando un’altra macchina (il server) ed effettuando delle richieste. Il server deve essere…

  •  |  |  | 

    Segger emUSB Device

    Panoramica emUSB-Device è un software per dispositivi USB ad alte prestazioni, progettato specificamente per i sistemi embedded. Scritto in codice ANSI C, consente una facile integrazione della funzionalità USB in qualsiasi sistema embedded. Vengono fornite molteplici classi di dispositivi standard, che permettono al sistema di comportarsi come un dispositivo USB standard e garantiscono la comunicazione…

  •  |  |  | 

    Segger emUSB Host

    Panoramica Il software emUSB-Host consente alle periferiche USB di funzionare con i dispositivi embedded. Fornisce funzionalità complete di host USB, inclusi il supporto per hub esterni e driver di classe (opzionali). Il software è conforme alle specifiche standard stabilite dall’USB Implementors Forum e supporta tutte le modalità di trasferimento (control, bulk, interrupt e isochronous) a…