Hola.
Para poder comunicarse con un teclado USB, necesitás que el módulo USB del uC sea HOST, o mínimamente OTG(On The Go) si está dentro de los periféricos soportados, y el 18F4550 sólo posee capacidad de Device, por lo que no es posible con ese microcontrolador. Hay otros con los que es posible, aunque desconozco si en la familia 18F.