Вы находитесь на странице: 1из 9
G-PiC Lite! Development Board Reference Manual
G-PiC Lite! Development Board
Reference Manual

Descripción general

La G-PiC Lite! es una tarjeta basada en el microcontrolador Microchip PIC18F4550, el cual cuenta con un módulo USB de hardware incorporado, por lo que no requiere chips adicionales para establecer comunicación con una PC.

La G-PiC Lite! está diseñada para ser una solución económica, ligera, fácil de usar y apropiada para cualquier persona desde principiantes hasta usuarios avanzados que deseen experimentar con la electrónica, sistemas de control embebidos y proyectos de automatización basados en microcontrolador.

Compiladores y bootloaders

La G-PiC Lite! está preparada para usarse con el bootloader del compilador CCS PIC C 1 ; sin embargo, puede ser programada utilizando otros bootloaders para distintos compiladores como mikroBasic for PIC, mikroC for PIC, PIC Basic, MPLAB IDE. De igual manera, es compatible con el bootloader de Pinguino, el cual es un software libre 100% gratuito y compatible con el lenguaje de Arduino.

La G-PiC Lite! provee de 32 pines I/O que soportan una variedad de funciones de periféricos, tales como puertos UART, SPI e I 2 C. Ofrece hasta 13 entradas analógicas, 2 salidas PWM de alta frecuencia, además de 12 salidas PWM por software en cualquier pin digital. 2

La G-PiC Lite! está diseñada para ser alimentada vía USB, pero es posible alimentarla mediante un adaptador CA-CD o baterías y un regulador de voltaje de 5Vcd (ej. LM7805).

o baterías y un regulador de voltaje de 5Vcd (ej. LM7805). Especificaciones: Microcontrolador: PIC18F4550 Memoria

Especificaciones:

Microcontrolador: PIC18F4550 Memoria Flash: 32KB Memoria RAM: 2KB Voltaje de operación: 5V Frecuencia de operación: 48Mhz Pines I/O: 32 pines Entradas analógicas: 13 Rango de voltaje de entrada analógica: 0V a 5V Corriente máxima por pin: +/- 25mA 3 Corriente máxima por todos los pines: +/- 200mA 3

Funciones de periféricos:

Serial UART: Pin_C6 (Tx), Pin_C7 (Rx) SPI: Pin_B0 (SDI), Pin_B1 (SCK), Pin_C7 (SDO) I 2 C: Pin_B0 (SDA), Pin_B1 (SCL) USB: Pin_C4 (D-), Pin_C5 (D+)

1 El compilador no está incluido en la documentación de la tarjeta de desarrollo.

2 Los pines de PWM por software pueden ser configurados en la librería “analogWrite.c”.

3 Superar estos límites puede dañar el microcontrolador. Si se requiere mayor corriente puede utilizarse componentes externos, como transistores.

mayor corriente puede utilizarse componentes externos, como transistores. Rev. Marzo 2012 1 Soporte: a.estrella@g-pic.cc
mayor corriente puede utilizarse componentes externos, como transistores. Rev. Marzo 2012 1 Soporte: a.estrella@g-pic.cc

Rev. Marzo 2012

1

Soporte: a.estrella@g-pic.cc

G-PiC Lite! Development Board Reference Manual
G-PiC Lite! Development Board
Reference Manual

G-PiC Lite! Descripción del hardware

La G-PiC Lite! provee de las siguientes características de hardware:

1 5 8 2 7 3 5 4 6
1
5
8
2
7
3
5
4
6

1)

Conector ICSP (In-Circuit Serial Programming) Este conector es utilizado para conectar los pines de un programador externo, como el PICKit 2, en caso de que se requiera cambiar el firmware o el bootloader del microcontrolador. El pin 1 corresponde al MCLR, seguido de VCC, GND, RB7 y RB6, respectivamente.

2)

Botón de Reset Este botón puede ser utilizado para resetear el microcontrolador. Se encuentra en configuración pull- up (cuando no está presionado entrega 5V y cuando se presiona entrega 0V).

(cuando no está presionado entrega 5V y cuando se presiona entrega 0V). Rev. Marzo 2012 2
(cuando no está presionado entrega 5V y cuando se presiona entrega 0V). Rev. Marzo 2012 2

Rev. Marzo 2012

2

Soporte: a.estrella@g-pic.cc

G-PiC Lite! Development Board Reference Manual
G-PiC Lite! Development Board
Reference Manual

3)

Botón de Bootloader Este botón está conectado al Pin_A4 en configuración pull-up (cuando no está presionado entrega 5V y cuando se presiona entrega 0V) y sirve para introducir al microcontrolador al modo bootloader cuando el botón se encuentra presionado al momento que el microcontrolador inicia su programa (por ejemplo, inmediatamente después de un Reset). Este botón también puede ser usado como una entrada digital en el Pin_A4.

4)

LED de usuario LED conectado al Pin_A4, el cual enciende cuando el microcontrolador entra en modo bootloader o cuando el botón BOOT es presionado. Puede ser usado como LED indicador cuando el Pin_A4 funciona como salida (un estado LOW en el pin encenderá el LED).

PRECAUCIÓN: Presionar el botón BOOT cuando el Pin_A4 funciona como salida puede dañar el microcontrolador. Este botón solo debe ser presionado cuando el Pin_A4 funciona como entrada o cuando el botón de RESET está siendo presionado (por ejemplo, para introducir al modo bootloader).

5)

Conectores I/O Estos conectores proveen acceso a los pines I/O analógicos/digitales del microcontrolador. Cada pin está marcado con su nombre, por ejemplo “A0” corresponde al “Pin_A0”. El nombre del pin marcado en la tarjeta no indica el número de entrada analógica, sino el nombre del pin. La descripción detallada de cada pin se encuentra en la G-PiC Lite! Tabla de pinout y en el Diagrama de conexiones

6)

LED de encendido Este LED enciende cuando la tarjeta es alimentada con 5Vcd, los cuales pueden provenir del conector USB o alguna fuente de voltaje externa de 5Vcd (siempre y cuando no esté conectado a la PC).

7)

Conector USB tipo B Conecta la tarjeta a un puerto USB de la PC para comunicarse con ella a través de distintos softwares, entre ellos el software empleado para descargar a través del bootloader los programas creados. Ofrece la principal fuente de alimentación del microcontrolador. Nota: El puerto USB 2.0 puede entregar una corriente máxima de hasta 500mA.

8)

Orificios para tornillos Estos orificios pueden ser utilizados para atornillar la tarjeta de desarrollo a alguna base o placa, lo cual es muy útil cuando el microcontrolador forma parte de un sistema electrónico que puede estar en movimiento.

forma parte de un sistema electrónico que puede estar en movimiento. Rev. Marzo 2012 3 Soporte:
forma parte de un sistema electrónico que puede estar en movimiento. Rev. Marzo 2012 3 Soporte:

Rev. Marzo 2012

3

Soporte: a.estrella@g-pic.cc

G-PiC Lite! Development Board Reference Manual
G-PiC Lite! Development Board
Reference Manual

Diagrama de conexiones

La G-PiC Lite! Development Board utiliza un diseño modificado de la tarjeta Pinguino, desarrollada inicialmente por HackingLab, lo que también la hace compatible con el bootloader de Pinguino y su interfaz de programación.

A

continuación se muestran las conexiones físicas de los pines del microcontrolador con los componentes de

la

tarjeta:

microcontrolador con los componentes de la tarjeta: Los pines marcados como A0 – A12 en el

Los pines marcados como A0 A12 en el diagrama anterior corresponden a las entradas analógicas disponibles en el microcontrolador. Estos pines pueden ser configurados como analógicos o digitales.

En ningún pin es necesario especificar si es entrada o salida, el compilador CCS PIC C configura esto automáticamente al utilizar las funciones como digitalWrite(), digitalRead(), analogWrite(), analogRead().

como digitalWrite(), digitalRead(), analogWrite(), analogRead() . Rev. Marzo 2012 4 Soporte: a.estrella@g-pic.cc
como digitalWrite(), digitalRead(), analogWrite(), analogRead() . Rev. Marzo 2012 4 Soporte: a.estrella@g-pic.cc

Rev. Marzo 2012

4

Soporte: a.estrella@g-pic.cc

G-PiC Lite! Development Board Reference Manual
G-PiC Lite! Development Board
Reference Manual

Funciones especiales de los pines

Serial UART: C6 (TX), C7 (RX). Se usan para recibir (RX) y transmitir (TX) datos seriales TTL RS232. Adicionalmente puede implementarse comunicación Serial RS232 por software en cualquier pin digital.

Interrupciones externas: B0, B1 y B2. Estos pines pueden ser configurados para generar una interrupción en un flanco de subida o bajada (falling/rising edge).

SPI: B0 (SDI), B1 (SCK), C7 (SDO). Estos pines soportan comunicación SPI. No es posible utilizar Serial y SPI simultáneamente. Adicionalmente puede implementarse comunicación SPI por software en cualquier pin digital.

Botón BOOT: Pin_A4. Introduce al microcontrolador en modo bootloader cuando se encuentra presionado inmediatamente después de un reset. Puede usarse como entrada digital para el Pin_A4. No presionar el botón BOOT cuando este pin se usa como salida.

User LED: Pin_A4. LED conectado al Pin_A4. Cuando el pin está en alto (1) apaga el LED, cuando el pin está en bajo (0) enciende el LED. No presionar el botón BOOT cuando este pin se usa como salida.

I 2 C: B0 (SDA), B1 (SCL). Soportan la comunicación I 2 C, también conocida como TWI. No es posible utilizar I 2 C y SPI simultáneamente. Adicionalmente puede implementarse comunicación I 2 C por software en cualquier pin digital.

A REF : Pin_A2 (-), Pin_A3 (+). Entrada de los voltajes de referencia para las entradas analógicas. Se utilizan si se desea utilizar referencias de voltaje diferentes a VCC (+) y GND(-).

Entradas analógicas: A0 - A12. Estas entradas pueden funcionar como digitales o analógicas, si se desea leer un voltaje analógico se utiliza la función analogRead(), similar al Arduino, mediante la librería Arduino Functions.c”. Por default proveen una resolución de 8 bits (256 valores diferentes), pero es posible utilizar conversiones de 10 bits modificando la librería “G-PiC Lite!.c”. Por default mide desde GND hasta 5V, pero es posible modificar sus referencias mediante A REF+ y

A REF-

Salidas PWM por software: PWM0 PWM11. Ofrecen una salida PWM de aproximadamente 250Hz con un ciclo de trabajo configurable entre 0% y 100%, en intervalos de 10% mediante la función analogWrite(). Los pines de salida predeterminados se encuentran en la Tabla de pinout, pero pueden ser modificados en la librería “analogWrite.c”.

Salidas PWM por hardware: Pin_C1 y Pin_C2. Ofrecen una salida PWM de aproximadamente 30Khz con un ciclo de trabajo configurable entre 0% y 100%, en intervalos de 1% mediante la función analogWrite().

Pines USB: D+ y D-. Estos pines están reservados para la comunicación USB cuando está habilitada. Si no se usa la comunicación USB, estos pines pueden usarse como cualquier pin digital I/O.

Pines ICSP. Son los pines utilizados por el programador externo para modificar el firmware o el bootloader del microcontrolador.

externo para modificar el firmware o el bootloader del microcontrolador. Rev. Marzo 2012 5 Soporte: a.estrella@g-pic.cc
externo para modificar el firmware o el bootloader del microcontrolador. Rev. Marzo 2012 5 Soporte: a.estrella@g-pic.cc

Rev. Marzo 2012

5

Soporte: a.estrella@g-pic.cc

G-PiC Lite! Development Board Reference Manual
G-PiC Lite! Development Board
Reference Manual

Librerías personalizadas

El compilador CCS PIC C cuenta con una vasta colección de librerías y funciones incorporadas para LCD, Serial, SPI, I 2 C, funciones matemáticas, lectura y escritura EEPROM, tonos musicales, funciones random, comunicación USB, entre muchas otras que facilitan la programación de una gran variedad de microcontroladores PIC. La G-PiC Lite! Development Board se entrega con una variedad de librerías personalizadas para el compilador CCS PIC C que simplifican aún más la programación del microcontrolador y sus módulos de hardware. Las librerías proporcionadas son:

G-PiC Lite!.c Es la cabecera de cada programa creado. Contiene las directivas necesarias para indicar al compilador el microcontrolador a utilizar, así como las características básicas del hardware. Dentro de esta librería puede configurarse la cantidad de bits usados para las conversiones analógicas, sean 8 o 10 bits. Además, contiene funciones útiles para realizar conversiones comunes de valores numéricos. Esta librería también incluye a otras librerías necesarias para el correcto funcionamiento, como la librería “usb_bootloader.h”.

usb_bootloader.h Librería requerida en caso de utilizar bootloader CDC para el compilador CCS PIC C. Por default, la G-PiC Lite! utiliza este

bootloader, por lo que todos sus programas incluyen esta librería.

Arduino Functions.c Es la librería encargada de traducir las funciones comunes de Arduino a las funciones propias del compilador CCS PIC C, por ejemplo digitalWrite().

analogWrite.c Es la librería encargada de configurar las salidas PWM por software y hardware. Es aquí donde es posible modificar los pines de salida de PWM por software en caso de ser necesario. Automáticamente configura el PWM por hardware cuando se selecciona el Pin_C1 o el Pin_C2 en la función analogWrite().

G-PiC Lite! CDC.c Contiene las funciones útiles para la comunicación serial vía USB. Mediante estas funciones es posible establecer comunicación serial con una PC tal como lo hace el Arduino, creando un puerto COM Virtual. Incluye esta librería si el programa requiere establecer comunicación serial con la PC.

Timers.c Esta librería fue creada para permitir la fácil y rápida configuración de los Timers 0 y 1, muy útiles para generar interrupciones en tiempos definidos mediante la función setupTimer(). Los timers 2 y 3 no están incluidos en esta librería debido a que son utilizados para generar los PWM por hardware y software, respectivamente.

utilizados para generar los PWM por hardware y software, respectivamente. Rev. Marzo 2012 6 Soporte: a.estrella@g-pic.cc
utilizados para generar los PWM por hardware y software, respectivamente. Rev. Marzo 2012 6 Soporte: a.estrella@g-pic.cc

Rev. Marzo 2012

6

Soporte: a.estrella@g-pic.cc

G-PiC Lite! Development Board Reference Manual
G-PiC Lite! Development Board
Reference Manual

G-PiC Lite! Tabla de pinout

PIC18F

G-PiC Lite!

PIC18F Signal

Notas

Pin

Pin

1

MCLR

Botón RESET, resetea el microcontrolador cuando recibe 0V

 

2

A0

Pin_A0 digital/Pin A0 analógico

 

3

A1

Pin_A1 digital/Pin A1 analógico

 

4

A2

Pin_A2 digital/Pin A2 analógico/A REF-

 

5

A3

Pin_A3 digital/Pin A3 analógico/ A REF+

 

6

A4

Pin_A4 digital/Botón BOOT (entrada)/ USER_LED (salida)/ Salida PWM11 por software (250Hz)

 

7

A5

Pin_A5 digital/Pin A4 analógico

 

8

E0

Pin_E0 digital/Pin A5 analógico

 

9

E1

Pin_E1 digital/Pin A6 analógico

 

10

E2

Pin_E2 digital/Pin A7 analógico

 

11

VDD

Voltaje de 5Vcd (VCC)

No conectar una fuente externa y USB simultáneamente.

12

VSS

Tierra (GND)

 

13

OSC

Pin del cristal de 20Mhz

No conectar

14

OSC

Pin del cristal de 20Mhz

No conectar

15

C0

Pin_C0 digital/Timer1 Clock Input

 

16

C1

Pin_C1 digital/Salida PWM por hardware (30Khz)

 

17

C2

Pin_C2 digital/Salida PWM por hardware (30Khz)

 

18

NC

Pin V USB

No conectar

19

D0

Pin_D0 digital/Salida PWM8 por software (250Hz)

 

20

D1

Pin_D1 digital/Salida PWM9 por software (250Hz)

 

21

D2

Pin_D2 digital/Salida PWM10 por software (250Hz)

 

22

D3

Pin_D3 digital

 

23

D-

Modo USB: Señal de datos de USB Sin modo USB: Pin_C4 digital

 

24

D+

Modo USB: Señal de datos de USB Sin modo USB: Pin_C5 digital

 
Modo USB: Señal de datos de USB Sin modo USB: Pin_C5 digital   Rev. Marzo 2012
Modo USB: Señal de datos de USB Sin modo USB: Pin_C5 digital   Rev. Marzo 2012

Rev. Marzo 2012

7

Soporte: a.estrella@g-pic.cc

G-PiC Lite! Development Board Reference Manual
G-PiC Lite! Development Board
Reference Manual

25

C6

Pin_C6 digital/Serial TX

Serial UART

RS232 TTL.

26

C7

Pin_C7 digital/Serial RX/SDO (SPI)

Serial UART RS232 TTL. SPI Data out.

27

D4

Pin_D4 digital

 

28

D5

Pin_D5 digital

 

29

D6

Pin_D6 digital

 

30

D7

Pin_D7 digital

 

31

VDD

Voltaje de 5Vcd (VCC)

No conectar. fuente externa y USB simultáneamente.

32

VSS

Tierra (GND)

 

33

B0

Pin_B0 digital/ Pin A12 analógico/SDI (SPI)/SDA (I 2 C)/ Salida PWM0 por software (250Hz)/ INT0 (Interrupción externa)

SPI Data in. I 2 C Data pin. Interrupción por flanco de subida/bajada.

34

B1

Pin_B1 digital/ Pin A10 analógico/SCK (SPI)/SCL (I 2 C)/ Salida PWM1 por software (250Hz)/ INT1 (Interrupción externa)

SPI Clock. I 2 C Clock. Interrupción por flanco de subida/bajada.

35

B2

Pin_B2 digital/ Pin A8 analógico/ Salida PWM2 por software (250Hz)/ INT2 (Interrupción externa)

Interrupción por

flanco de

subida/bajada.

36

B3

Pin_B3 digital/ Pin A9 analógico/ Salida PWM3 por software (250Hz)

 

37

B4

Pin_B4 digital/ Pin A11 analógico/ Salida PWM4 por software (250Hz)

 

38

B5

Pin_B5 digital/ Salida PWM5 por software (250Hz)

 

39

B6

Pin_B6 digital/ Salida PWM6 por software (250Hz)/ ICSP Data

Pin de datos del programador

40

B7

Pin_B7 digital/ Salida PWM7 por software (250Hz)/ ICSP Clock

Pin de clock del programador

PWM7 por software (250Hz)/ ICSP Clock Pin de clock del programador Rev. Marzo 2012 8 Soporte:
PWM7 por software (250Hz)/ ICSP Clock Pin de clock del programador Rev. Marzo 2012 8 Soporte:

Rev. Marzo 2012

8

Soporte: a.estrella@g-pic.cc

G-PiC Lite! Development Board Reference Manual
G-PiC Lite! Development Board
Reference Manual

Compiladores

La G-PiC Lite! puede ser programada a través de una variedad de una variedad de compiladores para microcontroladores PIC, siempre y cuando sea grabada previamente con el bootloader correspondiente. Los principales compiladores son los siguientes:

CCS PIC C Uno de los mejores compiladores en lenguaje C para microcontroladores PIC. Cuenta con una gran variedad de librerías que facilitan la

programación, y te permite crear tus propias librerías de una manera fácil y rápida. Es el

compilador principal para la

se entrega con una colección de ejemplos y librerías personalizadas que permiten al usuario empezar a implementar la tarjeta de desarrollo en sus proyectos. El compilador no está incluido en la documentación de la tarjeta de desarrollo. Página oficial:

G-PiC Lite!, la cual

Pinguino32X

Compilador open source desarrollado en Python. Pinguino es una tarjeta diseñada para ser similar al Arduino, pero basada en un microcontrolador PIC. La interfaz de programación, las librerías y las funciones son casi 100% compatibles con las de Arduino. Si eres fan de Arduino, este compilador es ideal para ti. Compatible con LINUX, Windows. Link de descarga:

ds/list Información y soporte:

G-Designer Interfaz gráfica de programación en lenguaje C

desarrollada por el Br. José Luis Kú Uc (Instituto Tecnológico de Mérida), es la interfaz intuitiva y fácil de usar. Fue empleada para programar la G-PiC en el curso de “Desarrollo de Interfaces Android-Microcontrolador”. Link de descarga:

ETUP.rar.html Información y soporte:

mikroBasic Pro for PIC/mikroC Pro for PIC Compilador desarrollado por la empresa MikroElektronika. Es un compilador bastante poderoso, con una gran variedad de librerías y tarjetas de desarrollo. A pesar de que el software no es gratuito, es posible descargar la versión de prueba para experimentar con el microcontrolador. Link de descarga:

Página oficial: http://www.mikroe.com/

PIC Basic MicroCode Studio Compilador de lenguaje basic para microcontroladores. Provee de una interfaz sencilla, rápida y fácil de utilizar para usuarios principiantes y experimentados. Página oficial: http://melabs.com/

Microchip MPLAB IDE Es el compilador de lenguaje ensamblador desarrollado por el propio fabricante de los microcontroladores PIC. Si te gusta tener el control total del funcionamiento interno del microcontrolador, éste es el compilador apropiado para ti. Página oficial:

me=en019469&part=SW007002 Rev. Marzo 2012 9 Soporte: a.estrella@g-pic.cc
me=en019469&part=SW007002 Rev. Marzo 2012 9 Soporte: a.estrella@g-pic.cc

Rev. Marzo 2012

9

Soporte: a.estrella@g-pic.cc