Do you ever imagine how a keyboard is connected to a mobil phone application processor ?
Well what the hell is 'applicaion processor' then?
Well a typical mobil phone have several main chips on it.They are typically as follows.
1. Basebasd chip.
2. Power Management IC.
3. Application Processor.
4. Other chips.
So normally mobil phones use the ARM ( advanced risc machine ) processor. Application processor
does integrate a DSP + ARM processor. A Typical example is this.
On that application processor that I shown above is directly does use GPIO for it's keypad. Because most
probablly it does contains a touch screen and very little number of buttons on it. But in mobil phone
which does not have that touch pad feature will have lots of buttons around 20-30. In such a case
it could also be implemented as a I2C device. See the same processor support other devices using
I2C.
Such a I2C keyboard controller is TCA8418R device. Another reason why it does can't implement such a
large keypad as GPIO is that it does contains ESD (electrostatic discharge) issues. Were a application processor
is very sensitive to ESD's.Even in many mobil phone designs you could see that ESD protection is implemented in between SIM module and the baseband chip.
And the bad thing about this chip is , it's a BGA[ball grid array chip]. But the good thing is since it's implemented
on I2C interface, it's easy to hack even using ardino.
Sources:
Neo Open Phone hardware implementation:
http://projects.goldelico.com/p/gta04-m ... mplete.pdf
[In anytime you need to review the design].
- Board index
- Search
-
- It is currently Sun Apr 28, 2024 12:17 am
- All times are UTC+05:30
Today's device introduction TCA8418R Keyboad I2C controller
Embedded Systems Topics
- SemiconductorCat
- Major
- Posts: 455
- Joined: Mon Aug 22, 2011 8:42 pm
- Location: currently in hyperspace
Today's device introduction TCA8418R Keyboad I2C controller
Post by SemiconductorCat » Sun Apr 21, 2013 5:44 am
Jump to
- Programmable Electronics
- ↳ Arduino
- ↳ Raspberry Pi
- ↳ Microcontrollers
- ↳ FPGA
- ↳ Digital Signal Processors
- ↳ Other
- Programming
- ↳ Web programming
- ↳ PHP & MySQL
- ↳ ASP & ASP.Net
- ↳ .Net & Other Programming
- ↳ .NET Programming
- ↳ Visual Basic Programming
- ↳ Java Programming
- ↳ C/C++ Programming
- Engineering
- ↳ Electronics & Electrical Engineering
- ↳ Embedded Systems
- ↳ Computer Science
- ↳ Software Engineering
- ↳ Data Structures & Algorithms
- ↳ Programming Languages & Compiler Theory
- ↳ Operating Systems
- ↳ Cryptography
- ↳ Computer Networks
- ↳ SQL & Database
- ↳ Computer Architecture
- ↳ Graphics & Vision
- ↳ Artificial Intelligence
- ↳ Neural Networks
- ↳ Multimedia
- ↳ Mathematics
- ↳ Other
- ↳ Control Systems & Robotics
- ↳ Mechanical
- ↳ Thermodynamics
- ↳ Fluid Dynamics
- ↳ Aerodynamics
- ↳ Manufacturing
- ↳ Energy
- ↳ Dynamics
- ↳ Statics
- ↳ Automobile
- ↳ Other
- ↳ Other
- Operating Systems
- ↳ Windows
- ↳ Linux
- ↳ Mac OS
- ↳ Android
- ????? ????
- ↳ ???????? ?????
- ↳ ??????? ???? ?????
- ↳ ????? ?????? ???? (Buy Guide)
- ↳ ??????? ???? ??????? (Where to buy)
- ↳ ????????? ???????? (Recommend - Complain - Review)
- General
- ↳ News & Announcements
- ↳ General Discussions
- ↳ Viruses, Trojans, Spyware and Adware
- ↳ Computer & Network Security
- ↳ Web Related
- Members Zone
- ↳ Project Assistance
- ↳ Advertising
- ↳ Jobs & Investment Opportunities
- ↳ Introductions
- ↳ Presents & Donations
- ↳ Entertainment
- ↳ Music & Albums
- ↳ Movies
- ↳ Games