Práctica 8 – PWM

INTRODUCCIÓN

 

En esta práctica se regula la intensidad luminosa de un LED, para ello se configura un PWM (modulación por ancho de pulso). Esta práctica utiliza el módulo I/O’s ADC de Microside para facilitar componentes y conexiones.

 

Selecciona la plataforma y entorno de programación.

 

 

PIC
AVR
ARDUINO
PIC
PIC C Compiler
MikroC PRO
MPLAB X IDE
PIC C Compiler
Bootloader PIC18FX5K50
Bootloader PIC18FX5K50

Descripción

En esta práctica se implementa un control PWM para regular la intensidad luminosa de un LED incluido en el módulo I/O's ADC de Microside, el cual está conectado al pin C2 de los módulos X-TRAINER P8 o X-TRAINER P8 DIP40 o X-TRAINER P8 DIP28 con el PIC18F45K50 o el PIC18F25K50.

 

Materiales:

1 x Módulo  X-TRAINER P8 o X-TRAINER P8 DIP40 o X-TRAINER P8 DIP28. Comprar

1 x Módulo I/O's ADC. Comprar

1 x Protoboard de 830 puntos. Comprar

1 x Juego de cables Dupont. Comprar

1 x Cable micro USB.

 

Software:

Windows 7 o posterior.

PIC C Compiler v5.069 o posterior. Descarga

XIDE v1.0 Descarga

 

Procedimiento

1. En el apartado de "Diagrama esquemático", que se encuentra a continuación, selecciona tu módulo, realiza las conexiones que se muestran en la imagen y conéctalo a la computadora.

2. Al final de esta práctica, en el apartado de "Descargas", puedes encontrar los archivos del código fuente, o bien copiarlo del apartado de "Código" que se encuentra más abajo.

3. Si descargaste el archivo del paso 2, omite este paso. Si copiaste el código, abre el compilador, pega el código en un nuevo proyecto. En el siguiente link encontrarás un manual para compilar en PIC C Compiler.

4.Abre el Software XIDE v1.0 y programa el código que descargaste o compilaste en el módulo. En el siguiente link encontrarás el manual de usuario para el Software XIDE v1.0. 

5. Al terminar de programar, el módulo se reiniciará y el programa de esta práctica se ejecutará.

 

Diagrama esquemático

 

X-TRAINER P8
X-TRAINER P8 DIP 40
X-TRAINER P8 DIP 28
X-TRAINER P8

X-TRAINER P8 DIP 40

X-TRAINER P8 DIP 28

 

Código

Código


/*

AUTOR: MICROSIDE TECHNOLOGY S.A. DE C.V.

FECHA: JUNIO 2019

*/

/**************************************************************************

Esta practica consiste en realizar un control PWM

para regular la luminosidad de un led

**************************************************************************/

#include <18F45K50.h>                                               //Incluye la librería para el PIC ( para X-TRAINERp8DIP28: #include <18F25K50.h> )

#use delay(internal=48MHz)                                         //Configura frecuencia del oscilador interno

#build(reset=0x02000,interrupt=0x02008)                       //Asigna los vectores de reset e interrupción para la versión con bootloader

#org 0x0000,0x1FFF {}                                                 //Reserva espacio en memoria para el bootloader

unsigned int16 Duty=0;                                                 //Variable para guardar el valor para PWM

void SisInit(void)

{

setup_timer_2 (T2_DIV_BY_16, 254, 1);                        //Configura Timer2, periodo ajustado a 342uS

setup_ccp1 (CCP_PWM|CCP_SHUTDOWN_AC_L|CCP_SHUTDOWN_BD_L);       //Configura el módulo CCP para uso del PWM

}

 

void main()

   {

     SisInit();

 

      while (TRUE)

         {

             for (Duty = 0; Duty < 255; Duty++)

                  {

                      set_pwm1_duty (Duty);                       //Asigna el valor del Duty al PWM

                      delay_ms (5);                                      //Retardo de 5ms

                  }


              for (Duty = 255; Duty > 0; Duty–)                 // Ciclo para disminuir el valor de la variable

                   {

                       set_pwm1_duty (Duty);                       //Asigna el valor del Duty al PWM

                       delay_ms (5);                                     //Retardo de 5ms

              }
        }
}

 

 

 

Descargas

Software XIDE v1.0

Descarga el software XIDE v1.0 

Práctica 8 – PIC – Bootloader – CCS

Descargar código en PIC C Compiler de la práctica 8.

MikroC PRO
Bootloader PIC18FX5K50
Programador XCU
Bootloader PIC18FX5K50

Descripción

En esta práctica se implementa un control PWM para regular la intensidad luminosa de un LED incluido en el módulo I/O's ADC de Microside, el cual está conectado al pin C2 de los módulos X-TRAINER P8 o X-TRAINER P8 DIP40 o X-TRAINER P8 DIP28 con el PIC18F45K50 o el PIC18F25K50.

 

Materiales:

1 x Módulo  X-TRAINER P8 o X-TRAINER P8 DIP40 o X-TRAINER P8 DIP28. Comprar

1 x Módulo I/O's ADC. Comprar

1 x Protoboard de 830 puntos. Comprar

1 x Juego de cables Dupont. Comprar

1 x Cable micro USB.

 

Software:

Windows 7 o posterior.

MikroC PRO for PIC. Descarga

XIDE v1.0 Descarga

 

Procedimiento

1. En el apartado de "Diagrama esquemático", que se encuentra a continuación, selecciona tu módulo, realiza las conexiones que se muestran en la imagen y conéctalo a la computadora.

2. Al final de esta práctica, en el apartado de "Descargas", puedes encontrar los archivos del código fuente, o bien copiarlo del apartado de "Código" que se encuentra más abajo.

3. Si descargaste el archivo del paso 2, omite este paso. Si copiaste el código, abre el compilador, pega el código en un nuevo proyecto, selecciona en el apartado de librerías la necesaria para esta práctica como se muestra en la siguiente imagen y realiza la compilación. En el siguiente link encontrarás un manual para compilar en MikroC PRO for PIC.

4.Abre el Software XIDE v1.0 y programa el código que descargaste o compilaste en el módulo. En el siguiente link encontrarás el manual de usuario para el Software XIDE v1.0. 

5. Al terminar de programar, el módulo se reiniciará y el programa de esta práctica se ejecutará.

 

Diagrama esquemático

 

X-TRAINER P8
X-TRAINER P8 DIP40
X-TRAINER P8 DIP28
X-TRAINER P8

X-TRAINER P8 DIP40

X-TRAINER P8 DIP28

 

Código

Código

/*

AUTOR: MICROSIDE TECHNOLOGY S.A. DE C.V.

FECHA: JUNIO 2019

*/

/**************************************************************************

Esta práctica consiste en realizar un control PWM

para regular la iluminación de un led

**************************************************************************/

/**************************************************************************

Para usar el código con bootloader MICROSIDE:

1) Tools>Options>Output>Output Settings>Marcar "long HEX format"

2) Project>Edit Project>Insertar 48000000 en "MCU Clock Frequency [MHz]" box

**************************************************************************/

#pragma orgall 0x1FFF                                                                              //Espacio reservado para bootloader

unsigned short i ;                                                                                           // Variable global para los valores PWM

void SisInit(void)                                                                                          //Se inicializa el PIC

{                                                                                                                     //Se configura el oscilador interno

           OSCTUNE = 0x80;                                                                            //Se habilita el multiplicador de frecuencia 3X PLL

           OSCCON = 0x70;                                                                              //Se cambia de HFINTOSC a 16MHz

           OSCCON2 = 0x10;                                                                             //Se habilita PLL, oscilador primario deshabilitado

           while (PLLRDY_bit == 0);                                                                    //Se crea un bucle para estabilizar la frecuencia 

           ACTCON = 0x90;                                                                                 //Una vez estable la frecuencia la mantiene

                                                                                                                          //Se configuran las entradas y salidas del PIC

           TRISC = 0X00;                                                                                     //Se declara el puerto C como salida

           PWM1_Init (5000);                                                                                //Se inicializa el PWM a 5000 Hz

           PWM1_Start ();                                                                                      //Se inicia el control PWM

}

void main() org 0x2000                                                                                     //Se instancia el vector bootloader de MICROSIDE

{

            SisInit () ;                                                                                                 //Se instancia la configuración del PIC

            while (1)                                                                                                //Se crea un bucle de ciclo infinito mientra sea verdadero

                           {

                              for (i = 0; i < 255; i++)                                                           //Ciclo para aumentar el valor de la variable

                                                        {

                                                           PWM1_Set_Duty (i);                                  //Guarda la salida PWM en la variable

                                                            delay_ms (5);                                              //Retardo de 5ms

                                                        }

                               for (i = 255; i > 0; i--)                                                                //Ciclo para disminuir el valor de la variable

                                                        {

                                                           PWM1_Set_Duty (i);                                  //Guarda la salida PWM en la variable

                                                           delay_ms (5);                                             //Retardo de 5ms

                                                        }

                                                           delay_ms (30);                                             // Retardo de 30ms

                           }

}

 

 

Descargas

Software XIDE v1.0

Descarga el software XIDE v1.0 

Práctica 8 – PIC – Bootloader

Descargar código en MikroC PRO for PIC de la práctica 8.

Programador XCU
PIC10F
PIC12F
PIC16F
PIC18F
PIC10F

Descripción

En esta práctica se implementa un control PWM para regular la intensidad luminosa de un LED incluido en el módulo I/O's ADC de Microside, el cual está conectado al pin A0 de los módulos X-TRAINER P8 con el PIC10F322.

 

Materiales:

1 x Módulo X-TRAINER P8. Comprar

1 x Módulo Programador XCU. Comprar

1 x Microcontrolador PIC10F322. Comprar

1 x Módulo I/O's ADC. Comprar

1 x Juego de cables Dupont. Comprar

1 x Protoboard de 830 puntos. Comprar

1 x Cable micro USB.

 

Software:

Windows 7 o posterior.

MikroC PRO for PIC. Descarga

XIDE v1.0 Descarga

 

Procedimiento

1. En el apartado de "Diagrama esquemático", que se encuentra a continuación, selecciona tu módulo, realiza las conexiones que se muestran en la imagen y conéctalo a la computadora.

2. Al final de esta práctica, en el apartado de "Descargas", puedes encontrar los archivos del código fuente, o bien copiarlo del apartado de "Código" que se encuentra más abajo.

3. Si descargaste el archivo del paso 2, omite este paso. Si copiaste el código, abre el compilador, pega el código en un nuevo proyecto, selecciona en el apartado de librerías la necesaria para esta práctica como se muestra en la siguiente imagen y realiza la compilación. En el siguiente link encontrarás un manual para compilar en MikroC PRO for PIC.

4. Abre el Software XIDE v1.0 y programa el código que descargaste o compilaste, en el módulo. En el siguiente link encontrarás el manual de usuario para el Software XIDE v1.0. 

5. Al terminar de programar, el módulo se reiniciará y el programa de esta práctica se ejecutará.

 

Diagrama esquemático

 

X-TRAINER P8
X-TRAINER P8

 

Código 

Código

/*

AUTOR: MICROSIDE TECHNOLOGY S.A. DE C.V.

FECHA: JUNIO 2019

*/

/**************************************************************************

La práctica consiste en controlar la iluminación de un LED usando el módulo PWM

**************************************************************************/

/**************************************************************************

Para configurar el oscilador:

1) Project> Edit Project>Oscillator Selection Bits>seleccionar "INTOSC oscillator: CLKIN function disabled"

2) Project>Edit Project, insertar 16000000 en "MCU clock frecuency (MHz)" box

**************************************************************************/

unsigned short i;

void SisInit(void){                                  //Inicializa el PIC

         OSCCON = 0X7B;                         // 0111 1011 16MHz

                                                                //Configurar entradas y salidas

         TRISA = 0x0C;                              //PUERTO A COMO SALIDA

                                                              // 00001100

         PWM1_Init(5000);                       //Inicializa el módulo a 5KHz

         PWM1_Start();                             //Inicializa el módulo PWM

          }

        void main (){

         SisInit();

        while(1){

         for(i=0;i<255;i++){                //Bucle para aumentar el brillo del led

        PWM1_Set_Duty(i);               //Establecer el ciclo de trabajo

        delay_ms(5);                             //Retardo

        }

         for (i=255;i>0;i--) {                 //Bucle para decrementar el brillo del led

        PWM1_Set_Duty(i);               //Establecer el ciclo de trabajo

         delay_ms(5);                           //Retardo

        }

    }

}

 

Descargas

Software XIDE v1.0

Descarga el software XIDE v1.0 

Práctica 8-XCU-PIC10F322

Descargar código en mikroC PRO for PIC de la práctica 8.

 

PIC12F

Descripción

En esta práctica se implementa un control PWM para regular la intensidad luminosa de un LED incluido en el módulo I/O's ADC de Microside, el cual está conectado al pin A2 de los módulos X-TRAINER P8 con el PIC12F1572.

 

Materiales:

1 x Módulo X-TRAINER P8. Comprar

1 x Módulo programador XCU. Comprar

1 x Microcontrolador PIC12F1572. Comprar

1 x Módulo I/O´s ADC. Comprar

1 x Juego de cables Dupont. Comprar

1 x Protoboard de 830 puntos. Comprar

1 x Cable micro USB.

 

Software:

Windows 7 o posterior.

MikroC PRO for PIC. Descarga

XIDE v1.0 Descarga

 

Procedimiento

1. En el apartado de "Diagrama esquemático", que se encuentra a continuación, selecciona tu módulo, realiza las conexiones que se muestran en la imagen y conéctalo a la computadora.

2. Al final de esta práctica, en el apartado de "Descargas", puedes encontrar los archivos del código fuente, o bien copiarlo del apartado de "Código" que se encuentra más abajo.

3. Si descargaste el archivo del paso 2, omite este paso. Si copiaste el código, abre el compilador, pega el código en un nuevo proyecto, selecciona en el apartado de librerías la necesaria para esta práctica como se muestra en la siguiente imagen y realiza la compilación. En el siguiente link encontrarás un manual para compilar en MikroC PRO for PIC.

4. Abre el Software XIDE v1.0 y programa el código que descargaste o compilaste, en el módulo. En el siguiente link encontrarás el manual de usuario para el Software XIDE v1.0. 

5. Al terminar de programar, el módulo se reiniciará y el programa de esta práctica se ejecutará.

 

Diagrama esquemático

 

X-TRAINER P8
X-TRAINER P8

 

Código

Código

/*

AUTOR: MICROSIDE TECHNOLOGY S.A. DE C.V.

FECHA: JUNIO 2019

*/

/**************************************************************************

La práctica consiste en controlar la iluminación de un LED usando el módulo PWM.

**************************************************************************/

/**************************************************************************

Para configurar el oscilador:

1) Project> Edit Project>Oscillator Selection Bits>seleccionar "INTOSC oscillator: CLKIN function disabled"

2) Project>Edit Project, insertar 32000000 en "MCU clock frecuency (MHz)" box

**************************************************************************/

char Duty;                                               //variable

void SisInit(void) {                                  //inicializa el PIC

       OSCCON = 0xF0;                            //11110000 32 MHz

       TRISA = 0X00;                                //Puerto como salida

       ANSELA = 0X00;

       PWM3_Init(1000,4);                         //Inicializa el modulo a 1KHz

       PWM3_Start();                                 // Inicializa el módulo PWM1

}

void main(){

     SisInit();

     while(1)

   {

      for(i=0;i<255;i++)                            //Bucle para aumentar el brillo del LED

         {

          PWM3_Set_Duty (i<<8);             //Establecer el ciclo de trabajo

          delay_ms(2); //Retardo

         }

     for (i=255;i>0;i--)                             //Bucle para decrementar el brillo del LED

       {

          PWM3_Set_Duty(i<<8);               //Establecer el ciclo de trabajo

          delay_ms(2);//Retardo

       }

    }

}

 


Descargas

Software XIDE v1.0

Descarga el software XIDE v1.0 

Práctica 8-PIC-XCU-12F1572

Descarga el código en mikroC PRO for PIC de la práctica 8.

PIC16F

Descripción

En esta práctica se implementa un control PWM para regular la intensidad luminosa de un LED incluido en el módulo I/O's ADC de Microside, el cual está conectado al pin B4 del módulo X-TRAINER P8 con el PIC16F1827.


Materiales:

1 x Módulo X-TRAINER P8. Comprar

1 x Módulo Programador XCU. Comprar

1 x Microcontrolador PIC16F1827. Comprar

1 x Módulo I/O's ADC. Comprar

1 x Juego de cables Dupont. Comprar

1 x Protoboard de 830 puntos.  Comprar

1 x Cable micro USB.

 

Software:

Windows 7 o posterior.

MikroC PRO for PIC. Descarga

XIDE v1.0 Descarga

 

Procedimiento

1. En el apartado de "Diagrama esquemático", que se encuentra a continuación, selecciona tu módulo, realiza las conexiones que se muestran en la imagen y conéctalo a la computadora.

2. Al final de esta práctica, en el apartado de "Descargas", puedes encontrar los archivos del código fuente, o bien copiarlo del apartado de "Código" que se encuentra más abajo.

3. Si descargaste el archivo del paso 2, omite este paso. Si copiaste el código, abre el compilador, pega el código en un nuevo proyecto, selecciona en el apartado de librerías la necesaria para esta práctica como se muestra en la siguiente imagen y realiza la compilación. En el siguiente link encontrarás un manual para compilar en MikroC PRO for PIC.

4. Abre el Software XIDE v1.0 y programa el código que descargaste o compilaste, en el módulo. En el siguiente link encontrarás el manual de usuario para el Software XIDE v1.0. 

5. Al terminar de programar, el módulo se reiniciará y el programa de esta práctica se ejecutará.

 

Diagrama esquemático

 

X-TRAINER P8
X-TRAINER P8

 

Código 

Código

/*

AUTOR: MICROSIDE TECHNOLOGY S.A. DE C.V.

FECHA: JUNIO 2019

*/

/**************************************************************************

Esta práctica consiste controlar la iluminación de un LED usando el módulo PWM

**************************************************************************/

/**************************************************************************

1) Tools>Options>Output>Output Options, marcar "Long HEX format"

2) Project>Edit Project, insertar 32000000 en "MCU Clock Frequency [MHz]" box

**************************************************************************/

unsigned short i ;

void SisInit(void)

{                                                                                                                   //Inicializa el PIC

                                                                                                                   //Configura el oscilador interno

    OSCCON = 0xF0;                                                                                  //Cambiar HFINTOSC a 32MHz

                                                                                                                 //Configurar entradas y salida

    TRISB = 0X00;                                                                                    // Declaramos el puerto como salida

    PWM1_Init (500000);                                                                         // Inicializa PWM a 500000Hz

    PWM1_Start ();                                                                                  // Inicia PWM

}

void main()

{

      SisInit () ;

      while (1)

      {

            for (i = 0; i < 255; i++)                                                                  // Ciclo para aumentar el valor de la variable

           {

                  PWM1_Set_Duty (i);                                                                // Guarda la salida pwm en la variable

                 delay_ms (2);                                                                              // Retardo de 5ms

           }

          for (i = 255; i > 0; i--)                                                                        // Ciclo para disminuir el valor de la variable

           {

               PWM1_Set_Duty (i);                                                                    // Guarda la salida pwm en la variable

               delay_ms (2);                                                                                  // Retardo de 5ms

            }

       }

}

 

Descargas

Software XIDE v1.0

Descarga el software XIDE v1.0 

Práctica 8-PIC-XCU-16F

Descargar código en mikroC PRO for PIC de la práctica 8.

PIC18F

Descripción

En esta práctica se implementa un control PWM para regular la  intensidad luminosa de un LED incluido en el módulo I/O's ADC de Microside, el cual está conectado al pin C2 de los módulos X-TRAINER P8 o X-TRAINER P8 DIP28 con el PIC18F25K22.

 

Materiales:

1 x Módulo X-TRAINER P8 o X-TRAINER P8 DIP28. Comprar

1 x Módulo Programador XCU. Comprar

1 x Módulo I/O's ADC. Comprar

1 x Microcontrolador PIC18F25K22. Comprar

1 x Protoboard de 830 puntos. Comprar

1 x Juego de cables Dupont. Comprar

1 x Cable micro USB.

 

Software:

Windows 7 o posterior.

MikroC PRO for PIC. Descarga

XIDE v1.0 Descarga

 

Procedimiento

1. En el apartado de "Diagrama esquemático", que se encuentra a continuación, selecciona tu módulo, realiza las conexiones que se muestran en la imagen y conéctalo a la computadora.

2. Al final de esta práctica, en el apartado de "Descargas", puedes encontrar los archivos del código fuente, o bien copiarlo del apartado de "Código" que se encuentra más abajo.

3. Si descargaste el archivo del paso 2, omite este paso. Si copiaste el código, abre el compilador, pega el código en un nuevo proyecto, selecciona en el apartado de librerías la necesaria para esta práctica como se muestra en la siguiente imagen y realiza la compilación. En el siguiente link encontrarás un manual para compilar en MikroC PRO for PIC.

4. Abre el Software XIDE v1.0 y programa el código que descargaste o compilaste, en el módulo. En el siguiente link encontrarás el manual de usuario para el Software XIDE v1.0. 

5. Al terminar de programar, el módulo se reiniciará y el programa de esta práctica se ejecutará.

 

Diagrama Esquemático

 

X-TRAINER P8
X-TRAINER P8 DIP28
X-TRAINER P8

X-TRAINER P8 DIP28

 

Código

Código

/*

AUTOR: MICROSIDE TECHNOLOGY S.A. DE C.V.

FECHA: JUNIO 2019

*/

/**************************************************************************

Esta práctica consiste en realizar un control PWM

para regular la iluminación de un led

**************************************************************************/

/**************************************************************************

1) Project> Edit Project> Oscillator Selection> Internal Oscillator"

2) Project> Edit Project> Insertar 64000000 en "MCU Clock Frequency [MHz]" box

**************************************************************************/

unsigned short i ;                                                                                                                        //Se declara la variable global del contador

void SisInit(void)                                                                                                                        //Se inicializa el PIC

{                                                                                                                                                      // Se configura el oscilador interno

         OSCCON = 0x78;                                                                                                               //Se cambia la frecuencia a 16MHz

         PLLEN_bit = 1 ;                                                                                                                 //Se habilita el multiplicador de frecuencia x4

         while (PLLRDY_bit == 0);                                                                                          //Se crea un bucle donde se estabiliza la frecuencia

                                                                                                                                                        //Se configuran las entradas y salidas PI

        TRISC = 0X00;                                                                                                                  //Se declara el puerto C como salida

          PWM1_Init (5000);                                                                                                         //Se inicializa el PWM a 5000 Hz

          PWM1_Start ();                                                                                                                 //Se inicia el control PWM

}

void main()                                                                                                                                  //Se inicializa el main principal

{

          SisInit () ;                                                                                                                           //Se instancia la configuración del PIC

          while (1)                                                                                                        //Se crea un bucle infinito, mientras sea verdadero

                         {

                            for (i = 0; i < 255; i++)                                                                                   //Ciclo para aumentar el valor de la variable

                                                     {

                                                        PWM1_Set_Duty (i);                                                         //Guarda la salida PWM en la variable

                                                        delay_ms (5);                                                                       //Retardo de 5ms

                                                     }

                       for (i = 255; i > 0; i--)                                                                                     //Ciclo para disminuir el valor de la variable

                                                     {

                                                        PWM1_Set_Duty (i);                                                         //Guarda la salida PWM en la variable

                                                        delay_ms (5);                                                                       //Retardo de 5ms

                                                     }

                          }

}

 

Descargas

Software XIDE v1.0

Descarga el software XIDE v1.0 


Práctica 8 – XCU – PIC18F25K22

Descargar código en MikroC PRO for PIC de la práctica 8.

MPLAB X IDE
Bootloader PIC18FX5K50
Programador PK3 LITE
Bootloader PIC18FX5K50

Descripción

En esta práctica se implementa un control PWM para regular la intensidad luminosa de un LED incluido en el módulo I/O's ADC de Microside, el cual está conectado al pin C2 de los módulos X-TRAINER P8 o X-TRAINER P8 DIP40 X-TRAINER P8 DIP28 con el PIC18F45K50 o el PIC18F25K50.

 

Materiales:

1 x Módulo  X-TRAINER P8 o X-TRAINER P8 DIP40 o X-TRAINER P8 DIP28. Comprar

1 x Módulo I/O's ADC. Comprar

1 x Protoboard de 830 puntos. Comprar

1 x Juego de cables Dupont. Comprar

1 x Cable micro USB.

 

Software:

Windows 7 o posterior.

MPLAB X IDE. Descarga

XIDE v1.0 Descarga

 

Procedimiento

1. En el apartado de "Diagrama esquemático", que se encuentra a continuación, selecciona tu módulo, realiza las conexiones que se muestran en la imagen y conéctalo a la computadora.

2. Al final de esta práctica, en el apartado de "Descargas", puedes encontrar los archivos del código fuente, o bien copiarlo del apartado de "Código" que se encuentra más abajo.

3. Si descargaste el archivo del paso 2, omite este paso. Si copiaste el código, ejecuta MPLAB X IDE, pega el código en un nuevo proyecto y realiza la compilación. En el siguiente link encontrarás un manual para compilar tu proyecto en MPLAB X IDE.

4. Abre el Software XIDE v1.0 y programa el código que descargaste o compilaste en el módulo. En el siguiente  link encontrarás el manual de usuario para el Software XIDE v1.0. 

5. Al terminar de programar, el módulo se reiniciará y el programa de esta práctica se ejecutará.

 

Diagrama esquemático

 

X-TRAINER P8
X-TRAINER P8 DIP 40
X-TRAINER P8 DIP 28
X-TRAINER P8

X-TRAINER P8 DIP 40

X-TRAINER P8 DIP 28

 

Código

Código

/*

AUTOR: MICROSIDE TECHNOLOGY S.A. DE C.V.

FECHA: JUNIO 2019

*/

/**************************************************************************

Esta práctica consiste en realizar un control PWM

para regular la iluminación de un LED

**************************************************************************/

/********************************************************************

Para configurar el Bootloader:

1) File>Project properties> XC8 Linker>Options categories>Memory models>ROM ranges> Esribir: 2000-7F00

2) File>Project properties> XC8 Linker>Options categories>Additional options>Codeoffset> Esribir: 2000

3) File>Project properties> Building>Marcar:Insert unprotected checksum in user ID memory

**************************************************************************/

#include <xc.h>

#include <stdint.h>

#define _XTAL_FREQ 48000000                                              //DEFINE LA FRECUENCIA DE 64MHz

int i;

void SisInit(void) {                                                                         //INICIALIZA EL PIC

//CONFIGURA EL OSCILADOR INTERNO

OSCCON = 0x70;                                                                           //Cambiar HFINTOSC a 16MHz

OSCCON2 = 0x10;                                                                         //Habilita PLL, oscilador primario deshabilitado

OSCTUNE = 0x80;                                                                          //3X PLL

ACTCON = 0x90;

while (OSCCON2bits.PLLRDY == 0);

//CONFIGURAR ENTRADAS Y SALIDAS

TRISCbits.TRISC2 = 0;                                                                   //PIN como salida

ANSELCbits.ANSC2 = 0;                                                              //PIN como digital

//CONFIGURA TMR2

PR2 = 0xFF;                                                                                       // PR2 255

TMR2 = 0x00;                                                                                  // TMR2 0

T2CON = 0x16;                                                                               // T2CKPS 1:16; T2OUTPS 1:3; TMR2ON on

//CONFIGURA PWM

CCP1CON = 0x3C;

ECCP1AS = 0x00;

PWM1CON = 0x80;

PSTR1CON = 0x01;

}

void PWM1_Set_Duty(uint16_t dutyValue) {

   CCPR1L = ((dutyValue & 0x03FC) >> 2);

   CCP1CON = ((uint8_t) (CCP1CON & 0xCF) | ((dutyValue & 0x0003) << 4));

}

void main(void) {

     SisInit();                                                                                              //INICIALIZA EL PIC

     while (1) {

               for (i = 0; i < 1023; i++) {                                                               // Ciclo para aumentar el valor de la variable

               PWM1_Set_Duty(i);                                                                        // Guarda la salida pwm en la variable

               __delay_ms(2);                                                                                  // Retardo de 5ms

            }

             for (i = 1023; i > 0; i--) {                                                                   // Ciclo para disminuir el valor de la variable

             PWM1_Set_Duty(i);                                                                         // Guarda la salida pwm en la variable

             __delay_ms(2);                                                                                   // Retardo de 5ms

         }

        __delay_ms(30);                                                                                // Retardo de 30ms

       }

}

 


Descargas

Software XIDE v1.0

Descarga el software XIDE v1.0 

Práctica 8-PIC-BOOTLOADER/MPLAB

Descargar código en MPLAB X IDE de la práctica 8.

Programador PK3 LITE

Descripción

En esta práctica se implementa un control PWM para regular la intensidad luminosa de un LED incluido en el módulo I/O's ADC de Microside, el cual está conectado al pin C2 de los módulos X-TRAINER P8 o X-TRAINER P8 DIP40 con el PIC18F47K42.

 

Materiales:

1 x Módulo X-TRAINER P8 o X-TRAINER P8 DIP40Comprar

1 x Módulo Programador PK3 LITE. Comprar

1 x Microcontrolador PIC18F47K42. Comprar

1 x Módulo I/O's ADC. Comprar

1 x Protoboard de 830 puntos. Comprar

1 x Juego de cables Dupont. Comprar

1 x Cable micro USB.

 

Software:

Windows 7 o posterior.

MPLAB X IDE. Descarga

 

Procedimiento

1. En el apartado de "Diagrama esquemático", que se encuentra a continuación, selecciona tu módulo, realiza las conexiones que se muestran en la imagen y conéctalo a la computadora.

2. Al final de esta práctica, en el apartado de "Descargas", puedes encontrar los archivos del código fuente, o bien copiarlo del apartado de "Código" que se encuentra más abajo.

3. Si descargaste el archivo del paso 2, omite este paso. Si copiaste el código, ejecuta MPLAB X IDE, pega el código en un nuevo proyecto y realiza la compilación. 

4. Programa el código en el microcontrolador. En el siguiente link encontrarás un manual para compilar y programar tu proyecto en MPLAB X IDE.

5. Al terminar de programar, el módulo se reiniciará y el programa de esta práctica se ejecutará.

 

Diagrama esquemático

 

X-TRAINER P8
X-TRAINER P8 DIP 40
X-TRAINER P8

X-TRAINER P8 DIP 40

 

Código

Código

/*

AUTOR: MICROSIDE TECHNOLOGY S.A. DE C.V.

FECHA: JUNIO 2019

*/

/**************************************************************************

Esta práctica consiste en realizar un control PWM para regular la iluminación

de un LED

**************************************************************************/

#pragma config FEXTOSC = OFF                                                 //Oscilador extrerno deshabilitado

#pragma config RSTOSC = HFINTOSC_64MHZ                     //Frecuencia de 64MHz

#pragma config CLKOUTEN = OFF                                            //Función CLOKOUTEN deshabilitada

#pragma config WDTE = OFF                                                       //Deshabilita WDT

#include <xc.h>

#include <stdint.h>

#define _XTAL_FREQ 64000000                                                //Define la fracuencia de 64MHz

void SisInit(void) {

OSCCON1 = 0X60;                                                                         //NOSC HFINTOSC; NDIV 1;

OSCCON3 = 0X00;                                                                         //CSWHOLD procede; oscilador secundario opera en Low power;

OSCEN = 0X00;                                                                               //Activación manual de osciladores

OSCFRQ = 0X08;                                                                            //HFFRQ 64_MHz;

OSCTUNE = 0X00;                                                                        //TUN 0;TRISCbits.TRISC2 = 0;                                                                 

ANSELCbits.ANSELC2 = 0;                                                        //PIN como digital

RC2PPS = 0x09;                                                                               T4CLKCON = 0x01;

 T4HLT = 0x00;

 T4RST = 0x00;

 T4PR = 0xFF;

 T4TMR = 0x00;

 T4CON = 0xB0;

 CCP1CON = 0x8C;

 CCPR1H = 0x00;

 CCPR1L = 0x00;

 CCPTMRS0bits.C1TSEL = 0x2;

}

void PWM_Set_Duty(uint16_t dutyValue) {

    dutyValue &= 0x03FF;

    CCPR1H = dutyValue >> 8;

    CCPR1L = dutyValue;

}

void main(void) {

          SisInit();

          int val = 0;

          while (1) {

                     for (int i = 0; i < 1023; i++){                                   // Ciclo para aumentar el valor de la variable

                      PWM_Set_Duty(i);                                                  // Guarda la salida pwm en la variable

                      __delay_ms(1);                                                         // Retardo de 1ms

                          }

                    for (int i = 1023; i > 0; i--){                                     // Ciclo para disminuir el valor de la variable

                    PWM_Set_Duty(i);                                                  // Guarda la salida pwm en la variable

                    __delay_ms(1);                                                         // Retardo de 1ms

                   }

          }

}


Descargas

Práctica-8-PIC-PK3

Descargar código en MPLAB X IDE de la práctica 8.

AVR
MikroC PRO
Atmel Studio 7
MikroC PRO
Programador XCU
Programador XCU

Descripción

En esta práctica se implementa un control PWM para regular la intensidad luminosa de un LED incluido en el módulo I/O's ADC de Microside, el cual está conectado al pin D6 de los módulos X-UNO o X-NANO.


Materiales:

1 x Módulo X-UNO o X-NANO. Comprar

1 x Módulo Programador XCU. Comprar

1 x Módulo X-AVR. Comprar

1 x Módulo I/O's ADC. Comprar

1 x Juego de cables Dupont. Comprar

1 x Protoboard de 830 puntos. Comprar

1 x Cable micro USB.


Software:

Windows 7 o posterior.

MikroC PRO for AVR. Descarga

XIDE v1.0 Descarga

 

Procedimiento

1. En el apartado de "Diagrama esquemático", que se encuentra a continuación, selecciona tu módulo, realiza las conexiones que se muestran en la imagen y conéctalo a la computadora.

2. Al final de esta práctica, en el apartado de "Descargas", puedes encontrar los archivos del código fuente, o bien copiarlo del apartado de "Código" que se encuentra más abajo.

3. Si descargaste el archivo del paso 2, omite este paso. Si copiaste el código, abre el compilador, pega el código en un nuevo proyecto, verifica en el apartado de librerías que este seleccionada la necesaria para esta práctica como se muestra en la siguiente imagen y realiza la compilación. En el siguiente link encontrarás un manual para compilar en MikroC PRO for AVR.

4. Abre el Software XIDE v1.0 y programa el código que descargaste o compilaste en el módulo. En el siguiente link encontrarás el manual de usuario para el Software XIDE v1.0. 

5. Al terminar de programar, el módulo se reiniciará y el programa de esta práctica se ejecutará.

 

Diagrama esquemático

 

X-UNO
X-NANO
X-UNO

X-NANO

 

Código

Código

/*

AUTOR: MICROSIDE TECHNOLOGY S.A. DE C.V.

FECHA: JUNIO 2019

*/

/**************************************************************************

La práctica consiste en controlar la iluminación de un LED usando el módulo PWM

**************************************************************************/

char i;                                                                          // Variable contadora

SisInit(void)

{

             i = 0;                                                          // Se inicializa el valor de  actual de i

             DDD6_bit = 1;                                            // Se establece el puerto D pin 6 como salida para el PWM

             PWM1_Init (_PWM1_FAST_MODE, _PWM1_PRESCALER_64, _PWM1_INVERTED, i);                                                           

                                                                                //Inicializa el modo del PWM

}

void main()

{

           SisInit ();

            while (1)

           {

                for (i = 0; i < 255; i++)

                {

                      Delay_ms (5);                                       // Retardo 5ms

                      PWM1_Set_Duty (i);                             // Establece elvalor  actual de i

                }

                 for (i = 255; i > 0; i--)

              {

                     Delay_ms (5);                                      // Retardo 5ms

                     PWM1_Set_Duty (i);                             // Establece elvalor  actual de i

             }

      }

}

 

Descargas

Software XIDE v1.0

Descarga el software XIDE v1.0 

 

Práctica 8-XCU-AVR

Descargar el código en mikroC PRO for AVR de la práctica 8.

 

Atmel Studio 7
Programador MKII LITE
Programador MKII LITE

Descripción

En esta práctica se implementa un control PWM para regular la intensidad luminosa de un LED incluido en el módulo I/O's ADC de Microside, el cual está conectado al pin D6 de los módulos X-UNO o X-NANO.

 

Materiales:

1 x Módulo X-UNOX-NANO. Comprar

1 x Módulo Programador MKII LITE. Comprar

1 x Módulo X-AVR. Comprar

1 x Módulo I/O's ADC. Comprar

1 x Juego de cables Dupont. Comprar

1 x Protoboard de 830 puntos. Comprar

1 x Cable micro USB.

 

Software:

Windows 7 o posterior.

Atmel Studio 7. Descarga

 

Procedimiento

1. En el apartado de "Diagrama esquemático", que se encuentra a continuación, selecciona tu módulo, realiza las conexiones que se muestran en la imagen y conéctalo a la computadora.

2. Al final de esta práctica, en el apartado de "Descargas", puedes encontrar los archivos del código fuente, o bien copiarlo del apartado de "Código" que se encuentra más abajo.

3. Si descargaste el archivo del paso 2, omite este paso. Si copiaste el código, ejecuta Atmel Studio 7, pega el código en un nuevo proyecto y realiza la compilación.

4. Programa el código que descargaste o compilaste en el módulo. En el siguiente link encontrarás un manual para compilar y programar tu proyecto en Atmel Studio 7.

5. Al terminar de programar, el programa de esta práctica se ejecutará.

 

Diagrama Esquemático

 

X-UNO
X-NANO
X-UNO

X-NANO

 

Código 

Código

/**

AUTOR: MICROSIDE TECHNOLOGY S.A. DE C.V.

FECHA: JUNIO 2019

*/

/**************************************************************************

Esta práctica consiste en realizar un control PWM para regular la luminosidad de un LED

**************************************************************************/

#define F_CPU 16000000

#include <avr/io.h>

#include <util/delay.h>

int c;

int main(void)

{

     DDRD|=(1<<6);                                                                             //PIN OC0A como salida oblifatorio para PWM

     TCCR0A=0b10000011;                                                                //PWM por el OC0A, no invertido,

     TCCR0B=0b00000001;

     OCR0A=0;

while(1)

     {

         for (OCR0A=0;OCR0A<255;OCR0A++)

         {

         _delay_ms(2);

         }

         for (OCR0A=255;OCR0A>0;OCR0A--)

         {

         _delay_ms(2);

         }

     }

}

 

Descargas

Práctica 8-AVR-MKII

Descargar código en Atmel Studio 7 de la práctica 8.

ARDUINO

Descripción

En esta práctica se implementa un control PWM para regular la intensidad luminosa de un LED incluido en el módulo I/O's ADC de Microside, el cual está conectado al pin D6 de los módulos X-UNO o X-MEGA o X-NANO.

 

Materiales:

1 x Módulo X-UNO o X-MEGA o X-NANO. Comprar

1 x Módulo Programador XCU. Comprar

1 x Módulo I/O's ADC. Comprar

1 x Juego de cables Dupont. Comprar

1 x Protoboard de 830 puntos. Comprar

1 x Cable micro USB.

 

Software:

Windows 7 o posterior.

Arduino IDE. Descarga

 

Procedimiento

1. En el apartado de "Diagrama esquemático", que se encuentra a continuación, selecciona tu módulo, realiza las conexiones que se muestran en la imagen y conéctalo a la computadora.

2. Al final de esta práctica, en el apartado de "Descargas", puedes encontrar los archivos del código fuente, o bien copiarlo del apartado de "Código" que se encuentra más abajo.

3. Si descargaste el archivo del paso 2, omite este paso. Si copiaste el código, abre el software Arduino IDE, pega el código en un nuevo proyecto, realiza la compilación. 

4. Programa el código que descargaste o compilaste, en el módulo. En el siguiente link encontrarás un manual para compilar y programar en Arduino IDE.

5. Al terminar de programar, el módulo se reiniciará y el programa de esta práctica se ejecutará.

 

Diagrama esquemático

 

X-UNO
X-MEGA
X-NANO
X-UNO

X-MEGA

X-NANO

 

Código

Código

/*

AUTOR: MICROSIDE TECHNOLOGY S.A. DE C.V.

FECHA: JUNIO 2019

*/

/**************************************************************************

Esta práctica consiste en controlar la iluminación de un led usando el módulo PWM.

**************************************************************************/

           int pwm = 6;                                                                    //pin de salida PWM

           int i = 0;                                                                          //variable para que el ciclo de trabajo aumente

void setup()

{

            pinMode(pwm,OUTPUT);

            pinMode(5,OUTPUT);

}

void loop()

{

                 for(i = 0; i <= 255; i++)                                          //Ciclo para incrementar el brillo

                 {

                            analogWrite(pwm,i);                                   //Asigna contador al ciclo de trabajo

                            analogWrite(5,255-i);

                            delay(2);                                                         //Retardo

                  }

                 for(i = 255; i>= 0 ; i--)                                          //Ciclo para decrementar el brillo

                {

                            analogWrite(pwm,i);                                   //Asigna contador al ciclo de trabajo

                            analogWrite(5,255-i);

                            delay(2);                                                        //Retardo

                  }

}

 

Descargas

Práctica 8 – Arduino

Descarga código en Arduino de la práctica 8.

 

Fecha

julio 16, 2019

Categoría

Prácticas XIDE

× WhatsApp