Todos los registros son tratados como enteros...
Es decir que entre CCPR1L:CCP1CON<5:4> tenes 10 bits, de 0 a 1024, no se por que alguien quisiera complicarse y pensarlo como 10 bits en los cuales 8 son enteros y 2 son fracciones.
Me refiero a tomar a CCP1CON ( bits 5 y 4 ) como fraccion.
Asi que si a eso te referis, SI podria tomarse como que recibe valores decimales o fraccionarios. Pero si lo pensas como un entero pienso que es mas facil de entender. Tenes que recodar que el Timer2 de 8 bits, dentro del PIC se generan 2 bits mas que se junta con el registro del TMR2 para llegar a 10bits, y luego compararse con los 10bits del duty.