首页 / 专利库 / 人工智能 / 虚拟界面 / 一种光电式多用途输入外设

一种光电式多用途输入外设

阅读:369发布:2024-01-10

专利汇可以提供一种光电式多用途输入外设专利检索,专利查询,专利分析的服务。并且本 发明 属于 人机界面 技术,是兼具 鼠标 、 键盘 、手写笔功能的 电子 装置。本发明中,鼠标、键盘、手写笔的各种操作对应成 手指 动作或手指动作组合, 单片机 接收位于手套指端的光 探头 获取的位移和速度信息及受光情况并转换成鼠标、键盘、手写笔操作所对应的编码,编码既可经PS/2或蓝牙等其它 接口 送出,也可存于本机的FLASH 存储器 中,并可借助本机的LED 液晶 显示器 编辑。本发明实现适用于任何语言。,下面是一种光电式多用途输入外设专利的具体信息内容。

1 一种多功能输入外设,把手指的动作转化为键盘鼠标或手写笔的编码,并 经PS/2、蓝牙等接口送出,其特征在于,操作者或戴着手套(手套阴面朝下) 作手指闪击操作,使位于手套指端阴面的触击监测探头内的光电二极管接受 光脉冲信号;操作者或以右手大拇指(或右手中指)指端的色敏器件扫描手 套阴面由方形色阵901拼成的方格色阵(或专用方格色阵板),产生成对 的红光蓝光强度信号(呈图8(a)或(b)状),同时由触击监测探头提供“触 摸态”信号;操作者或以右手指尖击打左手掌心的实键盘,使被击键内的光 电二极管接受光脉冲信号,这些信号经单片机系统处理后形成相应编码,该 编码可在本地存储并显示;
1.1 右手套大拇指端、中指末指节阴面分别胶固着一个三色色敏器件;左右 手套每个手指末指节阴面(不在指尖,距指尖约10毫米)胶固着一个 触击监测探头;
1.2 脉冲发生计数电路接收来自三色色敏器件的红光(或蓝光)强度信号, 经光电转换、微分、放大、检波后产生符合电平标准的一个正脉冲串和 一个负脉冲串;系统通过定时中断服务程序读指定的I/O地址,使每个 脉冲串的计数器计数值被周期地存并经数据总线输出,同时被复位;
1.3 触击监测探头提供虚拟键盘(或鼠标)的击键信号、手写笔(或鼠标) 的触摸态信号:击键(或触压物面)操作,使滑窗透明段502-4(或连 筋507-4)与外壳透明圆圈段501-2正对(或错开),从而改变触击监 测探头内光电二极管的光照状态;对击键操作,光电二极管受光状态变 化则有击键;对移动操作,右手套大拇指(或中指)指端的光电二极管 处于受光态,则鼠标或手写笔处于“触摸态”,反之为“非触摸态”;
1.4 重键提供实键盘的击键信号,其过程同于触击监测探头提供虚拟键盘 (或鼠标)的击键信号;无外力时,坠子516(其材质比重很大)的重力 使滑窗511(其材质比重很小)沿方向H在隧道510-1内松配合地滑动、 活罩512沿方向U转动,透明段510-3与透明段511-2错开,含于滑窗 511内的光电二极管(位于探头518的上端头)处于不受光状态;
1.5 液晶显示器702位于左手背面,按微控制器706的指令为不同模式提供 不同的显示界面;本地模式下输入的文本字符存入FLASH存储器709;
1.6 中断服务程序周期地读一个色敏器件的4个锁存器对应的4个I/O地 址,得到红光(或蓝光)光强信号对应的正脉冲计数和负脉冲计数;若 红光(蓝光)光强信号的正脉冲计数大于负脉冲计数,则Y(X)方向位 移为正,反之为负;红光(蓝光)光强信号的正、负脉冲计数之和为Y (X)方向位移的绝对值;
1.7 中断服务程序每执行一次就把右手大拇指(或右手中指)的位移存于变 量(MouseX,MouseY)中,把”触摸态”存变量touchState中;
1.8 系统程序与中断服务程序配合形成一个实时系统;系统有8种工作模 式,一个模式切换态;
1.8.1 按语言及学科划分各种字符区,每种字符区对应4个操作区;每个 操作区是一个二维表格,格内放字符扫描码;由Q1Q0表示操作区号; 操作区行号R2R1R0(或列号C2C1C0)对应变量swBin中左手(右手) 无名指、中指、食指位;英语和汉语合用一个语言类字符区;
1.8.2 同一时间段,一个或多个手指完成一次“闪击操作”就是一个按键 操作;组合键由起始键、几个同时按下键、停止键构成;
1.8.3 启动时,系统主模块初始化;然后根据当前模式转入对应模式的子 程序运行;在当前模式退出后,进入模式切换态;模式切换态子程 序提供了8种模式供用户选择,用户选择其中一种模式作当前模式 后,进入该模式运行;
1.8.4 字符区选择模式:系统有按语言及学科划分的各种字符区,用户选 取其中一种字符区作当前字符区;
1.8.5 升级工作模式子程序在密码验证通过后,把升级指令提供的内容写 入FLASH存储器区;最后转入模式切换态;
1.8.6 通用模式子程序完成如下功能:a)判断出有新按键且行号R2R1R0和 列号C2C1C0均不为零时,认为这是键盘按键操作;若Q1Q0为3,且当 前字区为英汉字符区,则为键编码加上汉字输入标志后输出;对非 “区号为3且当前字符区为英汉字符区”的按键,在Q1Q0号操作区 按行号列号查当前字符区编码表得到按键编码;b)判断出有新按键 且行号R2R1R0和列号C2C1C0一个为零、另一个的三个二进制位中只有 一个不为零时,认为这是鼠标按键操作;一个不为零的二进制位对 应的鼠标键码即为所求的按键编码;c)行号R2R1R0和列号C2C1C0均为 零且是触头处于接触状态时,认为这是鼠标移动操作,输出当前的 鼠标位移系数与(MouseX,MouseY)之积作最终鼠标位移;
1.8.7 手写笔模式:根据最新的位移和”触摸态”信号产生手写笔格式的 编码;
1.8.8 手机键盘模式:以右手对应的5位二进制数作被除数,以5作除数 产生商和余数,以商作行号,余数作列号查图15得按键编码;
1.8.9 手机鼠标模式:a)判断出是按键操作,则把按键对应的鼠标编码输 出;b)判断出是鼠标移动操作,则把(MouseX,MouseY)转化为鼠标 位移编码输出;
1.8.10 本地模式:a)切换“播音态”与“非播音态”,把FLASH存储 器中的内容送语音芯片播放;b)编辑:根据键盘的按键操作产生的 编辑键或可显示字符,移动光标修改FLASH中的内容;若当前字 符区为英汉字符区,3操作区的可显示字符则经汉字输入法软件转化 为汉字后存储并显示;对非“区号为3且当前字符区为英汉字符区” 的按键,则直接存储并显示;c)对鼠标移动操作,按鼠标位移对鼠 标作相应的移动。
1.8.11 实键盘模式:获取9个键击键信号,查图12(c.1)-(c.4)得 按键编码;
2.一种如权项(1)所述的一种多功能输入外设,其特征在于弹性手套上的纳 米金属纤维把指端传感器信号传输到腕部,右手套手指阴面涂以纳米陶瓷。
3.一种如权项(2)所述的一种多功能输入外设,其特征在于当前工作模式 currentMode和当前字符区currentCharName两个变量均在FLASH存储器。
4.一种如权项(3)所述的一种多功能输入外设,其特征在于语言类字符区的 大小写字母分配在两个不同的操作区;
5.一种如权项(4)所述的一种多功能输入外设,其特征在于本地模式中3操 作区为汉字区;
6.一种如权项(5)所述的一种多功能输入外设,其特征在于组合键起始键定 义为左右手的大拇指、中指、小指同时作“往返操作”,组合键停止键定义 为空格键;

说明书全文

发明是计算机的一种输入外设,属于人机界面技术。

目前的计算机输入方式存在如下缺点:易引起手指疲劳性损伤;键盘鼠标体积大,携带不便,不 适应未来小型化要求。

本发明是一个单片机系统,由光探头获取颜色信息及受光情况,经软硬件转换成编码,再经接口送 出或存于FLASH存储器中并可在本机显示。

本发明实现了非弹性按键输入,既兼具鼠标、键盘、手写笔功能,又彻底避免手指疲劳性损伤; 该输入外设适用于任何语言,全球通用;卫生、体积小,寿命长,成本低。

本发明的工作原理:操作者戴着手套操作,系统荻取手套指端(或左手掌实键盘键内)光电二极管 受光情况及位移信号,并针对不同的工作模式作相应处理,形成鼠标或键盘或手写笔的编码:

1.对按键操作,即一个或多个手指同时作“击键”的操作,a.操作时,在同一时间段,完成一次 “击键”操作的手指对应二进制位值1,未运动的手指对应二进制位值0,这样操作者的左右手 10个手指分别对应10位二进制数的一个比特(对手机模式,则为6个手指各对应6位二进制数的 一个比特;对实键盘,则为9个键各对应9比特二进制数的一个比特);b.鼠标、键盘的一个键 对应于一个二进制数(10位或6位或9位二进制数),该二进制数对应一个标准键编码;c.把a中 产生的二进制数按b中的对应关系转换成标准键编码;

2.对移动操作,右手食指、中指、无名指、小指并成一个色阵面,右手大拇指在该色阵面上滑动(或 右手中指在专用色阵面板上滑动),位移检测电路把右手大拇指(右手中指)指端阴面的色敏 器件在X、Y方向上扫过的格子数转换成位移,该位移乘以位移系数,然后转换成鼠标格式或手写 笔格式的编码;

最后经PS/2或其它接口送出或存于系统的FLASH存储器中。

图1是脉冲发生计数电路;

图2是位移检测电路;

图3是灯控制电路

图4是单指触击监测电路;

图5是触击监测探头的结构图;

图6是10指触击监测电路;

图7是系统电路;

图8是右手大拇指探头外形及布置图;

图9是系统结构图;

图10信号强度---时间关系图,该信号是色敏器件的光敏二极管在扫描时获得的光强信号或该光强信号经 光电转换后产生的电信号

图11包含方形色阵每格颜色定义图,及方形色阵块、手、二维直座标系、实键盘键阵的方位关系图;

图12(a)、图12(b)、图13、图14分别是英汉字符区0、1、2、3操作区的字符编码二维排列表;

图15是手机键盘的英语字符排列表;

图16-图28是软件流程图

                               一.硬件组成及其功能

本发明硬件组成:手套、电路。

1手套:

1.1该手套是弹性尼龙手套;右手套手指阴面涂纳米陶瓷;左右手套每个手指末指节阴面(不在指 尖,距指尖约10毫米)胶固着一个触击监测探头;

1.2触击监测探头:提供虚拟键盘(或鼠标)的击键信号、手写笔(或鼠标)的触摸态信号;

1.2.1触击监测探头的外壳501是中空圆柱,503为外壳501沿轴心的剖截图,外壳501分为4个部 位:透明圆圈段501-2、黑色圆圈段501-1和501-2、黑色挡环501-4;

1.2.2触击监测探头的滑窗有两种形式:502、507;滑窗502与滑窗507在功能上等价、相互兼容; 滑窗502分为4个部位:透明圆圈段502-4、黑色圆圈段502-2和502-5、黑色挡环502-3、黑 色半圆球壳502-1;滑窗507分为4个部位:连筋507-4、黑色圆圈段507-2和507-5、黑色挡 环507-3、黑色半圆球壳507-1;滑窗内壁为层镜面;

1.2.3光电二极管506固定在黑色基盘505中心,滑窗502与外壳501松配合,滑窗502沿轴向有约 0.2毫米的自由滑动空间;挡环501-4与挡环507-3接触(应为柔性接触,以免滑窗反弹产 生虚假信号)时,黑色圆圈段502-5封掩透明圆圈段501-2,外部光线不照射光电二极管 506;滑窗502上抵基盘505时,透明圆圈段502-4正对透明圆圈段501-2(对滑窗507,则是 连筋507-4正对透明圆圈段501-2),外部光线照射光电二极管506;

1.2.4滑窗502的材质比重很大,滑窗502外壁有多根浅细的“Z”形凹痕,以免滑窗502内空气正 负压对滑窗502滑动造成阻尼;

1.2.5击键操作:手掌悬空静止、阴面朝下,触击监测探头内滑窗透明段502-4(或连筋507-4) 与外壳透明圆圈段501-2错开,探头内的光电二极管不受环境光照射;此时,手指向下闪 击(或探头击打物面),滑窗相对于外壳501向上移动,滑窗透明段502-4(或连筋507-4) 与外壳透明圆圈段501-2正对,探头内的光电二极管受环境光照射;然后滑窗502借重力下 触挡环501-4,光电二极管不受环境光照射;;

1.2.6击键(或触压物面)操作,使滑窗透明段502-4(或连筋507-4)与外壳透明圆圈段501-2 正对(或错开),从而改变触击监测探头内光电二极管的光照状态;对击键操作,光电二 极管受光状态变化则有击键;对移动操作,右手套大拇指(或中指)指端的光电二极管处 于受光态,则鼠标或手写笔处于“触摸态”,反之为“非触摸态”;

1.3右手套大拇指端、中指末指节阴面分别胶固着一个三色色敏器件,光线经管形窗口进入色敏器 件,管形窗口内管壁为黑色吸光材料,管内充满玻璃质材料;窗口轴线与手套指表面垂直;手 套上的每个探头有一簇纳米金属纤维导线连至掌根总线。

以大拇指807上的色敏器件为例,窗口法线803与手套大拇指表面近似于垂直;色敏器件805 接收窗口法线803方向来的光线;传感器805和管形窗口嵌于堆形凸块809内;

1.4手套阴面(包括手指阴面)图案为方形色阵块按围棋格方式拼组而成的方格色阵;每个方形色阵 块由9个大小相同的正方形方块(该正方形方块边长的推荐值范围:0.5~1毫米)按3行3列方阵 纵横排成,图11(a)中的表格1101定义了该方形色阵块每格的颜色(用24位RGB颜色模式表示), 按图11(a)、图11(b)定义二维直角座标系的X轴、Y轴,即当右(左)手大拇指翘起而其余4 指并拢时,从右(左)手指阴面看,右(左)手中指指向X轴负向且与X轴平行,右(左)手大 拇指指向Y轴正向;该二维直角座标系是位移的参考座标系;

1.5手套阴面大拇指根部胶固一个照明灯,用于夜间照亮手套阴面;

1.6左手套掌面上的实键盘由9个重力键按3×3方阵(或3×4方阵)分布而成,每个重力键由活罩512、 支架510、滑窗511、坠子516、光电探头518、线513、线514构成;重力键提供实键盘的击键信 号;

1.6.1 509是支架510的一种视图;

1.6.2滑窗511由不透明段511-1、不透明段511-3、透明段511-2组成;隧道510-1由不透明段 510-2、不透明段510-4、透明段510-3组成;除此之外的部位或零件均是不透明材质;

1.6.3活罩512(其材质为透明玻璃)罩住支架510并经孔509-1、509-4、512-1、512-2铰接,活罩 512可相对支架510绕铰接轴自由转动(即二者保持一定间隙,自由转动角度约为6度); 铰接孔512-1、512-2的公共轴心在活罩512的重心(该重心在该轴心的左下方,以使凸台 面朝上或竖立时,凸台都翘离轴517)与凸台512-5之间;

1.6.4坠子516、滑窗511、线513、线514串接,线513、线514分别绕过圆轴515、轴517,线513 末端胶固于孔512-3内;无外力时,坠子516(其材质比重很大)的重力使滑窗511(其材质比 重很小)沿方向H在隧道510-1内松配合地滑动、活罩512沿方向U转动,透明段510-3与透 明段511-2错开,含于滑窗511内的光电二极管519(位于探头518的上端头)处于不受光状 态;凸台512-5受外力时,滑窗511被线513拉而沿逆方向H滑动,直至透明段510-3正对透 明段511-2,包于滑窗511内的光电二极管519处于受光状态;重力键内的光电二极管519受 光状态变化则实键盘有击键;

2电路:

2.1脉冲发生计数电路:接收来自三色色敏器件的红光(或蓝光)强度信号,经光电转换、微分、 放大、检波后产生符合电平标准的一个正脉冲串和一个负脉冲串;系统通过定时中断服务程序 读指定的I/O地址,使每个脉冲串的计数器计数值被周期地存并经数据总线输出,同时被复 位:

2.1.1色敏器件扫描手套阴面方格色阵,色敏器件中的光敏二极管将得到随时间作阶跃变化的光 强,光强与时间的关系呈图10(a)或图10(b)状;光敏二极管D1和电阻R1把阶跃变化的光 强信号转化为随时间作阶跃变化的电压(电压与时间的关系呈图8(a)或图8(b)状), 并经电阻R1输出;

2.1.2点B的电压是1.4v的恒定电压;

2.1.3由电容C1、电阻R3、运算放大器AMP1组成的微分放大电路把电阻R1上阶跃变化的电压转化 为正、负脉冲信号,经点A输出;由于运算放大器AMP1的负端接点B,正、负脉冲信号是以 1.4v为基准的;

2.1.4点A的正脉冲信号经D5、R5检波输出到运算放大器AMP3,由于电阻R5一端接点B,运算放大 器AMP3只起差动放大的作用,点A的正脉冲信号被转化为符合电平标准的脉冲信号在点C输 出;同理,A的负脉冲信号被转化为符合电平标准的脉冲信号在点F输出;

2.1.5计数器101、计数器102分别对点F、点C的脉冲计数;锁存脉冲109把计数器101的计数值锁 存到锁存器103、把计数器102的计数值锁存到锁存器104,接着锁存脉冲109经延时电路110 (延时电路110由2个缓冲器串联而成)变为复位信号,把计数器101、计数器102的计数 值复位为0,使其重新开始计数;

2.1.6锁存器103、锁存器104输出数据线经三态105、三态门106与数据总线相连;选通信号108 选通三态门105、三态门106,把锁存器103的数据输至数据总线,选通信号107把锁存器104 的数据输至数据总线;

2.2位移检测电路:对单个手套指端的所有色敏器件的信号进行处理,并可接受译码电路传来的锁 存脉冲、选通信号,把特定时间段的正、负脉冲计数(正、负脉冲计数之和等于扫描过的色阵 方格数)送系统数据总线。

以色敏器件201为例,色敏器件201中的二个光敏二极管经三根导线输出到脉冲发生计数电路 204、205,脉冲发生计数电路204(或脉冲发生计数电路205)中的四个锁存器分别对应着四 个不同的I/O地址,系统地址总线AB和控制总线CB用这四个I/O地址、通过译码电路把脉冲发 生计数电路204(或脉冲发生计数电路205)中的四个锁存器中的值选通到数据总线DB;

2.3照明灯控制电路:由于非门302输入端接D触发器301的Q脚、输出端接D触发器301的D脚,所以 触发器301的CK脚每接收一个脉冲信号,触发器301的Q脚电平就翻转一次;触发器301的Q脚为 高电平时,场效应管304导通,灯303亮,反之场效应管304截止,灯303熄。触发器301的CK脚 每接收一个脉冲信号,灯303就在“亮状态”、“熄状态”间翻转一次。

2.4单指触击监测电路:光电二极管D41接受光脉冲时,电阻R41两端产生电脉冲,该电脉冲经放大 器AMP41、斯密特触发器401放大整形成标准电平脉冲从点E输出;光电二极管D41处于受光态 时,点E的电平为高电平,反之为低电平;光电二极管D41从受光态变为非受光态时,点E产生 一个正脉冲信号,该正脉冲信号使触发器402(为上升沿敏感)的Q端电平变为高电平;信号SIG2 选通三态门403;信号SIG1将触发器402的Q端复位为低电平;信号SIG3选通三态门404; touchFlag对应数据总线的一根线(如DB0);

2.5 10指触击监测电路:AB总线为sensorAddr+8时,逻辑电路611输出为:SIG1=0,SIG2=1,SIG3=0; AB总线为sensorAddr+9时,逻辑电路611输出为:SIG1=0,SIG2=0,SIG3=1;AB总线为 sensorAddr+10时,逻辑电路611输出为:SIG1=1,SIG2=0,SIG3=0;AB总线在(sensorAddr+8) -(sensorAddr+10)之外时,SIG1=0,SIG2=0,SIG3=0;为使逻辑电路611简单,sensorAddr+8 (设为AB15-0)最低的2比特为0,AB15-2中值为0的位经非门后输入与逻辑门,AB15-2中值为1的位直 接输入该与逻辑门;同理,该与逻辑门的输出与AB1-0作非与组合运算即可实现逻辑电路611的功 能;10个单指触击监测电路601-610分别对应数据总线DB的二进制位DB0-DB9;信号线SIG1=1 时,监测电路601-610内的触发器复位;信号线SIG2=1时,监测电路601-610内的触发器(如502) Q端信号电平(信号电平=1,对应的指端有触击发生,反之,对应的指端无触击发生)送数据 总线DB;信号线SIG3=1时,监测电路601-610内的运算放大器(如501)输出端信号电平(信号 电平=1,对应的指端触压物面,反之,对应的指端未触压物面)送数据总线DB;

2.6掌心键盘击键监测电路:该电路是在IO地址不冲突的前提下对10指触击监测电路的直接翻版; 设该电路占用的IO地址是(sensorAddr+12)~(sensorAddr+14);

2.7系统电路:

2.7.1由电阻R2、二极管D2、硅二极管D3把点B的电压稳定在1.4v;

2.7.2微控制器MCU706通过数总线DB、地址总线AB、控制总线CB对随机存储器RAM707、只读存储 器ROM708、闪速存储器FLASH709、液晶显示器LED710、语音芯片711、通信芯片712、译码 电路701、10指触击监测电路704、位移检测电路702、位移检测电路703、灯控制电路705 实施控制或与之交换信息;

2.7.3锁存信号716、位移检测电路(即702和703)的选通信号(即714和715)、脉冲信号713均 由译码电路701产生;

2.7.4锁存信号716是译码器501的一根输出信号线,对应着一个特定的I/O地址,微控制器MCU706 定时读(或写)该I/O地址从而发出锁存信号716将位移检测电路(即702和703)中计数器 (如101)的计数值锁存到这些电路内部自身的锁存器(如103)中;及触摸监测电路512内的 信号锁存到这些电路内部自身的锁存器中;

2.7.5选通信号714、715分别包含着4根选通信号线,选通信号713是一根选通信号线;一根选通 信号线对应着一个特定的I/O地址,系统在需要的时候读该I/O地址时,该选通信号线即把 内部锁存器中的二进制数送系统数据总线DB;

2.7.6系统通过读IO地址(sensorAddr+8)~(sensorAddr+10),把10指触击监测电路704内的 电平信号送入数据总线DB或将其复位;通过读IO地址(sensorAddr+12)~ (sensorAddr+14),把掌心键盘击键监测电路716内的电平信号送入数据总线DB或将其复 位;

2.7.7脉冲信号713对应着一个特定的I/O地址,微控制器MCU514在系统需要的时候读(或写)该 I/O地址时,灯控制电路705获得一个脉冲信号,灯状态翻转一次。

2.7.8系统的存储器由随机存储器RAM707、只读存储器ROM708、闪速存储器FLASH709构成;

2.7.9系统通过内部集成有字符点阵和驱动电路的液晶显示器LED710把闪速存储器FLASH709中 的内容显示出来或提供图形交互界面;

2.7.10系统通过带文声转换功能的语音芯片711发出告警用语或闪速存储器FLASH709中的字词 所对应的声音;

2.7.11系统通过通信芯片712(蓝牙芯片或串口转PS/2芯片)把按键编码或位移编码发送出去, 在升级模式时则接收升级指令。

2.8系统外形结构:

2.8.1触击监测探头904、905、906、908、808分别布置在右手套912阴面小指、无名指、中指、 食指、大拇指的指端,左手套901阴面也对称地布置着5个同样的传感器;

2.8.2右手套大拇指尖、右手套中指尖阴面分别布置着一个色敏传感器809、907(外形为堆形凸 块);

2.8.3灯303布置在右手套阴面大拇指根;左手套阴面大拇指根对称地布置同样的灯一个;

2.8.4信号线簇911把右手套上的传感器获得的信号送位于腕部的电路系统910,电路系统910同 时接收左手套上的传感器获得的信号;电路系统910处理传感器信号,根据当前工作模式 把处理结果经无线接口送出或存于电路系统910内的FLASH储器中或显示于液晶显示器710 中;若处理结果是灯303的切换信号,电路系统910经信号线簇911切换灯(如303)状态。

                       二.软件

软件包括以下的功能:

●分析处理10指触击监测电路和位移检测电路送来的信号,得到有效的编码;对非法操作, 通过语音芯片711发声告警;

●将有效的编码送出或显示在液晶显示器710或存于闪速存储器FLASH709;

●针对系统不同的工作模式,通过液晶显示器710提供不同的人机交互界面;

●把闪速存储器FLASH709中的内容通过带文声转换功能的语音芯片711播音;

●通过蓝牙芯片712接收主机发来的升级指令,修改闪速存储器FLASH709中的内容; 在说明软件流程前,先对软件中涉及的概念及其内容作说明。

1位移:由于色敏器件扫描方格色阵时前端处理器的光敏二极管得到的光强信号呈图8(a)或图 8(b)状,且位移检测电路计数器的计数周期很短(周期很短意味着:周期内指端作直线运动), 位移检测电路送来的正脉冲数Kp与负脉冲数Kn存在如下关系:

A.色敏器件的运动速度沿X轴(或Y轴)的分速度为正时,

                    Kp≈2*Kn                    (c)

B.色敏器件的运动速度沿X轴(或Y轴)的分速度为负时

                    2*Kp≈Kn                    (d)

软件根据Kp、Kn关系得到X轴方向位移ΔX(或Y轴方向位移ΔY)的方向:

a.Kp、Kn呈式(c)关系时,ΔX>0(或ΔY>0)

b.Kp、Kn式(d)关系时,ΔX<0(或ΔY<0)

ΔX(或ΔY)的绝对值|ΔX|=Kp+Kn(或ΔY的绝对值|ΔY|=Kp+Kn)。由上可知,这 里所说的位移实际是色敏器件扫描过的方格色阵格子数。

2传感器专用I/O地址:设传感器专用I/O起始地址为sensorAddr,则

a)1个位移检测电路的选通信号占用4个I/O地址,2个位移检测电路的选通信号共占用8 个I/O地址,其范围:sensorAddr∽sensorAddr+7;

b)触击监测电路中,闪击选通信号占用1个I/O地址:sensorAddr+8;触摸选通信号占 用1个I/O地址:sensorAddr+9;复位信号占用1个I/O地址:sensorAddr+10;

c)照明灯翻转信号占用1个I/O地址:sensorAddr+11; 软件读I/O地址sensorAddr∽sensorAddr+7即获得4个(Kp、Kn)数据对;读I/O地址 sensorAddr+11即使照明灯状态翻转一次;读I/O地址sensorAddr+8即获知触击探头是否作“闪 击”操作;读I/O地址sensorAddr+9即获知触击探头是否处于“触摸态”:

I.数据总线二进制位为1,对应的触击探头处于“触摸态”;

II.数据总线二进制位为0,对应的触击探头处于“非触摸态”;

3系统有7种工作模式:字符区选择模式、通用模式、手写笔模式、手机鼠标模式、手机键盘模 式、本地模式、升级模式;每种模式都指定一个二进制数(该二进制数对应于一次按键操作) 用于退出该模式并进入模式选择态;

4字符区及区内字符分布方式:字符区分为两类:语言字符类、专业类;

4.1语言字符类字符区:针对不同语言生成的字符区,其中包括该语言现行键盘中的全 部字符及功能键;英语和汉语同属一个字符区,这里以英语和汉语字符区为例说 明字符分布方式(这里的按键编码是指现用键盘扫描码或鼠标键码或新增键盘扫 描码):

a)每个字符区分为4个操作区:0操作区、1操作区、2操作区、3操作区;操作区 区号由左手大拇指、右手大拇指组成的2位二进制码(令该2位二进制码为 Q1Q0,则右手大拇指为Q1、左手大拇指Q0)表示;每个操作区内的字符排序合 理继承现行键盘的排列;

b)每个操作区是一个7行7列的二维表,该表的行号由左手的无名指、中指、食指 组成的3位二进制码(令该二进制码为R2R1R0,则无名指为R2、中指为R1、食指 为R0)表示,该表的列号由右手的无名指、中指、食指组成的3位二进制码(令 该二进制码为C2C1C0,则无名指为C2、中指为C1、食指为C0)表示;

c)0操作区字符按图12(a)分布,共有49个字符,包括英语小写字母、数字字符0 ∽9、键“Esc”、键“Tab”、键“Shift”、键“Ctrl”、键“Alt”、键“Enter”、 键“Backspace”、空格键、键“←”、键“↑”、键“→”、键“↓”、键“Delete”;

d)1操作区字符按图12(b)分布,共有49个字符,包括英语大写字母、键“Insert”、 键“Home”、键“End”、键“PageUp”、键“PageDown”、键“F1∽F12”、键 “PrintScrn”、键“SysRq”、键“ScrollLock”、键“Pause”、键“Break”、 组合键“Ctrl”+“Alt”+“Delete”;

e)2操作区字符按图13分布,共有30个字符,包括键“∽”、键“`”、键“!”、键 “@”、键“#”、键“$”、键“%”、键“^”、键“&”、键“*”、键“(”、键“)”、 键“[”、键“]”、键“{”、键“)”、键“\”、键“|”、键“;”、键“:”、键 “,”、键“.”、键“<”、键“>”、键“?”、键“/”、键“””、键“’”;

f)3操作区字符按图14分布,该区为汉字专用区,共有34个字符,包括英语小写字 母及汉字专用标点符号键“;”、键“,”、键“?”、键“!”、键“。”、  键““”、键“”“、键“、”;

对本地模式,3操作区的击键均按神码汉字输入法转换成相应的汉字编码,然后 存FLASH存储器709并送液晶显示器710。对通用模式,a)3操作区的击键编码均加 上汉字输入标志,然后送出;b)0、1、2操作区的击键编码均无汉字输入标志。

这样就完全避免了英文输入和汉字输入的切换。

1.2专业类字符区:

a)针对基础学科(如数学、物理等)、工程学科(如建筑、机械等)而生成的 字符区;

b)每个字符区分为4个操作区:0操作区、1操作区、2操作区、3操作区;操作 区区号由左手大拇指、右手大拇指组成的2位二进制码(令该2位二进制码为 Q1Q0,则右手大拇指为Q1、左手大拇指为Q0,Q1Q0对应于变量Area)表示;

c)按该学科的分学科或字符使用频度把字符分配在4个操作区;按字符使用频 度由高到低排序将操作区:0操作区、1操作区、2操作区、3操作区。

5鼠标按键:左右手均可作鼠标按键操作;鼠标按键操作中由食指、中指、无名指分别对应鼠标左、中、 右键;同一时间段,当发现左右手中一只手的食指或中指或无名指有闪击操作,而另一只手无任何手 指作闪击操作,则认为作闪击操作的手指完成了鼠标击键操作。

6鼠标移动操作:右手食指、中指、无名指、小指并拢形成一个操作面(亦可用方格色阵平板),右手大 拇指上的触击监测探头808在该操作面上滑动,鼠标位移的正负向按图11(a)确定。

7虚拟按键操作:鉴于小指与其它手指组合操作不方便,这里的按键操作均忽略左右手的小指,这样只 有8个手指参与按键操作。通用模式中,只有左右手均有手指作按键操作时,才认为是在执行键盘按 键操作,否则不认为是键盘按键操作。手机键盘模式中,只认可右手手指和左手大拇指的按键操作, 左手大拇指作击键操作,则视为汉字输入操作。

8实键盘按键操作(以3×3方阵实键盘为例作说明,3×4方阵实键盘与此雷同):单行按键(即同一时间仅 在同一行键击键)有21个键,二行二指按键(即同一时间二行键上各有且只有一个击键)有27个键, 二行三指按键(即同一时间二行键上各至少有一个击键,且二行键上共有三个击键)有27个键,3行3 指(即同一时间三行键上各有且只有一个击键)按键有27个键;以指尖击打键凸台412-5的方式执行 键盘按键操作;单行按键、二行二指按键用于常用键,图12(c.1)、(c.2)、(c.3)、(c.4)为 键排布的一个示例,图11(c)为键盘键a2、a1、a0、b2、b1、b0、c2、c1、c0在掌上分布图,每个键对 应一个二进制位(值1对应“键按下”,值0对应“键弹起”);其它键按分区并继承现行键盘布局 方式进行,细节参见虚拟按键;

9组合键:对几个同时按下键的操作,转化为几个串行按键操作来完成,该串行按按键操作先后分为起 始键、几个同时按下键、停止键;这里定义起始键为左右手的大拇指、中指、小指同时作“往返操作”, 停止键为空格键;对几个同时按下键的击键顺序无限制。

10手写笔操作:在书写每个字(或每个单词,如英语单词)前,左手大拇指叩压在左手掌面,其上的触 击监测探头处于接触态,右手大拇指开始在右手掌面书写;书写完每个字(或每个单词)后,左手大 拇指提离左手掌面,其上的触击监测探头处于非接触态。设进入手写笔模式的时刻为t1,进入手写笔 模式后书写完第一个字(或单词)后左手大拇指提离左手掌面的时刻为t2,第二个字(或单词)的为 t3,第三个字(或单词)的为t4,则时间段t1-t2为第一个字(或单词)的书写时段,时间段t2-t3为 第二个字(或单词)的书写时段,时间段t3-t4为第三个字(或单词)的书写时段,依此类推即可确 定其后字[或单词]的书写时段。手写笔的编码中,一个二进制位作书写时段位,书写时段的分界时刻 (如t1、t2、t3)对应的书写时段位的值为1,其它时刻对应的书写时段位的值为0(手写笔的编码 包括书写时段位、接触状态位、MouseX、MouseY)。设前后两次采样时刻tn、tn+1,tn时刻左手大拇指 上的触击监测探头处于接触态,tn+1时刻左手大拇指上的触击监测探头处于非接触态,tn+1为书写时段 的分界时刻。

11系统变量及结构:下面用编程语言C语言对系统变量及结构作描述;

11.1SensorData结构:{

               iht posRedPulseCount;//色敏器件中红光在光敏二极管正//脉冲计数值

               Int negRedPulseCount;//色敏器件中红光在光敏二极管负//脉冲计数值

               int posBluePulseCount;//色敏器件中兰光在光敏二极管//正脉冲计数值

               Int negBluePulseCount;//色敏器件中兰光在光敏二极管//负脉冲计数值

               }pulseCntThu,pulseCntMid;

11.2struct dualHandsFingers//声明一个手指对应一个16位二进数的一//位,即符号“?”对应 的位

{ unsigned RLitSt:1;//00000000 0000000? unsigned RRinSt:1;//00000000 000000?0 unsigned RMidSt:1;//00000000 00000?00 unsigned RIndSt:1;//00000000 0000?000 unsigned RThuSt:1;//00000000 000?0000 unsigned LLitSt:1;//00000000 00?00000 unsigned LRinSt:1;//00000000 0?000000 unsigned LMidSt:1;//00000000 ?0000000 unsigned LIndSt:1;//0000000? 00000000 unsigned LThuSt:1;//000000?0 00000000 }lastClickFS,currentClickFS,currentTouchFS; //FS:Finger’s State; //la stClickFS:10个手指的次新“闪击操作”记录;//currentClickFS:10个手指的 最新“闪击操作”记录;//currentTouchFS:10个手指当前“触摸状态”记录;

1.3 Vect结构:{int RThuDeltaX;//右手大拇指X位移

                   iht RThuDeltaY;//右手大拇指Y位移

                   int RMidDeltaX;//右手中指X位移

                   int RMidDeltaY;//右手中指Y位移

                   }V;

1.4 charGroupIndex结构:{

     int index;//序号

     char charGroupName[32];//字符区名,如英汉字符区,日语字符区等

     int addrInit;//字符区起始地址

     int length;//字符区长度

     int unit;//字符区长度的单位(字节或字)

     int existDotArray;//液晶显示器中是否有该字符区的点阵

     int existVoice;//1:语音芯片中有该字符区的声波;0:语音芯片//中无该字符区的声波;

     int current;//1:当前字符区;0:不是当前字符区

     }charGroupInfos[];

1.5缺省字符区名:defCharName;当前字区名:curentCharName;

1.6整型变量currentMode表示当前模式所对的整数:字符区选择模式对应0,通用模式对应1,手写 笔模式对应2,手机键盘模式对应3,手机鼠标模式对应4,本地模式对应5,播音模式对应6,升 级模式对应7;

1.7布尔变量mpMoved:如mpMoved=true,则鼠标或手写笔有移动操作;如mpMoved=false,则鼠标或 手写笔无移动操作;

1.8布尔变量keyClicked:如keyClicked=true,则鼠标或键盘有按键操作;如keyClicked=true, 则鼠标或键盘无按键操作;

1.9整型变量detectCnt、clickCatchStep:每采集一次探头数据,detectCnt递增1,直至detectCnt= clickCatchStep时置detectCnt=0;只在detectCnt=0时采集闪击信号,改变clickCatchStep,采 集闪击信号的时间步长也随之改变;

12对应于10个手指的10位二进制数(如currentClickFS,currentClickFS实为一个长度为二字节的变 量,只用其低10位二进制位),该二进制位对应某手指称某手指位;鼠标或手写笔位移:MouseX对应 X轴位移,MouseY对应Y轴位移;

13系统存储区:出于安全与方便考虑,存储区作如下安排。

13.1只读存储器ROM:该区存放中断服务程序defCharName系统程序、字符区字符编码、 charGroupInfos、升级密码;

13.2 Flash存储器:该区存放currentMode、currentCharName、用户自定义的字符区字符编码、用 户在本地模式下输入的文本字符。由于currentMode、currentCharName在Flash存储器中,使下 次开机后的工作模式和当前字符区与上次关机时相同。

14位移系数与速度:设位移系数为m,速度为v(单位为1格/秒),则缺省时:

系统在运行中不断统计鼠标的移动速度,将移动速度低速、中速、高速三个范围(低速、中速、高速分别 对应位移系数1、16、64),其中操作者大部分时间在中速范围内操作。 软件流程:

该软件由定时中断服务程序定时(如设为每20毫秒产生一次,该定时中断周期即规定了脉冲发生计 数电路的2个计数器的计数周期)产生位移10位二进制数(currentClickFS,currentTouchFS)和 鼠标位移(即平面座标:(MouseX,MouseY));系统程序检查currentClickFS、currentTouchFS、 (MouseX,MouseY)并作相应处理。系统程序是无限循环,与定时中断服务程序配合而形成一个实时 系统。

A.定时中断服务程序按图24运行:步骤2401、2413、2414、2415,使detectCnt每递增至clickCatchStep 时,detectCnt被置零,这样该定时中断服务程序使位移及触摸态的检测周期为20毫秒,闪击操作的 检测周期为clickCatchStep*20毫秒;

detectCnt=0时,执行步骤2402把currentClickFS的值赋给lastClickFS,然后执行步骤2408读I/O地址 (sensorAddr+8)检测“闪击操作”;再执行步骤2409,若最近二次的闪击操作记录(即lastClickFS、 currentClickFS)相等且非零(即有“闪击操作”发生),则执行步骤2410把闪击操作标志keyClick置 为真并执行步骤2411清零10指触击监测电路中的所有锁存器,反之执行步骤2412把闪击操作标志 keyClick置为假;

每中断一次,都执行步骤2403以获取右手大拇指、中指对应的脉冲发生计数电路中的正负脉冲计数并 执行步骤然2404-2407把其转化为右手大拇指、中指对应的位移,其中步骤2404、2406按图25执行; 然后执行步骤2416判断有无移动操作;若有,则通过步骤2418、2420-2422来求鼠标位移,即以右手大 拇指和中指处于触摸态者的位移作鼠标位移,但如右手大拇指和中指都处于触摸态,则以大拇指位移 作鼠标位移;如右手大拇指和中指都处于非触摸态,则视鼠标无移动操作;

步骤2404、2406按图25运行:步骤2503至步骤2505比较探测蓝色光信号强度的二极管正脉冲数和负脉 冲数大小,从而确定出X位移是正向还是负向,步骤2506产生X位移。步骤2507至步骤2509比较探测红 色光信号强度的二极管正脉冲数和负脉冲数大小,从而确定出Y位移是正向还是负向,步骤2510产生Y 位移。最后经步骤2511输出座标(X,Y);

B.系统主模块:该模块是整个软件的最顶层模块,它是个无限循环程序,按图16运行:步骤1601完成初 始化,对全局变量detectCnt、clickCatchStep、mpMoved、keyClicked赋值。步骤1602至步骤1618判 断出当前的工作模式并进入该模式对应的子程序运行。在退出每个模式对应的子程序后,即进入步骤 1616,这时用户可选择8种工作模式中一种并把其设为当前模式;

步骤1616(即模式切换态子程序)只处理鼠标操作,它按图17运行:步骤1723至步骤1724根据最新鼠 标二维位移移动鼠标。步骤1701至步骤1708判断出有无鼠标左键击键操作;若无,则返回起始步骤; 若有,进入步骤1709;步骤1709至步骤1722判断鼠标座标在哪种模式标志图的点阵区内,则把该种模 式设为当前工作模式并进入该模式工作;若鼠标座标不在任何模式标志图的点阵区内,则返回起始步 骤。

升级工作模式子程序(此时系统只接收外来信号,而不发送信号)按图18运行:步骤1801把允许写标 志设为“不允许”,步骤1802接收一条指令,若步骤1803判断出该指令是结束指令则进入模式切换态; 若步骤1803判断出该指令不是结束指令,则在开始写FLASH存储器之前由步骤1804至步骤1806验证密 码以防非法写入;密码验证通过后,才能执行步骤1807至步骤1808,即根据该指令指定的地址把该指 令提供的内容写入FLASH存储器中,然后返回步骤1801。用户定义字符区就是通过该模式加入FLASH 存储器的。

通用模式子程序按图19运行:a)步骤1901和步骤1913根据双手有无按键及”触头接触态”确定是否 鼠标移动操作;若是,则执行步骤1914、步骤1915得到鼠标位移系数,由步骤1916将鼠标位移和鼠 标位移系数之积作为最终的鼠标位移输出;b)步骤1902、步骤1909至步骤1912判断出当前操作是否 鼠标按键操作,若是则输出相应的鼠标按键编码,否则返回起始步骤。c)步骤1902至步骤1905判断 出是否有键盘按键操作,若有则确定出行号(设行号为Row)、列号(设列号为Co1)和区号;c.1) 若有且区号为3,且当前字符区为英汉字符区,则执行步骤1906对键编码加上汉字输入标记后由步骤 1924输出;c.2)对非“区号为3且当前字符区为英汉字符区”的情况,由步骤1917判知目前不是组合 键输入态,则直接由步骤1924输出编码;c.3)对非“区号为3且当前字符区为英汉字符区”的情况, 由步骤1917判知目前是组合键输入态,且步骤1918检查该按键不是空格键,则把该键码加入组合键 缓冲区;c.4)对非“区号为3且当前字符区为英汉字符区”的情况,由步骤1917判知目前是组合键 输入态,且步骤1918检查该按键是空格键,则输出组合键缓冲区中的编码并设输入态为“常规”; c.5)对非“区号为3且当前字符区为英汉字符区”的情况,且在在当前字符区的二维表中查知无相 应编码,且由步骤1921判知是“模式退出”按键,则转入模式切换态;c.6)若区号小于3且在当前 字符区的二维表中查知无相应编码,且由步骤1921至步骤1922判知是“组合键起始键”,则设输入 态为“组合键输入态”;若由步骤1921至步骤1922判知既不是“组合键起始键”又不是“模式退出” 按键,则发告警声并返回起始步骤。

步骤1915按图27运行:步骤2701至步骤2703向鼠标速度队列(这里设队列长度为1000个元素)中添加 一个元素并查队列是否满;未满,则退出;满,则执行步骤2704至步骤2707将队列中元素由低至高排 序,并取排序后队列的中间元素值作参考值Vref,然后由步骤2708产生低速、中速、高速的范围;最 后由步骤2709清空鼠标速度队列并退出。

手写笔模式子程序按图20执行:当手写笔有移动操作时,执行步骤2001至步骤2003,根据位移和”触 头接触态”产生手写笔格式的编码;当有“模式退出”按键操作时,执行步骤2004至步骤2006,退出 “手写笔模式”,进入“模式切换态”;

手机键盘模式子程序按图21执行:当有按键操作时,执行步骤2101至步骤2103得到一个键编码,步骤 2104若查到该编码不是“模式退出”键时,则执行步骤2105输出该键编码,然后返回起始步骤继续查 询按键,若是“模式退出”键则执行步骤2106退出手机键盘模式并进入“模式切换态”。

手机鼠标模式子程序按图22执行:当有按键操作时,执行步骤2201、步骤2204得到一个键编码,步骤 2205若查到该编码不是“模式退出”键时,则执行步骤2207输出该键编码,若是“模式退出”键则执 行步骤2206退出手机键盘模式并进入“模式切换态”。当有鼠标移动操作时,执行步骤2201至步骤2203 得到一个鼠标位移编码并输出之。

本地模式子程序按图23执行:a)播音:这是一个无限循环子程序,若是“播音”态,每循环一次就执 行步骤2301至步骤2302一遍发出一个音符,反之执行步骤2303。b).“播音”控制:经步骤2303、步 骤2306至步骤2309、步骤2322至步骤2324判断出有鼠标左键按键操作后,此时若鼠标座标在“播音” 点阵区区内且目前是“非播音”态,则执行步骤2325至步骤2328,从光标位置开始播音并把系统设为 “播音”态;此时若鼠标座标在“停止播音”图符区内且目前是“播音”态,则执行步骤2325、步骤 2329至步骤2331,停止播音并把系统设为“非播音”态。c).编辑:对键盘按键操作,执行步骤2303、 步骤2306、步骤2307、步骤2310得到键盘键编码,若该键编码是编辑键(包括“delete”、 “backspace”、光标上下左右移动键),则执行步骤2311、步骤2313至步骤2320中相应的步骤,移 动光标或删除光标前(或后)的字符;若该键编码为可显示字符且其区号为3,且当前字符区为英汉 字符区,则经步骤2333汉字输入法转化为汉字编码后存FLASH存储器709并显示在液晶显示器710;对 非“区号为3且当前字符区为英汉字符区”的可显示字符按键,则直接存FLASH存储器709并显示在液 晶显示器710;若是“模式退出”键,则退出该模式并进入模式切换态。d).移动鼠标:对鼠标移动操 作,执行步骤2303至步骤2305,按鼠标位移对鼠标作相应的移动。

实键盘模式子程序按图28执行:当有按键操作时,执行步骤2801至步骤2803得到一个键编码,步骤2804 若查到该编码不是“模式退出”键时,则执行步骤2805输出该键编码,然后返回起始步骤继续查询按 键,若是“模式退出”键则执行步骤2806退出实键盘模式并进入“模式切换态”。

                        本发明的实施方案及最佳实施例

高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈