Вы находитесь на странице: 1из 27

dsPIC+LabVIEW

2 de Octubre de 2010

Contenido
Introduccin Arquitectura interna de un dsPIC Interrupciones y excepciones Entorno de desarrollo MPLAB IDE Inicializador Visual VDI Perifricos avanzados con VDI

Introduccin

Qu es DSC?
Las aplicaciones modernas mezclan las funciones tpicas MCU con las de procesamiento digital de seales. La empresa Microchip Technology Inc. fabrica un circuito hibrido MCU/DSP, cuyo manejo es similar a sus clsicos microcontroladores PIC pero incluye las principales prestaciones de los DSP. Dando origen al llamado Controlador Digital de Seales, DSC (Digital Signal Controller).

Introduccin

Los DSC se comercializan en la actualidad en diferentes dispositivos agrupados en dos familias: 1 Familia dsPIC30F 2 Familia dsPIC33F

Introduccin

Familia dsPIC30F
RECURSO Memoria de Programa FLASH Memoria de Datos RAM Memoria de Datos EEPROM Pines de Encapsulado Temporizadores de 16 bits Mdulo de Captura Mdulo Comparador / PWM Mdulo PWM de Control de Motores Convertidores A/D de 10 bits Convertidores A/D de 12 bits UART SPITM (8-16 bits) I2CTM QEI Interfaz CODEC CAN RANGO DE VALORES 12 Kb 144 Kb 512 Bytes 8 Kb 1 Kb 4 Kb 18 80 pines Hasta 5 Hasta 8 entradas Hasta 8 salidas De 6 a 8 500 kbps, hasta 16 canales 100 kbps, hasta 16 canales 12 12 1 Mdulo 1 1 12

Introduccin

Modelos de la familia dsPIC30F


Microchip clasificada sus modelos de la familia dsPIC30F en tres categoras atendiendo a su aplicacin. 1 Dispositivos dsPIC30F de propsito general. 2 Dispositivos dsPIC30F para el control de sensores. 3 Dispositivos dsPIC30F para el control de motores.

Introduccin

Familia control de motores y conversin de la energa

Introduccin

Familia dsPIC33F
RECURSO Memoria de Programa FLASH Memoria de Datos RAM Memoria de Datos EEPROM Temporizadores de 16 bits Mdulo de Captura Mdulo Comparador / PWM Mdulo PWM de Control de Motores Convertidores A/D de 10 bits Convertidores A/D de 12 bits UART SPITM (8-16 bits) I2CTM QEI Interfaz CODEC CAN RANGO DE VALORES Hasta 256KB Hasta 30KB No Dispone Hasta 9 Hasta 8 entradas Hasta 8 salidas Hasta 8 2.2 Mbps, hasta 32 canales 1 Mbps, hasta 32 canales Hasta 2 mdulos Hasta 2 mdulos 1 Mdulo 1 1 Hasta 2 mdulos

MEMORIA DE PROGRAMA

MEMORIA DE DATOS

PUERTOS DE E/S MULTIFUNCI N

Arquitectura interna

1. Memoria de datos 2. Memoria de programa 3. Camino de datos 4. Puertas de E/S 5. Perifricos diversos 6. Recursos para la gestin del sistema y de la energa
P E R I F E R I C O S CAMIN O DE DATOS GESTIN DEL SISTEMA Y DE LA ENERGA

Entorno de desarrollo MPLAB IDE

10

MPLAB

Entorno de desarrollo MPLAB IDE

El MPLAB IDE es un entorno de desarrollo dotado de un editor, un gestor de proyectos, un depurador de programas y varias herramientas para el desarrollo de aplicaciones para los microcontroladores PIC y dsPIC. Microchip dispone de un compilador C MPLAB C30 integrable en el entorno de desarrollo MPLAB IDE con el que desarrollar programas en este lenguaje.

11

MPLAB

Simulador MPLAB SIM


Debugger->Select Tool-> MPLAB SIM Opciones de configuracin

12

MPLAB

Programacin de perifricos con Visual Initializer


Los perifricos integrados en el dsPIC pueden desarrollar distintas tareas en funcin de cmo estos sern configurados. Para facilitar esta tarea de la inicializacin de perifricos del controlador (puertos de entrada/salida, convertidores analgicos, temporizadores, etc.) el entorno de desarrollo MPLAB IDE dispone de una herramienta denominada Visual Initializer, VDI (Visual Device Initializer) o Inicializador Visual.

13

MPLAB

Tools->Visual Initializer

Visual Initializer-> Code Generation (generar codigo ASM)

Perifricos avanzados con VDI

15

VDI

Perifricos avanzados con VDI


Algunos de los recursos comunes en los DSC son: Temporizadores de propsito general y WDT Convertidores AD Mdulo de Captura Mdulo de comparacin y PWM Mdulo PWM para control de motores Mdulo UART Mdulo I2C, entre otros

16

MDULO UART

17

UART

Mdulo UART
La UART (Universal Asynchronous Receiver-Transmitter) es uno de los mdulos seriales de E/S disponible en los DSC. Los DSC disponen de uno a ms UART segn del modelo que se trate. La UART funciona en modo full-duplex con datos de 8 o 9 bits, 1 o 2 bits de STOP y un bit de paridad par o impar. Entre otros, para trabajar con el mdulo UART, se utilizan los registros UxTXREG, UxRXREG, UxMODE, UxBRG y UxSTA.
18

UART

Ejemplo: Transmisin de datos va UART usando VDI

Cuadro de dialogo para la configuracin del mdulo UART.


19

EJERCICIO 1: Envo y recepcin de datos mediante la UART


Realice un programa en C, para el dsPIC30F4011, el cual reciba una trama de datos va UART y transmita la trama recibida en forma invertida. Por ejemplo si se recibe la trama de caracteres La Roma amor se transmitir la trama roma amoR. El fin de cadena ser identificado con un retorno de carro /r (ENTER). Implemente el programa generado mediante el mdulo de electrnica provisto para este fin.

20

MDULO PWM PARA CONTROL DE MOTORES

21

PWM

Mdulo PWM para control de motores

El modulo de control de motores PWM (MCPWM, motor control PWM) simplifica la tarea de generar mltiples, salidas sincronizadas de pulsos de ancho variable. En particular este mdulo, resulta til en aplicaciones de potencia y control de motores. Existen grupos de dispositivos DSC destinados al control de motores, pudiendo tener 8 salidas para dispositivos de 64 pines o ms, o 6 salidas en caso de un nmero menor.

22

PWM

Los pines de salida del mdulo MCPWM se agrupan en parejas, una por cada generador PWM, para controlar la polaridad de las seales de salida, que pueden ser iguales o complementarias segn se requiera (PWM4H-PWM4L, PWM3H-PWM3L, PWM2H-PWM2L y PWM1H-PWM1L). Para la manipulacin del mdulo MCPWM entre otros se utilizan los registros PTCON, PTMR, PTPER y los registros de ciclo til PDC1, PDC2, PDC3 y PDC segn sea el caso.

23

PWM

PWM

Configuracin del mdulo MCPWM usando VDI

25

EJERCICIO 2: Control de velocidad de un motor de DC


Basado en el programa generado en el Ejercicio 1: Desarrolle un programa en C, para el dsPIC30F4011, el cual permita variar la velocidad y direccin de un motor de DC, en base a una serie de parmetros recibidos va UART. Sugerencias: Para modificar la velocidad del motor de DC, configure el mdulo MCPWM como se indico, y modifique el registro PDC1 en base a los parmetros recibidos va UART. Utilice el pin PWM1H como salida. Para controlar la direccin (DIR1 RE0) y paro (BREAK1 RF0) del motor de DC, habilite dos pines de salida del sistema de electrnica provisto, y modifique estas salidas en base a los parmetros recibidos va UART. La trama recibida tendr la siguiente forma # <DIR><PWM> # cabecera de la trama (1 byte) <DIR> direccin del motor (1 byte) <DUTY> duty PWM (1 bytes)
26

donde:

SUGERENCIAS:

Trama enviada desde la PC Cabecer a Accin tomada por el DSC Argumentos Modificacin de la velocidad y direccin del motor de DC de acorde a los argumentos recibidos.

Trama enviada hacia la PC

'#'

<DIR (1 byte)> <PWM (2 bytes)>

27

Вам также может понравиться