智能手机全键盘控制器及其编程
[09-14 01:02:33] 来源:http://www.88dzw.com 电子制作 阅读:8325次
文章摘要:1 引言 随着智能手机逐步普及,3G服务不断完善,利用手机上网、收发电子邮件已逐步成为一种时尚,而常见的手机键盘仅有简单的功能和数字按键,而输入复杂的汉字、符号时需繁琐切换,输入速度减缓,因此,高端手机迫切需要一种便捷的输入界面。QWERTY键盘的推出解决了这个问题,它以其齐全的按键分布能够让使用者轻易直接输入想要的内容,为此这种手机键盘大受欢迎。QWERTY键盘又称为全功能键盘,其按键分布与PC键盘基本相同,主要包括26个英文字母、数字O~9、方向控制、回车、Ctrl、Alt和符号键等,完全可实现PC键盘的输人和操作。QWERTY凭借其独特的外观、出色的商务功能、另类的 QWERTY键
智能手机全键盘控制器及其编程,标签:电子小制作,http://www.88dzw.com1 引言
随着智能手机逐步普及,3G服务不断完善,利用手机上网、收发电子邮件已逐步成为一种时尚,而常见的手机键盘仅有简单的功能和数字按键,而输入复杂的汉字、符号时需繁琐切换,输入速度减缓,因此,高端手机迫切需要一种便捷的输入界面。QWERTY键盘的推出解决了这个问题,它以其齐全的按键分布能够让使用者轻易直接输入想要的内容,为此这种手机键盘大受欢迎。QWERTY键盘又称为全功能键盘,其按键分布与PC键盘基本相同,主要包括26个英文字母、数字O~9、方向控制、回车、Ctrl、Alt和符号键等,完全可实现PC键盘的输人和操作。QWERTY凭借其独特的外观、出色的商务功能、另类的 QWERTY键盘,以及本身的智能性、娱乐性、前卫性,目前已在手机世界占有重要地位。新一代以Gphone为代表的智能手机均配备了QWERTY键盘。随着手机市场的不断深化,已有很多品牌涉足其中,其中不乏诺基亚、三星、摩托罗拉等国际知名大品牌。
由于键盘扫描需占用大量GPIO,而手机中无论是基带控制器还是应用处理器受到器件引脚数的限制,因此能够提供的GPIO数目十分有限,通常需要外扩 GPIO来实现键盘扫描,这会占用大量软件资源并增加许多功耗。因此,Maxim公司针对这一问题先后推出两代全键盘控制器MAX7349和 MAX7359。
2 MAX7349和MAX7359编程
MAX7349和MAX7359均可管理多达64个按键,采用Maxim专有的低电压、低EMI静态按键扫描技术,并将去抖后的扫描结果编成键值,依据按键的键序将键值消息存放在FIFO中,手机处理器在适当的时候读取FIFO中的键值消息,即使处理器没有及时处理按键事件,按键消息也不会丢失,这对通常采用非实时操作系统的智能手机来说非常重要。与MAX7349相比,MAX7359增加了按键释放检测功能,即每次按下和释放按键都会生成一个键值消息,可更简便实现多键同时输入及组合键功能。另外,该系列器件优化了控制寄存器并增加存储键值消息的FIFO空间,即由MAX7349的存储8次按键增加到存储16次按键。
MAX7359还具有自动休眠和自动唤醒功能,以使器件的功耗最低。一个休眠周期后,自动休眠功能将器件置于低功耗状态(典型值1μA)。发生按键事件时,自动唤醒功能设置MAX7359返回至正常工作模式。
②MAX7359初始化MAX7359初始化过程如下(假设MAX7359设置I2C地址的AD0引脚接地,将MAX7359的I2C读/写地址设为Ox71/0x70);
/*MAX7359初始化开始*/
I2C_Write(0x70,0x01,0x08); //关断,开始初始化
I2C_Write(0x70,0x02,0x01); //10 ms去抖,可调
I2C_Write(0x70,0x03,0x01); //按键消息FIFO非空则触发中断
I2C_Wirte(0x70,0x04,0); //防止错误触发GPIO
I2C_Write(0x70,0x05,0); //关闭自动重复功能
I2C_Write(0x70,0x06,0); //关闭自动关断功能,可根据需要打开自动关断功能,关断前的等待时间可设。
I2C_Write(0x70,0x01,0x88); //启动器件正常功能
/*MAX7359初始化结束*/
3 读取按键消息
3.1 设置FIFO寄存器
收到硬件中断后,先通过一次写操作设置FIFO寄存器地址:0x00。
I2C_Write(0x70,0x00)://如果写一次FIFO地址之后没有对MAX7359其他控制寄存器的读写,则下次读FIFO寄存器,可不用再写FIFO地址。
I2C_Read(0x71,字节变量);
…… //重复读FIFO直至读到代表
FIFO为空的0x3f,可以没一个最大次数,如256次,如果一次中断后读了256次FIFO里还有没读到0x3f,则软重启软重启过程如下:
I2C_Write(0x70,0x0 1,0x08);
I2C_Write(0x70,0x01,0x88);
3.2 FIFO消息的处理
处理读到的FIFO字节变量(假设变量名为:FIFO_BYTE)后,软件处理方法如下:
《智能手机全键盘控制器及其编程》相关文章
- › 智能手机通过蓝牙笔记本电脑没有任何反应
- › 智能手机无法连接笔记本红外端口 系统没有任何反应
- › 诺基亚Nokia系列智能手机的CPU配置信息
- › 诺基亚智能手机内置铃声的提取
- › 诺基亚智能手机短信备份的几种方法介绍
- › 如何修改诺基亚智能手机软件中的图片
- 在百度中搜索相关文章:智能手机全键盘控制器及其编程
- 在谷歌中搜索相关文章:智能手机全键盘控制器及其编程
- 在soso中搜索相关文章:智能手机全键盘控制器及其编程
- 在搜狗中搜索相关文章:智能手机全键盘控制器及其编程
编辑推荐
- · 自制教室照明节电控制器
- · 双色音乐彩灯的制作
- · 三相交流电机缺相保护器
- · 声光控节能灯的制作
- · 同线电话转呼及互通器电路
- · 超低频信号发生器的制作
- · 自制热转印电路板
- · 警笛发声生器电路
- · 一款节能电路
- · 利用太阳能充电的旅行充电器