¿Algún compilador MPLAB, por ejemplo, XC8, tiene funciones integradas para controlar periféricos PIC como en CCS PIC C?

El compilador CCS proporciona muchas funciones integradas para acceder y utilizar los periféricos del microcontrolador PIC. Esto hace que sea muy fácil para los usuarios configurar y utilizar los periféricos sin profundizar en los detalles de los registros asociados a la funcionalidad.

Ejemplos:

Conversión D/A: dac_write(),setup_dac()

RTOS: rtos_await(), rtos_msg_send(), rtos_run(), rtos_disable(), rtos_overrun()etc.

Memoria no volátil: erase_eeprom(), read_external_memory(), write_eeprom( )etc.

Temporizadores: get_timer_x(), set_timerx(), setup_timer_0()etc.

¿Es posible obtener de alguna manera la misma funcionalidad en MPLABX IDE también o tendré que escribir mis propias funciones de biblioteca como las que se muestran arriba escribiendo código que altera los registros a bajo nivel? Estoy usando el compilador XC8.

El compilador CCS C que tiene este tipo de funciones es la razón principal por la que lo he usado en el pasado. Pero ahora quiero pasar a MPLAB.

Puede encontrar todo desde aquí ccsinfo.com/content.php?page=syntax-functions
El compilador ccs vale cada centavo.
Scott Seidman. Entiendo. Desafortunadamente, tengo un ICD3 que no funciona con mi compilador CCS C (ver 5). ¿Ha encontrado algún error en el software MPLAB que le gustaría señalar? He encontrado personas que admiten ambas herramientas, MPLAB y CCS C Compiler. No estoy seguro de cuál es mejor, es decir, menos errores y proporciona más facilidad para programar y depurar microcontroladores PIC.
Cómo usar el compilador ccs con icd3 se aclara en las preguntas frecuentes de ccs

Respuestas (1)

Debería encontrar documentación para la biblioteca de periféricos XC8 de Microchip en la carpeta 'docs' donde tiene instalado el compilador XC8.
En mi PC está en C:\Program Files (x86)\Microchip\xc8\v1.21\docs
El archivo que está buscando es MPLAB_XC8_Peripheral_Libraries.pdf

No me gusta particularmente la documentación o su sistema Doc-O-Matic automatizado que la produce, ya que no me parece particularmente fácil de usar, pero YMMV...

Debo decir después de revisar este documento que esta es una documentación deficiente. Qué vergüenza...
Personalmente, nunca uso plib, pero siempre uso mi propio código para acceder a los registros; de esa manera, sé exactamente qué está haciendo y cómo funciona.
Hasta donde yo sé, plib es solo para PIC18, lo que puede afectar su utilidad para el OP.
plibtambién es para pic32, y me imagino pic24/dspic33. En la plataforma chipKIT, hemos eliminado por completo el uso del plibnúcleo ahora: todo es código 100 % escrito a mano.
plib se implementa en los PIC de 16 y 32 bits (aunque en los PIC32 se está eliminando a favor de la 'armonía'). Pero una de mis quejas favoritas con el plib de Microchip es su inconsistencia entre diferentes familias. Por ejemplo, esperaría escribir un código plib en un 18F para hacer un poco de I2C y luego, en una fecha posterior, transferirlo a un 24F, pero todas las llamadas a la función plib y los parámetros cambian, por lo que termina reescribiendo todo desde cero...