ID 413C: Can Touch This:
Designing Capacitive-Based Touch Solutions
Mark F Rodriguez
Senior Engineering
13 October 2010
Version: 1.0
Xaplos Inc.
2
Mr. Mark F Rodriguez
Senior Engineer @ Xaplos, Inc. Technology consultant with over 12 years of design experience.
Responsible for the successful release of over 20 commercial products
Special interest in medical device industry and home-based healthcare systems
BSBE/MSBE from the University of Miami
RECENT HMI RELATED PROJECTS:
Handheld aftermarket automotive tuning unit
Wearable life-sustaining medical device
Educational tablet device for elementary students
Reference design for Arrow Electronics
Marine power distribution system
Renesas Technology and Solution Portfolio
Microcontrollers& Microprocessors
#1 Market shareworldwide *
Analog andPower Devices#1 Market share
in low-voltageMOSFET**
Solutionsfor
Innovation
Solutionsfor
InnovationASIC, ASSP& Memory
Advanced and proven technologies * MCU: 31% revenue
basis from Gartner "Semiconductor Applications Worldwide Annual Market Share: Database" 25 March 2010
** Power MOSFET: 17.1% on unit basis from Marketing Eye 2009 (17.1% on unit basis).
4
Renesas Technology and Solution Portfolio
Microcontrollers& Microprocessors
#1 Market shareworldwide *
Analog andPower Devices#1 Market share
in low-voltageMOSFET**
ASIC, ASSP& Memory
Advanced and proven technologies * MCU: 31% revenue
basis from Gartner "Semiconductor Applications Worldwide Annual Market Share: Database" 25 March 2010
** Power MOSFET: 17.1% on unit basis from Marketing Eye 2009 (17.1% on unit basis).
Solutionsfor
Innovation
Solutionsfor
Innovation
5
Microcontroller and Microprocessor Line-up
Superscalar, MMU, Multimedia Up to 1200 DMIPS, 45, 65 & 90nm process Video and audio processing on Linux Server, Industrial & Automotive
Up to 500 DMIPS, 150 & 90nm process 600uA/MHz, 1.5 uA standby Medical, Automotive & Industrial
Legacy Cores Next-generation migration to RX
High Performance CPU, FPU, DSC
Embedded Security
Up to 10 DMIPS, 130nm process350 uA/MHz, 1uA standbyCapacitive touch
Up to 25 DMIPS, 150nm process190 uA/MHz, 0.3uA standbyApplication-specific integration
Up to 25 DMIPS, 180, 90nm process 1mA/MHz, 100uA standby Crypto engine, Hardware security
Up to 165 DMIPS, 90nm process 500uA/MHz, 2.5 uA standby Ethernet, CAN, USB, Motor Control, TFT Display
High Performance CPU, Low Power
Ultra Low PowerGeneral Purpose
6
Microcontroller and Microprocessor Line-up
Superscalar, MMU, Multimedia Up to 1200 DMIPS, 45, 65 & 90nm process Video and audio processing on Linux Server, Industrial & Automotive
Up to 500 DMIPS, 150 & 90nm process 600uA/MHz, 1.5 uA standby Medical, Automotive & Industrial
Legacy Cores Next-generation migration to RX
High Performance CPU, FPU, DSC
Embedded Security
Up to 10 DMIPS, 130nm process350 uA/MHz, 1uA standbyCapacitive touch
Up to 25 DMIPS, 150nm process190 uA/MHz, 0.3uA standbyApplication-specific integration
Up to 25 DMIPS, 180, 90nm process 1mA/MHz, 100uA standby Crypto engine, Hardware security
Up to 165 DMIPS, 90nm process 500uA/MHz, 2.5 uA standby Ethernet, CAN, USB, Motor Control, TFT Display
High Performance CPU, Low Power
Ultra Low PowerGeneral Purpose
R8C
16 Bit CISC
Superb Noise Performance
Low Power Consumption
Higher Functionality
ASSP Lineup
Low Pin Count Lineup
7
Innovation The Cloud
TV
Remote Control
Medical Aggregation
Box
BP Monitor
Pedometer
Scale
8
Renesas’ Capacitive Touch Solution
Renesas now provides an advanced sensor scanning unit (SCU)
implemented in hardware along with a complete set of tools for
capacitive touch solutions. The FREE tools available include:
Tuning Software
Sensor API
Touch Library
Example Code
Apple’s Magic Trackpad
9
Agenda
What can I do with the Renesas capacitive touch solution?
How do I actually code up an application with what Renesas
provides?
How to dance like MC Hammer!
Agenda
11
Agenda
What can I do with the Renesas capacitive touch solution?
How do I actually code up an application with what Renesas
provides?
How to dance like MC Hammer!
Q&A
12
Key Takeaways
Learn about typical capacitive touch interfaces and when to
use them
Understand how to handle keys, sliders, and wheels within
your application code
Become familiar with the Renesas touch library model and
its intuitive API
13
Switches Wheels Sliders
Capacitive Touch Interfaces
Gestures
14
Capacitive Touch Interfaces
15
Distinct software layers for easy management
Firmware available in source format
Optimized driver tightly coupled to SCU
Complete Sensor API to enable customization
Support for Wheel, Slider, Switch, and Matrix configurations
Renesas Software Architecture
16
Overview Of Using The Touch Library
17
Overview Of Using The Touch Library
18
The Primitives
Functions
Touch_Init
Touch_Register_Sensor
Touch_Unregister_Sensor
Touch_Start
Touch_Handler
Data Types
Sensor_Type_t
Sensor_State_t
Orientation_t
Polarity_t
Direction_t
Sensor_Params_t
Sensor_t
19
Let’s Start Out Simple: The Switch
Switch Types Toggle Momentary Repeat Proximity
Sensor_Params_t SwitchParams;/* Initialization code */SwitchParams.id = 0;SwitchParams.type = TOGGLE_SWITCH;SwitchParams.channel = 7;SwitchParams.debounce = TRUE;SwitchParams.callback = Switch_Event
Touch_Register_Sensor(&SwitchParams);
20
Let’s Start Out Simple: The Switch
int Switch_Event(Sensor_t *Switch){ if (Switch->state == ACTIVE) { Led_State(LED_7, ON); } else { Led_State(LED_7, OFF); }}
21
The Electric Slide
Sensor_Params_t SliderParams;/* Initialization code */SliderParams.id = 1;SliderParams.type = SLIDER;SliderParams.channel = 1;SliderParams.count = 6;SliderParams.resolution = 2;SliderParams.orientation = EAST_WEST;SliderParams.callback = Slider_Event
Touch_Register_Sensor(&SliderParams);
22
The Electric Slide
int Slider_Event(Sensor_t *Slider){ if (Slider->state == TOUCHED) { if (Slider->position <= 8) { /* … */ } else if (Slider->position <= 16) { /* … */ }
/* … */ }}
23
The Wheels On The Bus Go…
Sensor_Params_t WheelParams;/* Initialization code */WheelParams.id = 2;WheelParams.type = WHEEL;WheelParams.channel = 10;WheelParams.count = 4;WheelParams.resolution = 4;WheelParams.callback = Wheel_Event
Touch_Register_Sensor(&WheelParams);
24
Putting It All Together
What type of sensors?How many channels required?Single chip or multi-chip design?Multi-touch support?Sensor rejection?
25
But Wait…
26
Questions?
27
Innovation The Cloud
TV
Remote Control
Medical Aggregation
Box
BP Monitor
Pedometer
Scale
28
Thank You!
29
Where To Get Stuff