Microchip Xpress Evaluation Board

La placa de evaluación MPLAB® Xpress fue diseñada como una placa de desarrollo sencilla para usar con el entorno de desarrollo integrado (IDE) MPLAB Xpress. La placa Xpress es una plataforma de desarrollo de 8 bits rentable y totalmente integrada dirigida a usuarios nuevos, fabricantes y aquellos que buscan una placa de creación rápida de prototipos con muchas funciones. Diseñada desde cero para aprovechar al máximo el MPLAB Xpress IDE de Microchip, la placa Xpress actúa como un dispositivo de memoria USB y no requiere hardware adicional para comenzar. Los archivos .hex compilados se pueden cargar de la misma manera que se mueve un archivo a un dispositivo de almacenamiento USB. Una vez cargado, un reinicio comienza a ejecutar el programa en la placa Xpress.

  • Entorno de desarrollo con todas las funciones, accesible desde el navegador web
  • Plug-n-play: sin descargas ni controladores, y sin esperas
  • IDE simplificado para comenzar
  • No se requiere instalación de software
  • Cuenta con el versátil microcontrolador de 8 bits PIC16F18855 de 28 pines
  • Permite a los usuarios compilar su código en la Nube de forma gratuita
  • Permite a los diseñadores evaluar los compiladores y optimizaciones PRO más recientes.
  • Incluye una biblioteca de ejemplos de código validados por Microchip.
  • Permite a los usuarios compartir ideas en línea con la comunidad MPLAB Xpress
Descripción general

La pieza central de la placa de evaluación MPLAB Xpress es la MCU PIC16F18855; un dispositivo de 8 bits con una combinación única de bajo consumo de energía, rendimiento para manejar casi cualquier tarea de aplicación y periféricos en chip que le permiten controlar su sistema con una cantidad mínima de código. Los periféricos del PIC16F18855 se pueden configurar gráficamente utilizando el complemento MPLAB Code Configurator (MCC), lo que le ahorra semanas de tiempo de desarrollo.

Exprese su creatividad

Las ideas brillantes son fugaces. Tan pronto como se reconozcan, deben capturarse rápidamente y hacerse realidad con la mayor urgencia posible. En el diseño integrado, el proceso creativo a menudo se ve obstaculizado por la enorme variedad de opciones necesarias para simplemente comenzar el ciclo de desarrollo. Las tareas de seleccionar una MCU de destino, encontrar la cadena de herramientas adecuada y configurar todo en su PC pueden evitar que sus mejores ideas se conviertan en grandes productos. La placa de evaluación MPLAB Xpress (DM164140) fue diseñada con un único objetivo: ayudar a que sus ideas tomen el viaje más corto desde la imaginación a la realidad.

Diseñado para el desarrollo basado en la nube

La placa de evaluación MPLAB Xpress ofrece una integración perfecta con nuestra cadena de herramientas de software, incluido el IDE basado en la nube MPLAB Xpress. MPLAB Xpress es un entorno de desarrollo en línea que contiene las funciones más populares de nuestro galardonado MPLAB X IDE. Esta aplicación simplificada y refinada es una reproducción fiel de nuestro programa de escritorio, que permite a los usuarios realizar fácilmente la transición entre los dos entornos.

Fácil expansión del sistema

Agregar sensores, actuadores y circuitos de accionamiento a su diseño es una tarea sencilla utilizando el cabezal de expansión MikroBus integrado. Hay disponibles más de 180 placas de expansión MikroElektronika ClickTM; Las opciones van desde WiFi, Bluetooth y GSM hasta relés, controladores de motor y sensores.

Programación de arrastrar y soltar

Programar la placa de evaluación MPLAB Xpress es rápido y sencillo. Hemos integrado un programador exclusivo de arrastrar y soltar para compatibilidad con casi cualquier PC, computadora portátil o tableta conectada por USB. La placa de evaluación MPLAB Xpress se conecta a su PC como una unidad flash USB, por lo que no se necesitan controladores. La programación del dispositivo de destino se completa en microsegundos, sin esperas.

Características 

  1. PIC® MCU Input/Output Connections
  2. PIC16F18855 Microcontroller
  3. mikroBUSâ„¢ Click Board Socket
  4. LEDs
  5. Potentiometer
  6. Push Button
  7. Master Clear Reset Button
  8. Battery Connection
  9. Micro USB Connector
  10. Status LED (Green = Running, Red = Programming)

Circuito Esquemático: Aplicación

Características: PIC16F18855

  • Program Memory Size (KB): 14
  • RAM (bytes): 1024
  • Data EEPROM (bytes): 256
  • Pin Count: 28
  • Operation Voltage Max.(V): 5.5
  • Operation Voltage Min.(V): 2.3
  • Timers: 3 x 8-bit – 4 x 16-bit
  • Max ADC Resolution (bits): 10
  • ADC Channels: 24
  • Zero Cross Detect: Yes
  • Number of Comparators: 2
  • SPI: 2 -SPI
  • I2C: 2 -I2C
  • Stand alone PWM: 2
  • Low Power: Yes
  • Numerically Controlled Oscillator (NCO): 1
  • Data Signal Modulator (DSM): 1
  • Adjustable Internal Oscillator (1-32MHz)

Circuito Esquemático: Programador

Ejemplo: Código CCS (PIC C Compiler)


#use delay(internal=16000000)


void main()
{

   while(TRUE)
   {
      output_bit(PIN_A0, 1);
      delay_ms(100);
      output_bit(PIN_A1, 1);
      delay_ms(100);
      output_bit(PIN_A2, 1);
      delay_ms(100);
      output_bit(PIN_A3, 1);
      delay_ms(100);
      output_bit(PIN_A0, 0);
      delay_ms(100);
      output_bit(PIN_A1, 0);
      delay_ms(100);
      output_bit(PIN_A2, 0);
      delay_ms(100);
      output_bit(PIN_A3, 0);
      delay_ms(100);
   }

}

Ejemplo: Código MPLAB X IDE


// PIC16F18855 Configuration Bit Settings

// 'C' source line config statements

// CONFIG1
#pragma config FEXTOSC = OFF    // External Oscillator mode selection bits (Oscillator not enabled)
#pragma config RSTOSC = HFINT32 // Power-up default value for COSC bits (HFINTOSC with OSCFRQ= 32 MHz and CDIV = 1:1)
#pragma config CLKOUTEN = OFF   // Clock Out Enable bit (CLKOUT function is disabled; i/o or oscillator function on OSC2)
#pragma config CSWEN = ON       // Clock Switch Enable bit (Writing to NOSC and NDIV is allowed)
#pragma config FCMEN = ON       // Fail-Safe Clock Monitor Enable bit (FSCM timer enabled)

// CONFIG2
#pragma config MCLRE = ON       // Master Clear Enable bit (MCLR pin is Master Clear function)
#pragma config PWRTE = OFF      // Power-up Timer Enable bit (PWRT disabled)
#pragma config LPBOREN = OFF    // Low-Power BOR enable bit (ULPBOR disabled)
#pragma config BOREN = ON       // Brown-out reset enable bits (Brown-out Reset Enabled, SBOREN bit is ignored)
#pragma config BORV = LO        // Brown-out Reset Voltage Selection (Brown-out Reset Voltage (VBOR) set to 1.9V on LF, and 2.45V on F Devices)
#pragma config ZCD = OFF        // Zero-cross detect disable (Zero-cross detect circuit is disabled at POR.)
#pragma config PPS1WAY = ON     // Peripheral Pin Select one-way control (The PPSLOCK bit can be cleared and set only once in software)
#pragma config STVREN = ON      // Stack Overflow/Underflow Reset Enable bit (Stack Overflow or Underflow will cause a reset)

// CONFIG3
#pragma config WDTCPS = WDTCPS_31// WDT Period Select bits (Divider ratio 1:65536; software control of WDTPS)
#pragma config WDTE = OFF       // WDT operating mode (WDT Disabled, SWDTEN is ignored)
#pragma config WDTCWS = WDTCWS_7// WDT Window Select bits (window always open (100%); software control; keyed access not required)
#pragma config WDTCCS = SC      // WDT input clock selector (Software Control)

// CONFIG4
#pragma config WRT = OFF        // UserNVM self-write protection bits (Write protection off)
#pragma config SCANE = available// Scanner Enable bit (Scanner module is available for use)
#pragma config LVP = OFF        // Low Voltage Programming Enable bit (High Voltage on MCLR/Vpp must be used for programming)

// CONFIG5
#pragma config CP = OFF         // UserNVM Program memory code protection bit (Program Memory code protection disabled)
#pragma config CPD = OFF        // DataNVM code protection bit (Data EEPROM code protection disabled)

// #pragma config statements should precede project file includes.
// Use project enums instead of #define for ON and OFF.

#define _XTAL_FREQ 16000000
#include "xc.h"

void main(void) {
    
//    OSCCON1bits.NOSC = 0X06; //ESTABLECE EL OSCILADOR COMO INTERNO 
//    OSCCON1bits.NDIV = 0x01; //DIVIDE EL OSCILADOR EN 2   
    OSCFRQbits.HFFRQ = 0X05;   //CONFIGURA EL OSCILADOR INTERNO A 16 MHz
    
    TRISAbits.TRISA0 = 0; //CONFIGURA EL PIN A0 COMO SALIDA 
    TRISAbits.TRISA1 = 0; //CONFIGURA EL PIN A1 COMO SALIDA 
    TRISAbits.TRISA2 = 0; //CONFIGURA EL PIN A2 COMO SALIDA
    TRISAbits.TRISA3 = 0; //CONFIGURA EL PIN A3 COMO SALIDA 
    
    LATAbits.LATA0 = 0; //ESTABLECE EL PIN A0 EN ESTADO "BAJO"
    LATAbits.LATA1 = 0; //ESTABLECE EL PIN A1 EN ESTADO "BAJO"
    LATAbits.LATA2 = 0; //ESTABLECE EL PIN A2 EN ESTADO "BAJO"
    LATAbits.LATA3 = 0; //ESTABLECE EL PIN A3 EN ESTADO "BAJO"
    
    while(1)
    {
        LATAbits.LATA0 = 1; // Enciende el led conectado al pin A0
        __delay_ms(200); 
        LATAbits.LATA1 = 1; // Enciende el led conectado al pin A1
        __delay_ms(200); 
        LATAbits.LATA2 = 1; // Enciende el led conectado al pin A2
        __delay_ms(200); 
        LATAbits.LATA3 = 1; // Enciende el led conectado al pin A3
        __delay_ms(200); 
        LATAbits.LATA0 = 0; // Apaga el led conectado al pin A0
        __delay_ms(200); 
        LATAbits.LATA1 = 0; // Apaga el led conectado al pin A1
        __delay_ms(200); 
        LATAbits.LATA2 = 0; // Apaga el led conectado al pin A2
        __delay_ms(200); 
        LATAbits.LATA3 = 0; // Apaga el led conectado al pin A3
        __delay_ms(200);  
    }
}
Scroll al inicio