92
Diseñando interfaces humanas: Librería gráfica Microchip’s y Diseñando interfaces humanas: Librería gráfica Microchip’s y Librería gráfica Microchip’s y Magic Touch Capacitive Sensing Librería gráfica Microchip’s y Magic Touch Capacitive Sensing

Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

  • Upload
    vothuan

  • View
    213

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Diseñando interfaces humanas:Librería gráfica Microchip’s y

Diseñando interfaces humanas:Librería gráfica Microchip’s yLibrería gráfica Microchip’s y

Magic Touch Capacitive SensingLibrería gráfica Microchip’s y

Magic Touch Capacitive Sensing

Page 2: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

AgendaSistema LCD básicoMi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería GráficaFundamentos del touchscreen de 4 cables Filosofía del MtouchDescripción de HerramientasDescripción de HerramientasDescripción de la interfaz MTouch O i d T h P i lOpciones de Touch Proporcional Opciones de presión apareada y sleep

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 2HIF 2131

Page 3: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Sistema LCD GráficoSistema LCD Gráfico

Page 4: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Graphical Display Market

Sistemas POS ySistemas POS y terminales de manoEquipamiento de testeo industrial y de manoScanner de código de barrasbarrasAplicación en paneles frontales

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 4HIF 2131

Page 5: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Systema LCD GráficoData stream continuo

1 Imagen cruda

Image Buffer(RAM)

ApplicationControl(MCU)

1 Imagen cruda 12 Forma de onda digital (RGB)

3 Marco de la imagen mostrada3 g

Volta

geD

river

)

Digital Voltage LCD GlassGraphical

Accelerator( )

3

2

Ana

log

V(G

ate

Dg gGenerator Monochrome

STN, TFT(2D Engine)

Optional2

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 5HIF 2131

Page 6: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Resolución y tamaño del Buffer de imagen

MonochromeX resolution Y resolutionPixels Bits Bytes Interface

1/16 VGA 160 120 19 200 19 200 2 400 4 Data1/16 VGA 160 120 19,200 19,200 2,400 4 Data1/8 VGA 240 160 38,400 38,400 4,800 4 DataQVGA 320 240 76,800 76,800 9,600 4 Data

Color STNColor STNX resolution Y resolutionPixels Colors Bits Bytes Interface

1/16 VGA 160 120 19,200 8 57,600 7,200 8 Data1/8 VGA 240 160 38,400 8 115,200 14,400 8 DataQVGA 320 240 76,800 8 230,400 28,800 8 Data

Color TFTX resolution Y resolutionPixels Colors Bits Bytes Interfacey

1/16 VGA 160 120 19,200 4,096 230,400 28,800 12 Data1/8 VGA 240 160 38,400 4,096 460,800 57,600 12 DataQVGA 320 240 76,800 4,096 921,600 115,200 12 Data1/16 VGA 160 120 19 200 262 144 345 600 43 200 18 Data

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 6HIF 2131

1/16 VGA 160 120 19,200 262,144 345,600 43,200 18 Data1/8 VGA 240 160 38,400 262,144 691,200 86,400 18 DataQVGA 320 240 76,800 262,144 1,382,400 172,800 18 Data

Page 7: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

LCD Gráfico – Chip sobre el Vidrio (COG)Diagrama en BloquesDiagrama en Bloques

CS

DigitalControlLogic ate

Driv

er LCD Glass(Monochrome,

STN, TFT)

RD/ WRPIC24F ENA0

PMP

Ga

RST

DB0 – DB7

ImageBuffer(RAM)

GraphicAccelerator(Optional) LCD Module

Libraries:Line, Circle,

Rectangle, 3D Objects etc

LCD ControllerObjects etc

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 7HIF 2131

Back light

Page 8: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Interfaz Display RGB con Controlador Gráfico Diagrama en BloquesGráfico Diagrama en Bloques

LCD Glass(Monochrome, D

riverRD/ WR

CS

PIC24F ENA0M

P

DigitalControlLogic ( ,

STN, TFT)

Gat

e

LCD ModuleDB0 – DB7

PM

g

LCD ModuleRST

Back lightLibraries:Line, Circle,

ImageBuffer(RAM)

GraphicAccelerator(Optional)

Rectangle, 3D Objects etc

(RAM) ( p )

Graphics Controller

RGB Interface

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 8HIF 2131

Controller

Page 9: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Requerimientos del sistema

MCU PIC16- or 32-bit I f PMP (P ll l M P )Interfaz PMP (Parallel Master Port) 2 Canales ADC y 2 Ports I/O Digitales

Requiere soporte para touchscreen 4 cablesLibrerias GráficasLibrerias Gráficas

Microchip Graphics Library v1.3 o mayor Ramtex – GUI Lib (www ramtex dk)Ramtex GUI Lib (www.ramtex.dk)Segger – emWIN (www.segger.de)

Display Gráfico QVGA or WQVG

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 9HIF 2131

Display Gráfico QVGA or WQVG

Page 10: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Graphics PICtailTM Plus Demo BoardDemo Board

Trabajar con ambos PIMs 16- y 32-bit Seleccione el jumper:

Instalar el módulo LCD con controladorconstruido OR

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 10HIF 2131

ORconector estilo RGB y controlador SSD1906

Page 11: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Arquitectura de la Librería gráfica deArquitectura de la Librería gráfica deArquitectura de la Librería gráfica de Microchip

Arquitectura de la Librería gráfica de Microchip

Page 12: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Características de las librerías Gráficas de Microchip p

Soportan MCUs PIC de16- and 32-bit Librerías con licencia libreLibrerías con licencia libre

Incluyen código fuentesoportan Touch screen

Diseño Orientado a ObjetoEntorno de desarrollo completamente equipado de bajo costoq p j

Explorer 16 ($129.99 USD)Graphics PICtail Plus Paca hija ($135.00

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 12HIF 2131

G ap cs Cta us aca ja ($ 35 00USD)

Page 13: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Descripción de la LibreríaApplication Layer Aplicación

EspecíficaKey Pad Touch ScreenMouse

Message InterfaceGraphics Objects Layer FREEFREE

Draw Function 1(i.e. 3D Button)

Draw Function 2(i.e. Progress Bar)

Draw Function NMódulos Genéricos

……

Graphics Primitive Functions(Non-accelerated Line, Circle, Bar, OutText etc)

Graphics Primitives Layer

Display Device Driver (DDD)(i.e. PutPixel, GetPixel)

Graphical Accelerator(Optional)

Device Driver Layer

DispositivosEspecíficos

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 13HIF 2131

Graphics Display

Page 14: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Drivers de la Librería deMicrochip

LCD Module Controller ICs:Densitron: HIT1270Densitron: HIT1270LG: LGDP4531Renesas: R61505UOrise Tech: SPFD5408A (new)Samsung: S6D0129, S6D0139Solomon Systech: SSD1339

Controlador LCD externo:Solomon Systech: SSD1905, SSD1906 (new)

Pronto existirán mas…

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 14HIF 2131

Page 15: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Arquitectura de la Librería GráficaOpción del Tiempo de Compilación

Configuración con Bloqueos (DEFAULT) Fl j li l i l

Opción del Tiempo de Compilación

Flujo lineal simpleControl directo cuando el Display es

f d di ñ drefrescado o rediseñado Configuracion sin bloqueos

Utiliza la representación basada en estado de objectosUso eficiente del tiempo del procesador.

Opciones seleccionadas en:

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 15HIF 2131

GraphicsConfig.h

Page 16: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Primitivas Funciones para representaciónrepresentación

Funciones de controlInitGraph() – Realiza la secuencia de resetInitGraph() Realiza la secuencia de reset apropiada de los dipositivos para inicializar los registros de control de los mismos.Cl D i () Borra el display porClearDevice() – Borra el display por rellenando el display con el color de fondo corriente.SetLineType() – Setea el tipo de lineas (Solido, Punteado, Estrellado). Todas las líneas rendidas utilizarán este tipo.utilizarán este tipo.SetColor() – Setea el color del siguiente objeto primitivo para ser rendido.

() S t l t bl d f t

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 16HIF 2131

SetFont() – Setea la tabla de fonts para ser usada cuando declare el texto en el display.

Page 17: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Funciones Primitivas de la representaciónrepresentación

Line(,,,,) – declara una linea de un tipo seteado por SetLineType() y seteo del color por SetColor()Bar(,,,,) – declara una barra con seteo del color por SetColor()Rectangle(,,,,) – declara un rectangulo usando el color corrienteOutText(,,,) – declara un string de texto de un caracter a un timempo usando el font corriente de la tabla seteada.PutImage(,,,) – declara una imagen o bitmapg (,,,) g pCircle(,,,) – declara un circulo usando el color corriente seteado DrawPoly( ) – declara un polígono usando el color corrienteDrawPoly(,,,) declara un polígono usando el color corriente seteado FillCircle(,,,) – declara un círculo relleno usando el color corriente seteado

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 17HIF 2131

corriente seteado

Page 18: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Capa de objetos graficosObjetos Gráficos Avanzados

(Aparatos)BotonVentana

Caja de ediciónCaja de Lista

Caja de ChequesCaja de grupo

jPote deslizableBarra tipo scrollCaja de grupo

Boton de radioT t táti

Barra tipo scrollBarra progresivaM didTexto estático

ImagenMedidorDial

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 18HIF 2131

y mucho mas….

Page 19: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Capa de objetos GráficosCapa de objetos G á cosBarra Scroll Medidor

Caja de chequeo

Rounded

q

Button

Boton circular

Imagen

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 19HIF 2131

Page 20: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Objetos Gráficos AvanzadosControl del objeto alcanzado vía APIsComportamiento de un objeto determinado yComportamiento de un objeto determinado y estado actual de las acciones del usuario

Update o no?Mensaje o no?

Listado de linked usado para manejar ObjetosPermite Listas Multiples La lista activa recibe los objetos creados

El esquema del estilo define la acción de la representación

Tablas de Fonts y colores

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 20HIF 2131

Tablas de Fonts y coloresEsquemas por Default o a medida

Page 21: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Objetos Gáficos AvanzadosobjCreate() –

Crea objetos con parametros para setear dimensiones de j p pestos, localización e estado inicialSuma el nuevo objeto a un listado de linkeado Global

objDraw() –objDraw() –Presenta el objeto sobre el displayLlama a refrescar el objeto siempre que el estado del objeto

bicambieManejo de API’s –

Maneja el estado y apariencia del objetoj y p jHabilita o desabiñita un objetoCuando desabilita, todos los mensajes para el objetos son ignorados

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 21HIF 2131

ignorados.Suporte para la destrucción de un objeto

Page 22: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Uso de la Librería Gráfica

I i i li áfiInicializa gráficoInitGraph()

Crea el estilo del esquemaesquema

GolCreateScheme()

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 22HIF 2131

Page 23: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Estilo del Esquema

Por defecto se usa el esquema si no esta definido uno propio

typedef struct {WORD EmbossDkColor;WORD EmbossLtColor;

definido uno propioEmbossDkColor

EmbossLtColor

WORD EmbossLtColor;WORD TextColor0;WORD TextColor1;WORD TextColorDisabled;

Unpressed TextColor1

Color1pFont

WORD Color0;WORD Color1;WORD ColorDisabled;WORD C BkC l

Pressed

TextColor0

Color0

WORD CommonBkColor;char *pFont;

} GOL_SCHEME; EmbossLtColor

EmbossDkColor

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 23HIF 2131

Page 24: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Uso de la Librería Gráfica

I i i li áfiInicializa gráficoInitGraph()

GOL Init()

Crea un estilo de esquemaesque a

GolCreateScheme()

Objetos CreadosObjCreate(,,)

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 24HIF 2131

Page 25: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Ejemplo de un BotonAPI definida para BtnCreate

BUTTON *BtnCreate(WORD IDWORD ID,SHORT

left,top,i ht b tt

left, top

right,bottom, state,

char *pBitmap,

Button

right, bottomp p*pText,

GOL_SCHEME *pScheme )

right, bottom

)

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 25HIF 2131

Page 26: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Ejemplo de un BotonBoton state pueden ser cualquiera de los siguientes

#define BTN_FOCUSED 0x0001 // bit for focus state (dotted

// rectangle will be drawn)

#define BTN_PRESSED 0x0002 // bit for press state (button

// is pressed)

#define BTN_DISABLED 0x0010 // bit for enable state

// (disabled button has separate

// colors)

#define BTN_DRAW 0x4000 // bit to indicate button should

// be redrawn

#define BTN_REMOVE 0x8000 // bit to indicate button should

// be removed from screen

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 26HIF 2131

Page 27: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Ejemplo de un BotonPara crear un boton, se necesitan los siguientes perámetros:perámetros:

BUTTON *BtnCreate(WORD ID,SHORT

left, top

SHORT left,top,right,bottom, state,

Button

right, bottomstate,

char *pBitmap,*pText,

GOL SCHEME * S h

right, bottom

*pBitmap – Setear para NULL cuando no se usan bitmapsGOL_SCHEME *pScheme

)

cuando no se usan bitmaps.*pScheme – Define el uso o setea para NULL para usar seteos por default

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 27HIF 2131

usar seteos por default.

Page 28: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Graphics Library Usage

I it i li l áfi Dib j bj tInitcializa el gráficoInitGraph()

Dibuja objetosGOLDraw()

GOL Init()

Crea el estilo del ObjetoObjeto

GolCreateScheme()

Crea ObjetosObjCreate(,,)

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 28HIF 2131

Page 29: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Ejemplo de un Boton

Para presentar el boton sobre la pantalla llamar a BtnDraw(pB)llamar a BtnDraw(pB).

pB puntos del Boton a ser presentado.Para manejar el estado del BotonSetState(pB, stateBits)

ClrState(pB, stateBits)

GetState(pB stateBits)GetState(pB, stateBits)

bit d t d i bl© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 29HIF 2131

stateBits son bits de estado variable

Page 30: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Ejemplo de un Boton

Otros soportes APIsM j t tManeja texto:BtnGetText(pB) & BtnSetText(pB,*)

Maneja Bit Map:BtnGetBitmap(pB) & BtnSetBitmap(pB, *)

Maneja el estilo del esquema: GetScheme() & SetScheme()GetScheme() & SetScheme()

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 30HIF 2131

Page 31: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Uso de la Librería Gráfica

I i i li áfi Dib j l bj tInicializa gráficosInitGraph()

Dibuja el objetoGOLDraw()

GOL Init()

Crea el estilo del esquema

Get User InputsMessage Structesque a

GolCreateScheme()

Message Struct

Crea el objetoObjCreate(,,)

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 31HIF 2131

Page 32: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Message Interface

Application LayerKey Pad Touch ScreenMouse

Message InterfaceGraphics Objects Layer

Key Pad Touch ScreenMouse

Para una mejor experiencia del usuario el dispositivo

Draw Function 1Draw Function 1(i.e. 3D Button)(i.e. 3D Button)

Draw Function 2Draw Function 2(i.e. Progress Bar)(i.e. Progress Bar)

Draw Function NDraw Function N……

Para una mejor experiencia del usuario, el dispositivo de entrada del usuario debe trabajar unido a la exhibición en el displaySimplifica la forma de manejo del objeto desde el punto d i t d l li ióde vista de la aplicación

La cara de la interfaz de mensajes simplifica la integración de los dispositivos de entrada del usuarioSoporte para una variedad de dispositivos de entrada

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 32HIF 2131

Soporte para una variedad de dispositivos de entradaIntegración inconsulta con los objetos gráficos

Page 33: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

MensajeríaEstructura de un mensaje

typedef struct { yp {

BYTE type;

BYTE event;

SHORT param1;

SHORT param2;

} GOL MSG;} GOL_MSG;

type define un tipo de entrada la cual determina como param(n)son interpretados

Ejemplo: Mensaje desde el touch screen:param1 : x position param2 : y position

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 33HIF 2131

param2 : y position Para keypad: los parámetros pueden ser un código de una tecla

Page 34: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Mensajería

event es un mensaje genérico de un dispositivo de entradadispositivo de entradaevent definido para un touch screen

EVENT PRESSEVENT_PRESSEVENT_RELEASEEVENT MOVEEVENT_MOVE

event definido para un teclado puede serEVENT PRESSEVENT_PRESSEVENT_RELEASE

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 34HIF 2131

Page 35: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Mensajería

Acción de usuario IDLista de acciones definidas (o cambio de estado) que un objeto ha aceptado.Cada tipo de objeto tiene una lista predefinida. p

Ejemplo de un boton:BTN_MSG_PRESSED

BTN_MSG_RELEASED

Si el objeto no es afectado por la acción d l i t t

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 35HIF 2131

del usuario este retorna MSG_INVALID.

Page 36: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Uso de la Librería Gráfica

I i i li ió d Dib j Obj tInicialización de gráficos

InitGraph()

Dibuja ObjetosGOLDraw()

GOL Init()

Estilo de esquema Creado

Get User InputsMessage Struct

GolCreateScheme()Message Struct

Crea ObjetosObjCreate(,,)

Procesador de Mensajes de

UsuarioGOLM ()

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 36HIF 2131

GOLMsg()

Page 37: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Uso de la librería Gráfica

I i i li G áfi Dib j Obj tInicializa GráficosInitGraph()

Dibuja ObjetosGOLDraw()

GOL Init()

Crea un estilo del esquema

Get User InputsMessage Structesquema

GolCreateScheme()

Message Struct

Crea ObjetosObjCreate(,,)

Procesador de Mensajes de

UsuarioGOLMsg()

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 37HIF 2131

GOLMsg()

Page 38: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Fundamentos del Touch Screen Fundamentos del Touch Screen

Page 39: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Touch Screen ResistivoCorte TransversalCorte Transversal

orP lPolyester

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 39HIF 2131

Page 40: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Touch Screen Resistivo

• El mas popular en uso industrial y aplicaciones consumo

Cubierta protectora

El mas popular en uso industrial y aplicaciones consumo •Es el mas usado por su relación costo y facilidad de uso

Cubierta protectora

Membrana FlexibleTouchscreen 4 cables Touchscreen 5 cables

Espacios ailadosCubierta conductora

Cubierta resistiva Indium Tin Oxide

Substrato

Vidrio/ Pástico

Substrato

Vidrio/ Plástico

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 40HIF 2131

Vidrio/ Pástico Vidrio/ Plástico

Page 41: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Detección de un Touchscreen de 4 cablesde 4 cables

PIC® MCU /ADC

Y+w/ADC

Digital I/O

Digital I/OX- X+

g

Dig-O/AN-I

Dig-O/AN-I

Y-

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 41HIF 2131

Page 42: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Detección de un Touch Screen de 4 cables

PIC® MCU /ADC

Y+

de 4 cables

w/ADC

Digital I/O

Digital I/O

1

g

Dig-O/AN-I

Dig-O/AN-I

X- X+0

Sense

Y-

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 42HIF 2131

Page 43: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Detección de un Touchscreen de 4 cables

PIC® MCU /ADC

Y+

de 4 cables

w/ADC

Digital I/O

Digital I/O1

g

Dig-O/AN-I

Dig-O/AN-I

X- X+Sense0

Y-

Los Pines del ADC pueden actuar como una entrada analógica o

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 43HIF 2131

como una salida digital

Page 44: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

4-wire Touch Screen Detection

PIC® MCU /ADC

Y+w/ADC

Digital I/O

Digital I/O

0

1Digital I/O

Dig-O/AN-I

Dig-O/AN-I

X- X+Sense

Y-

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 44HIF 2131

Page 45: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Detección del Touch (4-cables)

PIC® MCUY+

PIC MCU w/ADC

Digital I/O

Digital I/O

0

1Digital I/O

Dig-O/AN-I

Dig-O/AN-I

X- X+Sense

Y-

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 45HIF 2131

Page 46: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Conección Universal 4/5-Cables

X+/LRDig-outputJ1

PIC

MC

Y+/UL

NC/LL

Dig-output

Dig-outputC®

CU

X-/UR

Y-/Wiper

Dig-output/AN-input

Dig-output/AN-input

Touch Screen4/5

49k

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 46HIF 2131

Page 47: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Conexión de Filtros 4- y 5-Cables

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 47HIF 2131

Page 48: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

CalibraciónCalibración

Page 49: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

CalibraciónCalibración

100

P

X 500

Xp=50Yp=50}Actual screen

Position

0100

Xp=75Y =65}Measured

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 49HIF 2131

Yp=65}

Page 50: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Calibración

P2

X AX BY C

P2x2,y2

P3 3 3Xpn=AX+BY+C

Y =DX+EY+FP1x1,y1

P3x3,y3

Ypn DX+EY+F

•Xpn, Ypn are actual screen coordinates to be calculated

A, B, C, D, E, y F son

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 50HIF 2131

coordinates to be calculated.

•X, Y son ccordenadas medidas.constantes.

Page 51: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Calibración

P2x2,y2

Measured/Knowncoordinates

P1x1,y1P3x3,y3

Seis ecuaciones y seis incógnitasSeis ecuaciones y seis incógnitas

Xp1=AX1+BY1+C Yp1=DX1+EY1+Fp1 1 1 p1 1 1Xp2=AX2+BY2+C Yp2=DX2+EY2+FXp3=AX3+BY3+C Y DX +EY +F

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 51HIF 2131

Xp3 AX3 BY3 C Yp3=DX3+EY3+F

Page 52: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

CalibraciónCalibración

PP

Xp=AX+BY+CYp=DX+EY+F

•Xpn, Ypn are actual screenXpn, Ypn are actual screen coordinates to be calculated (unknown)

•X, Y son coordenadas medidas

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 52HIF 2131

X, Y son coordenadas medidas

•A, B, C, D, E, y F son las constantes que calculábamos

Page 53: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Análisis de la versión parcial de unAnálisis de la versión parcial de unAnálisis de la versión parcial de un programa

Análisis de la versión parcial de un programa

Page 54: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Basic Graphics Object Layer Demo

Codigo fuente provisto con la librería D t i d li i lti t llDemostraciones de aplicaciones multi-pantalla Acepta variedad de entradas de usuario

Variar la forma de onda con potenciómetroSwitch S4 para seleccionar items, S5 como “ t ”“enter”Touchscreen via yema del dedo o de una

tpuntaDemostraciones de animaciones compatiblesU 8 bi PMP b PIC MCU

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 54HIF 2131

Usa 8-bit PMP sobre PIC MCUs

Page 55: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Ejemplo de memoria requerida para gráficos

Espacio en Flash (10.6 KBytes)Stdlib ~8 KBytesyBoton ~1 KBytesVentana ~0.8 KBytesTexto estático ~0.7 KBytesy

Espacio en SRAM (130 Bytes)Stdlib ~110 BytesBoton 8 BytesBoton 8 BytesVentana 8 BytesTexto estático 2 Bytes

Espacio Dinamico (287 Bytes)Espacio Dinamico (287 Bytes)9 Botones 243 Bytes1 ventana 23 Bytes1Texto estático 21 Bytes

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 55HIF 2131

1Texto estático 21 Bytes

Page 56: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Graficos plus demoUSB

Código fuente disponible sobre pedido Integra USB Host stack con Librería Gráfica

RGB Lighting board shows HID USB Stick shows Mass Storage Device

FAT16/32 file system implemented

Usa controlador externo SSD1906 LCD EEPROM conectada al PMP almacena iconos

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 56HIF 2131

Page 57: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Magic TouchMagic Touch

Page 58: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Filosofía de la Competencia

Patentes sobre hardware de medidahardware de medida de capacitores S ft “ t k”Software es “stock” bloque comun del

di l t hcodigo para el touchConjeturan que el sistema es mejor que lo que necesitan los

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 58HIF 2131

clientes

Page 59: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Filosofía del MTouch

Enseñar a los clientes a desarrollar sus propiasdesarrollar sus propias solucionesS ft D l Kit (SDK)Software Developers Kit (SDK)Herramientas para desarrollo y diagnósticoclientes “consiga lo que usted quiere”, no “tome lo que puede

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 59HIF 2131

q pconseguir.”

Page 60: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Herramientas

Software Developer’s KitBloques vacios para un sistemaBloques vacios para un sistema touch Manual de Usuario con ejemplos de diseño

Touch GUIEvalua un nuevo diseño touch Determina la resolución requeridaD t i l ibilid d idDetermina la sensibilidad requeridaEvalua factores del ambiente

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 60HIF 2131

Page 61: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Software Kit de desarrollo

El sistema Touch es segregado en bloquesEl sistema Touch es segregado en bloquesLos bloques optimizados para aplicaciones específicas se proporcionanespecíficas se proporcionanBloques organizados en Librerias de Módulos de Código

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 61HIF 2131

de Código

Page 62: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

SDK Manual de Usuario

Users ManualProporciona “el como” crearuna interfaz touchD t ió d lDocumentación delbloque de código Hardware requeridoHardware requerido para cada bloqueCombinación de bloques recomendadaCombinación de bloques recomendada Referencias de diseño para ambientes específicos

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 62HIF 2131

específicos.

Page 63: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Librería del Bloque de Código

Organización del Bloque de Código y customización deCódigo y customización de herramientasOrganización estilo carpetaOrganización estilo carpetaFunción de substitución de Nombre y Carpetao b e y Ca petaTrabajando con un editor de textoLenguaje independiente

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 63HIF 2131

Page 64: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Librería Módulo de Código

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 64HIF 2131

Page 65: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Usando un bloque de código

Selección del Boque deBoque de Código

Renombre deRenombre de variables

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 65HIF 2131Copiar y pegar

Page 66: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 66HIF 2131

Page 67: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

MTouch GUI

Cada Boton y circuitoCada Boton y circuito es diferenteP di d lPromedio del sensor Valor actual crudoBanda protectora para el promedio pbloqueado gated El Nivel del recorrido

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 67HIF 2131

El Nivel del recorrido es el umbral

Page 68: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

MTouch GUI

Settings de VentanaM t Lí itMuestra Límites Número de sensor

Navegación del SensorgAdd/remove desde la derechaMover izquierda or derecha

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 68HIF 2131

Add/remove desde la izquierda

Page 69: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Demo 1Observe el comportamiento de las placas preprogramadasp ep og a adas

Conecte el PICkit Serial Analyzer (PKSA)y ( )

Arranque el MTouch GUI usando PICkit Serialq

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 69HIF 2131

Page 70: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Revisión del Demo

Son los valores medios iguales para todos los botones?los botones?Hasta donde el valor crudo cambio d t t h ?durante un touch suave?Hasta donde el valor crudo cambio durante un touch pesado?Había una interacción entre los botones?Que recorrido de niveles usted sugeriría?

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 70HIF 2131

Page 71: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Diagrama en Bloques de un SistemaSistema

Un sistema touch es mostrado arribaSensores y CDC son sobre todo hardwareDetectores y Decodificadores son

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 71HIF 2131

ysoftware

Page 72: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Hardware de Conversión

Oscilador de frecuencia variable basado en un comparadorC t d d f i b d

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 72HIF 2131

Contador de frecuencia basado en un timer

Page 73: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Multiplexación de Botones

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 73HIF 2131

Page 74: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Software

Main LoopI i i li ifé iInicializa periféricos

TMR0 ISRConsigna el valor del TMR1 PromedioCompare el recorridoDecodificarSet nuevo boton

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 74HIF 2131

Reiniciar TMRs

Page 75: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Consiga el valor

Si borra la interrupción...pPoniendo en off TMR1Consiga el ValorConsiga el ValorConcatenando valoresAlmacenando en array CRUDO

Si INT durante una Interrupción...Si INT durante una Interrupción...Borra los timersRETFIE

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 75HIF 2131

RETFIE

Page 76: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Promediando

El estilo del Filtro RC requiere un di j t d d b tpromedio justo de dos bytes.

+ DIFF = button pressDIFF = button release- DIFF = button release

DIFF = AVG – (LAST * 16)DIFF = DIFF / 16AVG = AVG + DIFF

Hacer un promedio lentoHaga n promedio de cada 8 o alorHaga un promedio de cada 8vo valor

Haciendo un promedio bloqueadoPromediar si delta < a la banda de Guarda

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 76HIF 2131

Promediar si delta < a la banda de Guarda

Page 77: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Encontrar el valor siguiente

Basado sobre una indexación de valores de datos internos

Update el multiplexor externo y las salidasUpdate el multiplexor interno y pone el SFR

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 77HIF 2131

Page 78: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Decodificando

Decodificación basicaEl promedio bloqueado da unaEl promedio bloqueado da una indicación on-off del touchEl promedio lento requiere un set-reset estilo de rebote

Tiempo promedio del boton dpegado

Tiempo promedio disparadoPressed at powerup average resets

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 78HIF 2131

Page 79: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Implementaciones con Microcontroladores de bajo costosMicrocontroladores de bajo costos

PIC16F61X son alternativas de muy bajo costocostoSin embargo;

No tienen periférico SSP el ICD afecta al sensor capacitivo

Tan;GUI is no esta disponible para testear botonesp pLos niveles de recorrido son mejores que los esperados

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 79HIF 2131

p

Page 80: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Touch Proporcional

Recorrido de las Bases sobre el percentaje de desplazamiento en frecuenciade desplazamiento en frecuenciaQuita la mayor parte de la variación del

itisensor capacitivoEl Algorítmo ha sido optimizado para reducir la matemáticaCuando se combina con lo elegido, puede g , pcompensar parcialmente la humedad sobre los botones

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 80HIF 2131

Solo se puede presionar un boton por vez

Page 81: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Lectura del valor

El porcentaje de desplazamiento es 0-20%

Para evitar el uso de punto flotante, los valores son multiplicados por 1000

14.2% (0.142)( )x 1000 produce 142

Los desplazamientos positivos y negativos pueden ser considerados

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 81HIF 2131

negativos pueden ser considerados separadamente

Page 82: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Promediando

El estilo del filtro RC requiereun promedio j t d d b tjusto de dos bytes.

+ DIFF = button pressDIFF = button release- DIFF = button release

DIFF = AVG – (LAST * 16)DIFF = DIFF / 16AVG = AVG + DIFF

Promediando lentamentePromedio cada 8vo alorPromedio cada 8vo valor

Promediando Gated Promedio si delta < Banda de Guarda

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 82HIF 2131

Promedio si delta < Banda de Guarda

Page 83: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Votación

Util para el agua en los b tbotones Los porcentajes de presionado sonpresionado son clasificados de mayor a menor

La mayor presión es el boton“mas presionado”

On Rotar and Slider topOn Rotary and Slider, top two are overlapped buttons

Ratio of over lap is position

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 83HIF 2131

Ratio of over lap is position between buttons

Page 84: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Touch Durante Sleep

En el modo sleep, no hay Fosc, tampoco T0IFHay dos opcionesHay dos opciones

1. Use WDT en lugar de TMR0Requiere calibración individual del oscilador del WDTRequiere calibración individual del oscilador del WDT (Impráctico)

2 Despertar periódicamente y medir un boton al2. Despertar periódicamente y medir un boton al despertar

Require Botones simples durante el modo sleepLa sensibilidad del boton puede ser incrementada para atender la ondulación de la mano

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 84HIF 2131

Page 85: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Option 2

La siguiente función es modificada con un Modo Sleep flag pra la operación de unModo Sleep flag pra la operación de un boton simple

Sleep y Wakeup para decodificar el comando es agregado un loop en el código principal

If applicable alternate TRIP value would

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 85HIF 2131

If applicable, alternate TRIP value would be required for HandWave wakup

Page 86: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Presionado Apareado

El presionado apareado combinado en botones simples para crear nuevosbotones simples para crear nuevos botones

El d l i t f i d lEl desplazamiento en frecuencia del presionado apareado puede ser muy lentorequiriendo valores secundarios de recorridorequiriendo valores secundarios de recorridoEl presionado apareado no es compatible con el comando del boton Chordel comando del boton Chord

Para decodificar, chequear para saber si hay apareados entonces simple

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 86HIF 2131

hay apareados, entonces simple

Page 87: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Metodo del “Presionado Apareado”Apareado

A li d 4 10 b tAmplia de 4 a 10 botones1, 3, 7, & 9 son los botones enteros2, 4, 5, 6, 8, & 0 son los botones apareados

El presionado apareado solo p pproduce la ½ de capacidad Requiere scan de todos los botones para una decodificación validadecodificación validaNo se puede diferenciar el presionado de dos botones de un presionado apareado

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 87HIF 2131

p p

Page 88: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

SummarySummary

Page 89: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Resumen

Arquitectura de la librería gráfica de MicrochipMicrochip Como usar los objetos gráficos (aparatos)Fundamentos del touch screen resistivo e integración en aplicaciones

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 89HIF 2131

Page 90: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Resumen

Soluciones para MCU PIC® gratisSeamless integration con dispositivos deSeamless integration con dispositivos de entrada de usuarioAlta optimización (Velocidad y Tamaño)Alta optimización (Velocidad y Tamaño)

Stdlib + Primitive + Device Driver – Approx 8KB PM, 52 bytes of RAMyCada objeto gráfico – Approx 1KB PM, 10 – 15 bytes RAMCada Font – Approx 5 – 7 KB of PMMemoria dinámica – Varia basado en el contenido de los gráficos Refiera a las notas de lanzamiento

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 90HIF 2131

de los gráficos. Refiera a las notas de lanzamiento

Page 91: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

Conclusiones

La mayor parte del touchcapacitivo es softwaresoftwareMTouch incluye una GUI y SDKEl GUI ayuda en la evaluación y diseño de la interfazEl SDK crea la interfaz

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 91HIF 2131

Page 92: Diseñando interfaces humanas: Librería gráfica … · Agenda Sistema LCD básico Mi hi A it t d Lib í G áfiMicrochip Arquitectura de Librería Gráfica Fundamentos del touchscreen

TrademarksThe Microchip name and logo, the Microchip logo, Accuron, dsPIC, KeeLoq, KeeLoq logo, microID, MPLAB, PIC, PICmicro, PICSTART, PRO MATE, rfPIC and SmartShunt are registered trademarks of Microchip Technology Incorporated in the U.S.A. and other countries.AmpLab, FilterLab, Linear Active Thermistor, Migratable Memory, MXDEV, MXLAB, SEEVAL, SmartSensor and The Embedded Control Solutions Company are registered trademarks ofSmartSensor and The Embedded Control Solutions Company are registered trademarks of Microchip Technology Incorporated in the U.S.A.Analog-for-the-Digital Age, Application Maestro, CodeGuard, dsPICDEM, dsPICDEM.net, dsPICworks, ECAN, ECONOMONITOR, FanSense, FlexROM, fuzzyLAB, In-Circuit Serial Programming, ICSP, ICEPIC, Mindi, MiWi, MPASM, MPLAB Certified logo, MPLIB, MPLINK, PICkit, PICDEM, PICDEM.net, PICLAB, PICtail, PowerCal, PowerInfo, PowerMate, PowerTool, REAL ICE, rfLAB, Select Mode, Smart Serial, SmartTel, Total Endurance, UNI/O, WiperLock and ZENA arerfLAB, Select Mode, Smart Serial, SmartTel, Total Endurance, UNI/O, WiperLock and ZENA are trademarks of Microchip Technology Incorporated in the U.S.A. and other countries.SQTP is a service mark of Microchip Technology Incorporated in the U.S.A.All other trademarks mentioned herein are property of their respective companies.

Traducido por: Andrés Raúl Bruno SaraviaProf. de ElectrónicaInstituto Técnico OHM

© 2008 Microchip Technology Incorporated. All Rights Reserved. Slide 92HIF 2131