Hola, no soy el más indicado para contestar esto, pero creo que de forma directa no se puede conectar un pic16f877 por usb, tal vez sería mejor utilizar un pic de la familia 18F que ya tenga incluido un puerto usb, por decirte alguno puedes usar el pic 18F2550 o el 18F4550.
Espero que alguie más te aclare bien la duda, suerte!