新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 新兴微型光学手指导航模组的嵌入式系统开发

新兴微型光学手指导航模组的嵌入式系统开发

作者:时间:2011-04-13来源:网络收藏

  2

  2.1 应用器件选型

  不少半导体公司进行了OFN器件及其的研发与生产,如Avago的ABDSA320、ST的VD5376、ATLab的ATA2188MOF与MOA器件及其FO1R/FO3R/SMID/AP33M2I/P、CrucialTec的CT01~27系列模组、Apexone的A2815器件及其AMF813模组、Mitsumi的SFN11LE与SFN11GU等。特别值得一提的是SFN11GU,模组超薄化已经达到了2 mm。很多光电半导体公司采用现有的OFN器件生产不同规格的OFN模组系列产品,如科特通信、世纪芯成、合盈光电等。

  选择OFN器件或模组,需要考虑的主要因素有:形体大小、功率消耗、电源供给和硬件接口。形体方面更关心的是厚度,越薄越适宜便携式消费产品,当然成本也会越高。便携式消费产品的应用,特别注重形体、功耗和电源供应,通常形体小巧、工作与待机电流小和可以更低电压供电的OFN器件或模组更受青睐。工农业过程控制、仪表仪器设备等行业应用,则更多考虑的是OFN器件或模组的稳定高效、连接方便和EMI/EMC/ESD能力。

  这里重点说明一下OFN的复合功能,及实时触控与位移检测是OFN的基本功能,由此衍生OFN的复合功能包括:点击、双击、拖动、滚屏、翻页、卷屏等。通常采用的OFN器件,仅有基本功能。为适合常用的“点击确认”需求,构成OFN模组时,常常在其FPC下附带的“锅仔片”机械按键,已经能够满足大多数应用场合了,非常经济。一些OFN,则直接把常用的点击、双击、拖动等简单的复合功能集成在器件内,把滚屏、翻页、卷屏等复杂的复合功能设计成规范API函数库,供OFN器件或模组用户在具体的应用的上层软件中自由按需添加,CrucialTec的部分CTxx系列OFN模组就是如此。

  2.2 硬件体系设计

  中引入OFN,硬件电路设计上需要做到:

  ① 数字I/O接口的连接,主要考虑3个方面。

  ◆ I/O接口的连接。增加10~50 Ω限流电阻加以实现,特别是电压规格不同的情形。

  ◆ 电磁干扰的抑制。可以通过瓷片电容与限流电阻构成简洁的RC滤波电路加以实现。

  ◆ 驱动能力的增强。可以通过上拉电阻简单加以实现。

  ② 供给电源的去噪滤波可以选用钽电容与瓷片电容,简单加以实现。

  图1给出了一种典型的OFN模组硬件电路设计,其中Mode用于选择I2C或SPI总线形式,INT为对外的实时中断信号,#RST和#ShtDwn为主机的复位和开关控制端口,I2C信号为SCK与SDA,SPI信号为SCK、RxD、TxD和#CS。

OFN的硬件电路设计示意图


图1 OFN的硬件电路设计示意图

  对于抗干扰、驱动和适应能力强大的OFN器件,可以不考虑滤波、限流和上拉电阻,具体情况应视所选用的OFN模组的性能和电路设计需求而定。电路设计时需要注意参考厂家的推荐电路及其器件参数与相关的估算公式,特别是PCB或FPC的印制板设计。

  2.3 软件体系设计

  OFN模组,作为一种的人机输入接口设备,一般是以片外设备的身份,加入到以各类微处理器为核心的应用中的,微处理器软件体系必需实现对OFN模组的驱动才能及时地从中得到来自OFN的各种信息。

  OFN模组的驱动程序主要包括3部分:初始配置、过程变化控制和数据的收发传输。初始配置完成对OFN光敏分辨率、休眠方式、连续中断间隔等项的设置,如果不进行初始配置,OFN则按默认配置工作。过程变化控制用于主机对OFN的开关、复位及其工作参数变化的控制。数据收发传输是OFN的常规行为,只要有触控,OFN就会以一定的时间间隔按中断的形式通知主机系统。可以采用中断或查询的方式实时地从OFN中获取手指的触控输入信息。查询操作往往需要使用周期定时器,在定时中断中查询并获取必要的OFN数据。从这层意义上讲,查询方式也是一类中断方式。主机可以在外部事件中断或定时中断服务中,通过I2C或SPI总线操作,得到必要的OFN检测信息。

  通过底层驱动程序得到OFN检测信息后,对于没有嵌入式操作系统EOS(Embedded Operatig System)的直接软件体系,或诸如RTX、μC/OSII等微型嵌入式实时操作系统ERTOS(Embedded Real Time Operating System)的主机系统,上层应用程序直接用来进行屏幕指示、操作控制或数据的存储、转发等活动,这主要针对工农业过程控制、仪表仪器设备、器件性能检测完善等应用情形。对于使用Nucleus MTK、ThreadX展迅、Symbian、Windows CE/Mobile、ARMLinux/Android、MACOSXiPhone、VxWorks等典型EOS及其应用体系的主机系统,还需要对OFN信息进行数据封装或控制格式转换,以便使原有系统的绝大多数应用程序都能直接使用,如鼠标数据包格式、触摸屏数据包格式、方向键信息格式等。这种信息封装或变换,操作简单的直接在驱动程序中实现,操作复杂的则需要在应用层通过消息、队列等软件通信或同步机制做“二传”或“三传”加以实现。

linux操作系统文章专题:linux操作系统详解(linux不再难懂)


评论


相关推荐

技术专区

关闭