¿Cómo aprender el programa dsPIC UART basado en la experiencia PIC USART?

0

Aprendí USART de PIC16F883 y quiero aprender UART de dsPIC33FJ64MC802. (En realidad necesito aprender dsPIC, pero aprendí PIC16F883 primero porque pensé que es más fácil de aprender.)

Aquí está mi diagrama de circuito de PIC16F883 en el simulador de Proteus (puedo enviar mensajes a un puerto COM virtual):

Yaquíestáelcódigo:

voidmain(){charch;UART1_Init(19200);Delay_ms(100);while(1){if(UART1_Tx_Idle())UART1_Write_Text("OK2\r\n");
             Delay_ms(500);
     }
}

He encontrado algunos recursos para enseñar dsPIC UART, pero apenas puedo leer el código de ejemplo. Y no sé cómo es el circuito del código de muestra y cómo aprender. ¿Alguien puede proporcionar alguna ayuda? ¿Cómo puedo aprender dsPIC UART según lo que he aprendido de PIC?

1. Ejemplo de UART para DSPIC33 (DSPIC33FJ128GP802)

2. Configuración de la transmisión RS232 en un dsPIC

3. problema de transmisión UART de dsPIC33F

4. Hilo: [dspic33] UART: se transmite bien, pero recibe basura

EDITAR:

Una forma fácil de ejecutar dsPIC UART es usar mikroC para dsPIC, es muy fácil de usar. Proporciona código de muestra y el código es fácil de entender.

    
pregunta Po-Jen Lai

3 respuestas

4

Lamentablemente, no has aprendido mucho de tu experiencia anterior con UART si ese es todo el código que tienes. Aquí parece que ha usado un par de bibliotecas (es decir, archivos de encabezado) que han implementado todas las cosas "difíciles" para usted.

Le sugiero que eche un vistazo a su código y abra la función UART1_Init() . Lo más probable es que se incluya como uart.c y uart.h , donde el archivo .c es la implementación real.

Aquí encontrará cómo funciona realmente UART, y cuando haya aprendido esto, puede pasar a otros controladores. De hecho, mire todas sus funciones de uart y estudie, descubriendo lo que significa cada línea. Esta es la forma más común de aprender código: estudiar código, entenderlo y escribir el suyo propio.

    
respondido por el chwi
1

Sugiero ver la documentación del Microchip XC16 que viene en la carpeta \ docs de la instalación, específicamente 16-Bit_Language_Tools_Libraries_51456.pdf (para XC16 versión 1.11). Esto tiene muchos ejemplos de UART y explica cómo usar las funciones de la biblioteca XC16 para controlar el UART.

También sugiero el sitio Fuente de código incrustado de Microchip, ya que hay muchas muestras disponibles allí.

    
respondido por el Adam Lawrence
1

Si realmente desea aprender el UART, eche un vistazo a mi código UART enlatado para PIC y dsPIC. Esto debería incluirse en el lanzamiento de las Herramientas de desarrollo de PIC en enlace . Busque archivos con "uart" en sus nombres en la FUENTE > PIC y FUENTE > Directorios DSPIC dentro del directorio de instalación del software.

Por ejemplo, source / pic / uart.ins.aspic implementa una interfaz de bajo nivel altamente configurable para la mayoría de los UART PIC de 8 bits. Puede especificar si utiliza interrupciones o sondeos, FIFO de entrada y salida, etc. La contraparte dsPIC será source / dspic / uart.ins.aspic. Una cosa buena de la arquitectura dsPIC es que cada interrupción se vectoriza individualmente, por lo que es posible escribir un módulo UART autónomo que maneje las interrupciones y todo en el mismo archivo.

    
respondido por el Olin Lathrop

Lea otras preguntas en las etiquetas