Está en la página 1de 34

 

Microcontroladores
 
Práctica 1
 
 
Uso del software de diseño MPLAB X           
 
y MIKROC  


Miguel Ángel Esparza Ávila
Profesor del I T Durango
Diciembre 2018
 
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

Objetivo:
Introducción al uso del software de diseño MPLAB IDE y MikroC

Temas relacionados:
2.1. Programación en lenguaje ensamblador.

2.2. Ambiente integrado de desarrollo (IDE) para Microcontroladores.

2.3. Programación del microcontrolador en lenguaje ensamblador.

1. Marco teórico
1.1 Lenguajes de programación
El proceso de programación de un sistema basado en un microcontrolador (sistema embebido)
requiere inicialmente de un computador o Host, en el cual se ejecute una herramienta de
software denominada IDE (Integrated Development Enviroment).
Dentro de esta herramienta, se realiza la programación de instrucciones del sistema
microcontrolador, que, por lo general, puede incluir varios archivos fuente con partes del
programa. La secuencia de instrucciones que especifica el programa en un archivo de texto que
será grabado en el sistema embebido se conoce como firmware. Cuando el programa es
finalizado, se hace uso de un software llamado «compilador». Esta herramienta transforma el
texto que contiene las instrucciones de forma secuencial y lo convierte en un código de máquina:
un archivo compuesto de números binarios que va a ser enviado directamente a la memoria de
programa del sistema embebido (denominado Target).

Entre los lenguajes de programación que se pueden elegir para programar un sistema
embebido, se tienen las siguientes opciones:

 Lenguaje ensamblador
 Lenguaje ANSI C
 Lenguaje C++
 Basic

1
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

El lenguaje ensamblador es el lenguaje más primitivo, conocido como «lenguaje de bajo nivel»
ya que actúa a nivel de los registros internos del sistema embebido. Se caracteriza por poseer
un conjunto de instrucciones específicas (normalmente aritméticas, lógicas, de manipulación de
bit, de lectura y escritura en memoria y de salto) que permiten manipular los datos dentro del
sistema microcontrolador, siguiendo una secuencia especificada por el programador. Este
lenguaje obliga al programador a conocer a fondo la arquitectura del sistema embebido, ya que
las instrucciones suelen interactuar con los registros internos del procesador, con la unidad
aritmética lógica, con las unidades de memoria y con los puertos de entrada y salida.

En resumen, es claro que el lenguaje ensamblador obliga al programador a interactuar


directamente con la arquitectura del sistema embebido. El conjunto de instrucciones en
lenguaje ensamblador varía de acuerdo con el fabricante del sistema embebido y con la
arquitectura del procesador.

En la actualidad, el lenguaje C es uno de los favoritos para la programación de sistemas


embebidos. Fue creado en el año 1972 en los laboratorios Bell por Dennis Ritchie, con el
objetivo de obtener un método para reescribir el sistema operativo Unix. Luego, en el año 1989,
el lenguaje de programación C se convirtió al estándar del Instituto Nacional Estadounidense
de Estándares (ANSI), conocido también como el lenguaje ANSI C. Este estándar fue
utilizado para la programación de software en computadores y desde hace más de 14 años es
utilizado en la programación de sistemas embebidos, con mucho éxito. El lenguaje ANSI C Se
basa en ciertas reglas y operadores fundamentales que se aplican en la programación de
cualquier sistema embebido. Esto permite que todos los programadores de sistemas
embebidos, independientemente de su marca y modelo, logren hablar el mismo idioma de
programación. Es así que, si se conoce este lenguaje, prácticamente se posee la capacidad de
programar cualquier sistema embebido. La rápida adopción del ANSI C como lenguaje de
programación de sistemas embebidos se debe a los siguientes factores:

 El ANSI C es un lenguaje universal y, por lo tanto, es muy fácil portar un programa


diseñado para un tipo de sistema embebido a otro modelo o marca de sistema embebido.
 El lenguaje ANSI C facilita el trabajo en equipo.
 El ANSI C permite la creación de librerías específicas para el manejo de ciertas rutinas
repetitivas. Esto facilita la programación, reduciendo el tiempo de desarrollo.

2
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

 El lenguaje C permite el encapsulado (rutinas de código que presentan argumentos de


entrada y salidas específicas o retornos. Esto es conocido también como «funciones»).
 El ANSI C es un lenguaje con el que se puede implementar rápidamente algoritmos con
fundamentos matemáticos complejos.
 Es posible introducir bloques de lenguaje ensamblador dentro del ANSI C.

Hace algunos años, los programadores de sistemas embebidos usaban el lenguaje


ensamblador como único método para programar firmware. Cada instrucción en ensamblador
o mnemónico tiene un equivalente en código binario que es la representación de la instrucción
en la memoria de programa. Cuando se programa en ANSI C, el código debe ser transformado
a ensamblador para que el compilador genere el código máquina. El proceso de conversión del
ANSI C a ensamblador lo realiza un generador de código que se encarga de transformar el
lenguaje ANSI C en un equivalente a ensamblador. Los mecanismos que utiliza el generador
de código para transformar el ANSI C a ensamblador dependen de diversos factores: la
arquitectura del sistema embebido, la calidad del generador de código y el uso de un generador
gratuito o con costo de adquisición (en general, los gratuitos son menos eficientes). Cuando se
adoptó el ANSI C como lenguaje de programación para sistemas embebidos, este desplazó al
ensamblador como el lenguaje de preferencia. Los programadores en ensamblador, en
un principio, se mostraban escépticos hacia las ventajas aparentes del ANSI C. Hoy en día, a
pesar del éxito del ANSI C como lenguaje de programación de temas embebidos, algunas
desventajas prevalecen, lo cual hace que el ensamblador todavía resulte ser un lenguaje
alternativo y necesario. Algunas desventajas de la programación en ANSI C para
sistemas embebidos son las siguientes:

 Un programa en lenguaje ANSI C ocupa más espacio en la memoria de programa y


requiere un mayor consumo de memoria de datos.
 Los buenos compiladores tienen un costo; los ensambladores siempre son gratuitos.
Esto implica que contar con un generador de código que convierta el ANSI C a
ensamblador tiene un precio. De acuerdo con la escala de pago, la eficiencia del
ensamblador será mayor.

3
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

 Los compiladores son programas que pueden tener algunos inconvenientes y resultar
ser no muy eficientes en algunas ocasiones.
 El lenguaje C no requiere que el programador posea un conocimiento profundo de la
arquitectura del sistema embebido, lo cual puede llevar a cometer errores en la
programación.

El lenguaje C++ es otra alternativa de programación de sistemas embebidos. Este lenguaje


posee un nivel de abstracción más elevado que el ANSI C, y se basa en la programación
orientada a objetos, en la cual un objeto es un arreglo de datos ordenados, de forma que facilita
la programación. Muchos programadores en C++ se pueden adaptar rápidamente a
la programación de sistemas embebidos haciendo uso de este lenguaje. Por ejemplo, la
empresa Freescale provee un IDE de nombre CodeWarrior, que permite programar sus
sistemas embebidos en lenguaje C++.

Otro lenguaje de programación, menos popular, es el Basic. Es un lenguaje de alto nivel,


conocido por el mundo de los programadores que
alguna vez desarrollaron aplicaciones con el software Visual Basic de Microsoft. De la misma
manera, existen también compiladores que permiten programar sistemas embebidos en otros
lenguajes, como el Pascal.

1.2 Herramientas de desarrollo para la marca Microchip


Para poder comenzar a realizar desarrollos electrónicos con las herramientas de Microchip es
necesario tener en cuenta que se requieren tres tipos de herramientas de desarrollo:

 Herramienta IDE o software de desarrollo


 Programador/Depurador
 El sistema embebido o Target

Dentro de las herramientas de software que se encuentran disponibles para la elaboración de


código se pueden encontrar diversas opciones en internet. Algunas son gratuitas y otras
presentan un costo de adquisición. El IDE más popular para programar los sistemas embebidos

4
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

de Microchip no puede ser otro más que el software ofrecido por el fabricante: el MPLAB X
IDE.

El MPLAB X IDE es un programa que puede descargarse gratuitamente desde la página web
de Microchip y que se instala sobre cualquier sistema operativo Windows, Mac OS o Linux
sobre una plataforma de 32 o 64 bits. El software incluye un ambiente de desarrollo gráfico,
con un editor de texto para introducir los programas, un compilador de lenguaje ensamblador,
un depurador que permite verificar los errores del programa y un enlazador que transforma el
código de programa en el lenguaje de máquina que posteriormente será grabado en la memoria
no volátil del sistema embebido.

El MPLAB X IDE posibilita la programación de todas las familias de microcontroladores de


Microchip, empezando desde la arquitectura más limitada (como la PIC10) hasta la más
avanzada (PIC32MX). Adicionalmente, el MPLAB X IDE incluye
un simulador de firmware que es de gran ayuda para el proceso de depuración de las
instrucciones paso a paso. Esta herramienta permite visualizar el resultado de cada instrucción,
mostrando los contenidos de cada registro en la memoria de datos.

El simulador opera tanto para el lenguaje ensamblador como para el lenguaje ANSI C. Si se
requiere la programación del microcontrolador en lenguaje ANSI C, es necesario
descargar el software compilador MPLAB XC8 para microcontroladores Microchip de 8 bits o el
MPLAB XC16 para microcontroladores Microchip de 16 bits, herramientas que se descargan de
forma independiente de la página web del fabricante y que posibilita la programación en
lenguaje C de cualquier microcontrolador Microchip de 8 o 16 bits. Esta herramienta incluye
librerías para el manejo de periféricos como LCD, SPI, I²C, PWM y USART, entre otros.
Además, contiene librerías matemáticas y de manipulación de memoria.

Los compiladores de Microchip (XC8, XC16 y XC32) poseen tres modos de


operación: gratuito (FREE), Standard y PRO.

El modo de operación PRO, posee un nivel de optimización 50% más


eficiente que el modo FREE y de 20 a 25% que el modo Standard. La descarga gratuita incluye
una versión de evaluación (FREE) que opera en modo PRO durante los primeros 60 días
después de su instalación. Pasado este plazo, el software ingresa en un modo de baja

5
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

optimización de código. Si se desea tener acceso a la licencia del compilador de


manera permanente, se puede adquirir del fabricante.

Existen en el mercado otras herramientas de desarrollo como el


CCS IDE Compiler, que es un software que permite programar microcontroladores de
Microchip de la familia PIC10, PIC12, PIC14, PIC16, PIC18, PIC24 y dsPIC.

Esta herramienta contiene un conjunto de librerías para manejar con mucha facilidad los
microcontroladores de Microchip haciendo uso del lenguaje ANSI C.
El software se puede descargar gratuitamente de internet a través de la página web (www.ccsi
nfo.com). Pero, al igual que los compiladores de Microchip, posee un tiempo de expiración y
también presenta un costo para una licencia permanente.

Adicionalmente, se pueden encontrar otras herramientas en el mercado, como MikroC o


MikroBasic de la empresa Mikroelektronica, cada una con una versión gratuita y una licencia
con costo específico. Existen, por supuesto, muchas otras herramientas de programación para
microcontroladores Microchip, pero se han expuesto las más populares.

En cuanto a los programadores, en el mercado se cuenta con diversos modelos que son
compatibles con el MPLAB X IDE. Esto permite que, una vez conectados al computador,
puedan descargar la aplicación directamente al Target sin necesidad de otro software adicional.
El MPLAB X IDE es compatible con los siguientes programadores:

1. MPLAB ICD 3. Es un programador de alta velocidad que permite la grabación de


microcontroladores de 8 y 16 bits de CPU y las familias dsPIC y PIC32MX. Se conecta al
computador a través del puerto USB y al target a través de un conector RJ11.
Posibilita la depuración de los programas en tiempo real

6
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

(simulación en hardware ) y puede proveer la alimentación del circuito (5 V) aprovechando la


conexión USB.

2. El PICkit 3. Es un programador de bajo costo en forma de llavero. Cuenta con un conector


hembra de seis pines que se puede adaptar a cualquier circuito para realizar la programación
del microcontrolador. No requiere alimentación externa y se conecta al computador a través del
puerto USB. Este grabador permite la programación de todas las familias de microcontroladores
de Microchip, pero no es posible la depuración de las familias PIC32MX avanzadas. Posee la
ventaja de que puede programar microcontroladores con voltajes de alimentación entre 2 a 6
V.

3. El PICkit 2. Este grabador es el antecesor del PICkit 3. Permite la grabación de casi todas
las familias de microcontroladores de Microchip, a excepción de los PIC32MX7, PIC32MX6 y
PIC32MX5. Tampoco permite la depuración de ninguno de los tipos restantes de la familia
PIC32. Posee las mismas dimensiones físicas y conector que el PICkit 3.

7
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

Existen en el mercado infinidad de programadores similares o genéricos a los anteriores, los


cuales son más baratos y que en ocasiones no tienen la misma forma del original.

Un programador utilizado y probado durante buen tiempo y con buenos resultados es el


miniprog+ el cual es compatible con el Pickit2 y por lo tanto con las mismas características,
pero con un precio muy inferior.

Se conecta a la PC con un cable USB y lo utiliza también como fuente de alimentación. Soporta
las familias PIC10F, PIC12F, PIC12HV, PIC16F, PIC18F, PIC18FL, PIC24F, PIC24FJ,
PIC24HJ, dsPIC30F, dsPIC39F, dsPIC33F, PIC32MX, KEELOQ HS y memorias EEPROM
seriales.

Programa los archivos generados por cualquier compilador ya sea ensamblador MPASM, de C
o de Basic (MikroC, MikroBasic, HI-Tech, PICC, IAR, CCS, Microchip XC8, XC16, XC32, etc).

8
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

2. Procedimiento
2.1- Uso de MPLAB X IDE (con lenguaje ensamblador)

1 Ejecutar el software MPLAB X

2
Elegir tipo de proyecto (Choose project)

File> New proyect

O en PROJECTS > Create New

Aparecerá la siguiente pantalla, en la cual se selecciona Microchip Embedded> Standlone


Project y se presiona Next

9
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

2.-

3
Seleccionar dispositivo

Se selecciona el dispositivo a utilizar, en este caso el dsPIC33FJ12MC202. De cualquier


manera, después se puede cambiar.

10
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

4 Selección de herramienta para debug (Select tool)

Se selecciona la herramienta de hardware disponible, en caso de no tener ninguna seleccionar


Simulator.

Es importante verificar los colores de las luces a un lado del nombre de la herramienta a
seleccionar. El código de colores es el siguiente:

Y cuando se tienen dos luces se complementa con el uso de la siguiente tabla

11
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

5
Selección del compilador (select compiler)

En esta ventana deberán aparecer los compiladores para MPLAB instalados, se selecciona el
compilador a utilizar, en este caso XC16(v 1.35). Para la selección del compilador aplica
igualmente los colores de las luces de la tabla anterior.

6 Nombre del proyecto y carpeta (Select project name and folder)

Un Proyecto está definido como un grupo de archivos dentro de una estructura específica de
directorios y usada por el MPLAB X para almacenar y ordenar los archivos y configurar las
aplicaciones. En la siguiente figura se ilustra esta estructura de archivos.

12
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

El nombre del proyecto es blink. Todos los archivos del proyecto se guardan en una carpeta
que se genera de manera automática en el project Folder seleccionado con la estructura de la
figura anterior.

Al presionar Finish se crea el proyecto blink con las características seleccionadas


anteriormente, debiendo aparecer en la ventana de proyectos el proyecto creado, como se
ilustra en la figura.

13
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

7
Agregar archivo fuente al proyecto

Para agregar un archivo fuente al proyecto, se hace click derecho sobre Source  Files y se
selecciona New>AssemblyFile.s para un archivo fuente en lenguaje ensamblador para el
compilador XC16.

Una vez seleccionado el tipo de archivo, aparecerá una ventana donde se debe especificar el
nombre del archivo. Es conveniente que el nombre del archivo sea el mismo que el nombre del
proyecto, en este caso blink.

14
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

Al presionar finish, se agrega el archivo fuente al proyecto que se debe ver en la ventana del
proyecto y la ventana de edición debe aparecer lista para teclear el código.

Archivo
agregad
o

Ventana de edición

Antes del código de la aplicación se debe poner la configuración del dispositivo (bits de
configuración) de una manera predeterminada por cada compilador. Generalmente los
compiladores tratan de que el usuario realice de manera fácil esta configuración y el MPLAB no
es la excepción. Para poner el encabezado de configuración se selecciona Window > Target
Memory Views> Configuration Bits

15
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

En la ventana de salida, parte inferior de la pantalla, aparecen los bits de configuración los
cuales se configuran de acuerdo con la aplicación a desarrollar. Los bits y las opciones son
diferentes dependiendo del dispositivo seleccionado. Para este caso se debe configurar como
se muestra en la siguiente figura.

Se configuran los bits y se presiona Generate Code to output con lo cual debe aparecer en la
misma ventana el código de los bits de configuración. Como se puede notar, en el código
generado se utiliza el delimitador “ // ” para comentarios; este delimitador se utiliza en el lenguaje
C pero en lenguaje ensamblador se utiliza el delimitador “ ; “. El código es el mismo tanto para
lenguaje C como para lenguaje ensamblador, solo difieren en el mencionado delimitador.

16
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

Se copia el código de toda la ventana y se pega en la ventana de edición. Ya que se va a utilizar


lenguaje ensamblador es necesario cambiar el delimitador “ // ” por “ ; ”

17
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

A continuación se debe teclear el código mostrado en la siguiente figura, donde se utilizan


directivas para declarar variables globales “.global”, definir secciones de memoria de datos “
.bss y .data ” y para definir la sección de código “ .text ”. Este código es para la aplicación de
prender-apagar los LED´s (blink) conectados a las líneas RB0-RB7.

8
Compilación

Una vez que se teclea todo el código se guarda y luego se procede a verificar que no haya
errores de sintaxis, para lo cual se compila el diseño presionando el ícono correspondiente.

18
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

Si existen errores, no se completa el proceso de compilación y en la ventana notifica los errores


detectados. Se corrigen los errores y se vuelve a compilar. Este proceso se repite hasta que se
compile con éxito como se muestra en la figura siguiente.

Compilación
exitosa

Ya que el proyecto ha compilado exitosamente se generan varios archivos, entre ellos el archivo
con extensión .hex el cual es el que se va a cargar (programar) en el dispositivo. El mencionado
archivo se encuentra en la carpeta del proyecto en dist > default > production.

19
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

9 Simular en Proteus

Simular funcionamiento en Proteus. Los LED´s deben prender y luego apagar con un tiempo de
retardo de 0.5 segundos. Si el funcionamiento es el adecuado continuar con el paso 10, en caso
contrario regresar a revisar y corregir el código.

10
Armar el circuito en protoboard

Armar en protoboard el circuito de la siguiente figura.

U1
1 4
MCLR RB0/CN4/RP0/AN2/EMUD1/PGD1
20 5
VDDCORE RB1/CN5/RP1/AN3/EMUC1/PGC1
6
RB2/CN6/RP2/AN4
7
RB3/CN7/RP3/AN5
11
RB4/CN1/RP4/SOSCI/EMUD3/PGD3
14
RB5/CN27/RP5/ASDA1
28 15
AVDD RB6/CN24/RP6/ASCL1
27 16
AVSS RB7/CN23/RP7/INT0
17
RB8/CN22/RP8/SCL1/PWM2H1/TCK
18
RB9/CN21/RP9/SDA1/PWM2L1/TDO
21
RB10/CN16/RP10/PWM1H3/TDI
2 22
RA0/CN2/VREF+/AN0/EMUD2/PGD2RB11/CN15/RP11/PWM1L3/TMS
3 23
RA1/CN3/VREF-/AN1/EMUC2/PGC2 RB12/CN14/RP12/PWM1H2
9
RA2/CN30/CLKI/OSCI RB13/CN13/RP13/PWM1L2
24 R1 R2 R3 R4 R5 R6 R7 R8 R9
10 25 130R 130R 130R 130R 130R 130R 130R 130R 130R
RA3/CN29/CLKO/OSCO RB14/CN12/RP14/PWM1H1
12 26
RA4/CN0/T1CK/SOSCO/EMUC3/PGC3 RB15/CN11/RP15/PWM1L1
DSPIC33FJ12MC202

D1 D2 D3 D4 D5 D6 D7 D8 D9
LED-RED LED-RED
LED-RED LED-RED
LED-RED LED-RED LED-RED
LED-RED LED-RED

11
Programar el Microcontrolador

Cargar el archivo blink.hex en el microcontrolador utilizando el programador disponible.

12
Verificar funcionamiento en físico

Si funciona de acuerdo al diseño inicial ¡¡¡¡¡¡ Felicidades !!!!!!.

20
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

2.2 Uso del compilador MikroC PRO for dsPIC


MikroC PRO for dsPIC organiza las aplicaciones en proyectos que consisten de un archivo de
proyecto con extensión .mcpds y uno o más archivos fuente con la extensión .c

1 Ejecutar el software MikroC

Inicie el compilador mikroC PRO for PIC al hacer doble clic en el icono apropiado. Aparecerá
mikroC PRO for dsPIC IDE en la pantalla y luego la pantalla inicial del compilador como se
ilustra en la siguiente figura.

2
Creación de un nuevo proyecto.

El proceso de crear un nuevo proyecto es muy simple.


Seleccione la opción New Project del menú inicial de
proyectos como se muestra en la figura de la derecha.

21
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

Aparecerá una ventana denominada New Project Wizard que le guiará a través del proceso de
creación de un nuevo proyecto. La ventana de entrada de esta aplicación contiene una lista de
acciones que se realizarán durante la creación de un nuevo proyecto. El paso 1 es definir las
características del proyecto:

 Nombre del proyecto


 Carpeta donde se guardará el proyecto
 Dispositivo a usar
 Frecuencia del reloj
 Casilla para marcar si se quiere definir los bits de configuración

En este caso, el proyecto blink, utiliza el dsPIC33FJ12MC202 con generador de reloj interno
(7.37 MHz), la carpeta donde se guarda el proyecto es
C:\Users\Miguel\Documents\MikroC\blink\ y se desea definir los bits de configuración.

Una vez que se definen las características del proyecto, se presiona Next para continuar al
paso 2, apareciendo una ventana como se ilustra en la figura siguiente.

22
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

Si el nuevo proyecto consiste en varios ficheros fuentes, se necesita especificarlos y hacer click
en el botón Add para incluirlos. En este ejemplo no hay ficheros fuentes adicionales, por lo
tanto, solo se presiona Next para continuar al paso 3.

23
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

En esta ventana se define el estado inicial de las librerías, con dos opciones:

1. Incluirlas todas (Default)


2. No incluir ninguna (Compilación más rápida)

En este caso se selecciona “no incluir ninguna” y se presiona finish.

Si en el paso 1 se marcó la casilla para definir los bits de configuración, aparecerá una ventana
como la que se muestra en la figura siguiente.

24
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

Para este ejemplo, configurar como se muestra en la figura anterior.

Ya que se definieron los bits de configuración, se presiona OK y aparece la pantalla principal


con el proyecto blink.mcpds y la ventana de edición del archivo blink.c

Proyecto
blink

Ventana de edición del


archivo blink.c

25
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

3
Teclear código

En la ventana de edición teclear el código de la figura siguiente:

4
Compilación

Una vez que se teclea todo el código se guarda y luego se procede a verificar que no haya
errores de sintaxis, para lo cual se compila el diseño presionando el ícono correspondiente.

26
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

Si existen errores, no se completa el proceso de compilación y en la ventana de mensajes se


notifican los errores detectados. Se corrigen los errores y se vuelve a compilar. Este proceso se
repite hasta que se compile con éxito como se muestra en la figura siguiente.

Si existen errores, no se completa el proceso de compilación y en la ventana notifica los errores


detectados. Se corrigen los errores y se vuelve a compilar. Este proceso se repite hasta que se
compile con éxito como se muestra en la figura siguiente.

Compilación
exitosa

Una vez compilado con éxito, simular en Proteus y en caso de funcionamiento exitoso:

 Armar el circuito.
 Programar el dispositivo (cargar archivo .hex) usando el programador disponible.
 Verificar funcionamiento.

27
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

2.3 Programación de dsPIC33F con Miniprog+


1 3. Conexión

La programación de los microcontroladores dsPIC33F se realiza en la tarjeta o protoboard


donde está la aplicación y debe tener la conexión mínima que se muestra en la figura siguiente.

Para poder programar es necesario conectar los pines ICSP(In-Circuit Serial Programming) del
programador a los pines correspondientes del microcontrolador. Se debe desconectar el pin
MCLR del circuito de conexión mínima y conectarlo de la línea MCLR del programador como se
ilustra en la figura.

28
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

Se ejecuta el software del programador haciendo doble click sobre el ícono correspondiente,
apareciendo la pantalla que se muestra a continuación:

En este caso se conectó un microcontrolador dsPIC33FJ32GP304 y como se puede visualizar


en la figura el programador detectó el dispositivo y está listo para la programación. Cuando el
dispositivo no está funcional o está mal conectado, el software del programador no lo reconoce
y aparece una ventana como la siguiente:

29
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

2
Cargar archivo .hex

Para cargar el archivo .hex se presiona la pestaña File y se selecciona import Hex como se
visualiza en la figura:

Se busca el archivo .hex que se va a cargar en el programador en la carpeta del proyecto de la


aplicación y se presiona en abrir como se muestra en la figura

30
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

Al presionar abrir, el archivo .hex se carga en el programador y deberá aparecer una pantalla
como la siguiente, donde se puede visualizar en la ventana Program Memory el archivo en
hexadecimal.

En la figura de la izquierda el archivo hex se generó con MikroC y se puede leer la leyenda Hex
file sucessfully imported

En la figura de la derecha se importó el archivo .hex generado con MPLAB y se puede leer la
leyenda de que no existe la configuración del dispositivo, pero no hay ningún problema ya que
si se carga la configuración.

3
Programación

A continuación se presiona el boton Write y se inicia el proceso de programación y al finalizar


se debe ver una pantalla como la siguiente:

31
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

Con esto queda programado el dispositivo con el código de la aplicación del proyecto. Se
desconectan los cables del programador, se vuelve a conectar MCLR como en la conexión
mínima y se energiza el circuito. Si todo el proceso de diseño está correcto, se debe ver el
funcionamiento esperado.

2.4 Elaborar reporte correspondiente


Elaborar el reporte de acuerdo con el formato propuesto en este manual de prácticas.

32
Instituto Tecnológico de Durango
Práctica 1.- Software de diseño MPLAB X y MikroC Microcontroladores

3. Material y equipo a utilizar


 PC con el software MPLABX y Proteus.
 Dispositivo dsPIC.
 Programador de PIC’s.
 Pulsera antiestática.
 Resistencias y LED’s necesarios.
 Cables de conexión.

4. Fuentes de información
 Microchip Technology Inc. (2007) dsPIC33FJ12MC201/202 Data Sheet.
 Microchip Technology Inc. (2005) dsPIC30F/33F Programmer’s Reference Manual.
 Microchip Technology Inc. (2007-2012) dsPIC33F/PIC24H Family Reference Manual.
 García Breijo Eduardo (2008). Compilador C CCS y simulador PROTEUS para
microcontroladores PIC. Alfaomega.
 Salas Arriarán Sergio (2017) Todo sobre sistemas embebidos: Arquitectura,
programación y diseño de aplicaciones prácticas con el PIC18F. UPC
 MikroElektronika (2012) Creating first Project in MikroC PRO for dsPIC
 Stu Chandler (2012) Introducción a MPLAB X: Road show 2012 Latin América

33
Instituto Tecnológico de Durango

También podría gustarte