µCs mit analogen Ausgängen sind bei den kleineren Größen eher unüblich. Das Schlagwort dazu heißt übrigens DAC (Digital-Analog-Converter). Was dein gewählter PIC hat oder nicht hat, kannst du im Datenblatt nachlesen, um dessen Lektüre wirst du sowieso nicht umhin kommen.

Dir reicht die PWM-Funktionalität, die quasi jeder µC mit den Timern mitbringt. Mit dem Signal kannst du dann (bei gemeinsamer Masse von USB-Teil und Leistungsteil) direkt an den Motortreiber ran (Integrierte Treiber haben üblicherweise getrennte Anschlüsse für Logikspannung und Versorgungsspannung) oder du baust noch einen Optokoppler dazwischen, um die USB-Seite komplett vom Leistungsteil zu trennen. Letztere Variante hat den Vorteil, dass du dich deutlich mehr anstrengen musst, um den USB-Port zu rösten, der Nachteil besteht darin, dass du vielleicht etwas mehr Arbeit darin investieren musst, das PWM-Signal sauber durch den Optokoppler zu befördern.

Ach ja: Wenn du keinen PIC mit genug PWM-Ausgängen findest, kannst du auch einfach mit zwei PICs arbeiten die untereinander kommunizieren. Oder mit einem kleinen der sich um den USB-Kram kümmert, und einen größeren/spezialisierten der die Signalerzeugung macht. Letzterer kann dann über Optokoppler abgetrennt werden, dann kann der sein PWM-Signal direkt an die Motorendstufe weitergeben und der USB-Port ist dennoch entkoppelt/geschützt.

mfG
Markus