CN101145103A - 一种点读机***及其脚本驱动方法 - Google Patents
一种点读机***及其脚本驱动方法 Download PDFInfo
- Publication number
- CN101145103A CN101145103A CNA2007101642759A CN200710164275A CN101145103A CN 101145103 A CN101145103 A CN 101145103A CN A2007101642759 A CNA2007101642759 A CN A2007101642759A CN 200710164275 A CN200710164275 A CN 200710164275A CN 101145103 A CN101145103 A CN 101145103A
- Authority
- CN
- China
- Prior art keywords
- script
- driver module
- external unit
- pointing
- machine system
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Electrically Operated Instructional Devices (AREA)
Abstract
本发明公开一种点读机***,包括微处理器和与之连接的外部设备,其特征在于所述点读机***还包括一脚本驱动模块,该脚本驱动模块允许用户编写脚本代码实现微处理器对外部设备的操作控制,完成用户自定义的功能。本发明还公开了该点读机***的脚本驱动方法。本发明通过设置脚本驱动模块,采用脚本驱动的方法使用户可以根据自己的需要和兴趣来自定义点读机的功能,其有益效果在于:具有平台无关性、灵活的兼容性和良好的可扩展性。
Description
技术领域
本发明涉及一种点读机***及其脚本驱动方法。
背景技术
点读机,也叫做智能点读机,是继电脑学***板点读机,把课本放在机器平板上,用专用的笔一点课本上,机器根据笔头接触的书本位置数据,得到并播放相应的语音。2、OID光学头点读机,主要原理在于将编码信息印刷在书本或透明薄膜上,通过影像处理设备辨识编码信息,得到并播放相应的语音。
现有的点读机***都是利用微处理器按照一定的固定格式执行相应的功能和操作外部设备,如播放语音、进行音量控制、录音,开关机等。这样的控制方式只允许用户按照设计者事先设定的功能执行操作,如果要完成更复杂的控制功能,不但要改进硬件***,还要改写点读机的固件***,非常不方便,控制方法死板,点读机功能单一,操作复杂,无法实现灵活的功能控制和人性化的随时定制。
发明内容
有鉴于此,本发明的目的在于提供一种点读机***,该***允许用户端对点读机的执行功能进行自定义,实现点读机灵活的功能控制。
为了实现上述发明目的,本发明采用的技术方案如下:
一种点读机***,包括微处理器和与之连接的外部设备,其特征在于所述点读机***还包括一脚本驱动模块,该脚本驱动模块允许用户编写脚本代码实现微处理器对外部设备的操作控制,完成用户自定义的功能。
本发明还提供上述点读机***的脚本驱动方法,技术方案如下:
一种点读机***的脚本驱动方法,所述点读机***包括微处理器和与之连接的外部设备,还包括外部设备的驱动模块和一脚本驱动模块,其特征在于所述脚本驱动方法包括如下步骤:
用户端根据脚本语言规范编写脚本代码;
脚本驱动模块将用户端编写的脚本代码根据指令集数据规格汇编成与***硬件无关的目标中间代码并存放在存储设备中;
脚本驱动模块解释执行目标中间代码,实现对微处理器、外部设备以及外部设备的驱动模块的控制,完成用户自定义的功能。
具体技术方案还包括:
所述脚本驱动模块包括一脚本编译器和一脚本解释器,
脚本编译器,用于将用户编写的脚本代码根据指令集数据规格汇编成与***硬件无关的目标中间代码;
脚本解释器,用于解释执行目标中间代码,实现微处理器对外部设备的操作控制,完成用户自定义的功能。
所述指令集数据规格以及用户编写的脚本代码的语言规范根据点读机的特性制定。
所述用户编写的脚本代码支持多种语言,包括英文、中文和日文中的一种、两种或两种以上。
所述外部设备包括:
存储设备及数据缓冲设备,用于存储数据,包括多媒体数据、脚本程序和目标中间代码;
多媒体设备,用于播放音频和视频;
影像处理设备OID光学头,用于触发生成OID码值消息;
导电薄膜定位设备,用于触发生成坐标消息;
按键设备,用于触发生成按键消息;
录音输入设备,用于实现录音功能;
其它输入设备,主要用于人机互动接口,包括电脑键盘,游戏手柄和触摸屏中的一种、两种或两种以上;
定时器,用于实现定时功能。
所述点读机***还包括外部设备的驱动模块,包括显示驱动模块、按键驱动模块、多媒体驱动模块、输入设备接口模块、影像处理设备OID光学头驱动模块和导电薄膜驱动模块,外部设备的驱动模块在脚本驱动模块的控制下驱动相应的外部设备执行操作。
所述脚本解释器解释执行目标中间代码包括如下步骤:
A.脚本解释器从存储设备中读取目标中间代码的位置和长度信息;
B.脚本解释器读取一条目标中间代码指令;
C.判断目标中间代码指令是否是结束指令,若判断结果为是,则脚本解释器结束该指令的执行并退出本段目标中间代码,若判断结果为否则执行该指令并回到步骤B,重复执行步骤B、C。
本发明一种点读机***及其脚本驱动方法通过设置脚本驱动模块,采用脚本驱动的方法使用户可以根据自己的需要和兴趣来自定义点读机的功能,当然这些功能的定义要以***的硬件设备为基础的。在这种情况下,点读机的硬件***只需完成目标代码的执行和硬件***功能的调度就可以了。若需要增加***功能,也只需升级脚本语言规范及指令集数据规格,具有很强的兼容性。脚本编译器所编译出的目标中间代码是依据设计者制定的规范产生的,产生时不考虑具体的目标硬件***;而在解释执行时不同的硬件***在具体的指令驱动下实现自身的硬件功能。脚本驱动模块编译出的内容没有采用固定的语音位置和数量等表格式的存放方式,而是和平台无关的目标中间代码,用户可以用脚本代码的方式实现复杂的功能和逻辑流程控制,在需要新的功能控制或者逻辑流程时只需要在用户端更改脚本代码并重新编译即可,不需要重新烧录硬件中的固件程序,大大方便了书籍制作人员和用户。当有新的硬件功能被添加时(如需要支持游戏手柄、触摸屏等其它输入设备),只需要在脚本程序中添加新的指令,并通过脚本驱动模块实现新的硬件控制即可。原有的目标中间代码和脚本代码仍可正常使用,由脚本驱动模块判断具体的硬件并执行相应的功能。由此可见,与现有技术相比,本发明的有益效果在于:具有平台无关性、灵活的兼容性和良好的可扩展性。
附图说明
下面结合附图和具体实施方式对本发明作进一步的阐述。
图1为本发明点读机***结构方框图;
图2为脚本解释器解释执行目标中间代码的流程图。
具体实施方式
如图1所示,一种点读机***,包括微处理器和与之连接的外部设备,还包括外部设备的驱动模块和一脚本驱动模块。外部设备包括用于实现录音功能的录音输入设备;用于存储多媒体数据、脚本程序和目标中间代码等数据的存储设备及数据缓冲设备;用于实现***定时功能的定时器;用于提示电源的LED灯;用于显示的显示屏幕;用于触发生成按键消息的按键设备;用于播放音频和视频的多媒体设备,包括音频设备和视频设备;用于触发生成OID码值消息的影像处理设备OID光学头或用于触发生成坐标消息的导电薄膜定位设备。外部设备的驱动模块包括用于驱动显示屏幕的显示驱动模块;用于响应按键操作的按键驱动模块;用于驱动多媒体播放的多媒体驱动模块;用于响应OID码值消息的影像处理设备OID光学头驱动模块和响应坐标消息的导电薄膜驱动模块,外部设备的驱动模块在脚本驱动模块的控制下驱动相应的外部设备执行操作。
脚本驱动模块包括脚本编译器和脚本解释器。当用户需要点读机执行某种功能时,在用户端输入相应的脚本代码,该脚本代码符合既定的语言规范,并支持多种语言,包括英文、中文和日文等语言。用户编写的脚本代码将被存储在存储设备中。脚本编译器从存储设备中读取该脚本代码并根据指令集数据规格汇编成目标中间代码,脚本解释器读取目标中间代码并解释成微处理器可识别的指令,通过调用相应的脚本程序,控制外部设备执行相应操作,完成用户自定义的功能。
脚本解释器解释执行目标中间代码的过程见图2,包括:
A.读取目标中间代码位置和长度信息的步骤;
B.读取一条目标中间代码指令的步骤;
C.判断B中的目标中间代码指令是否为结束指令的步骤,若判断结果为是,则执行结束指令并退出本段目标中间代码,若判断结果为否则执行相应指令并回到步骤B,重复执行步骤B、C。
其中,步骤C中指令的执行包括但不限于如下情况:
结束指令:退出本目标中间代码段并等待用户新的输入;
播放指令:以顺序或随机方式播放一条或几条语音文件或者视频文件;
复位指令:使用户变量归零;
调用指令:调用另外一段中间代码段;
赋值指令:为用户变量赋值,操作数可以是常数或者另外一个用户变量;
比较指令:比较两个用户变量或者比较一个用户变量和一个常数,并将结果放入寄存器;
与指令:对某个用户变量进行与操作;
或指令:对某个用户变量进行或操作;
非指令:对某个用户变量进行非操作;
测试指令:测试某个用户变量的某些位是否为1;
加、减、乘、除指令:对某个用户变量进行加减乘除操作;
跳转指令:直接跳转到中间代码段的另一个地址准备继续执行中间代码;
条件跳转指令:根据比较指令的结果进行跳转,如大于、大于等于、等于、不等于,小于,小于等于条件满足时进行跳转;
获得***时间指令:获得当前的***时间并存入指令指定的用户变量;
产生随机数指令:产生一个随机数并存入指令指定的用户变量;
虚拟接收指令:强行指定点读机下一次的接收值,可以是一个OID码值或一个坐标消息;
条件满足执行指令:当指定条件满足时执行指定的中间代码段;
循环指令:在循环指令指定的循环次数未达到时循环执行循环指令和结束循环指令之间的中间代码;
显示指令:在点读机的屏幕的指定位置显示指定的文本或图形;
LED指令:使点读机的某些LED等点亮或者熄灭或者闪烁;
录音指令:通过点读机的录音装置开始录制用户的发音并保存在点读机的存储装置内;
播放录音指令:播放由录音指令录制的语音;
振动指令:使点读机***电路相连的马达旋转产生振动;
启动定时器指令:启动指定的***定时器;
停止定时器指令:停止指定的***定时器。
下面举例说明用户自定义功能的实现过程:
用户按照脚本语言规范在用户端输入如下脚本代码:
设置变量变量1=0
如果条件(变量1小于10)为真则执行
{
设置变量变量1=变量1+1
播放语音提示音.mp3
随机播放语音苹果.mp3,香蕉.mp3,西瓜.mp3
}
退出
经脚本编译器编译后产生目标中间代码如下:
01 01 AA EF 00 02 01 01 AA EF 0A 00 8C 01 01 AA EF 01 AA EF 01 0A 01 003E CD 00 0B 03 01 32 D1 00 01 32 EF 00 01 33 02 00 FF FF
然后脚本解释器将上述目标中间代码翻译成微处理器可识别的指令。程序执行时,按照图2的流程顺序读出各条指令,首先读出这段脚本代码的地址和长度信息,然后读出第一条指令,第一条指令设定名称为变量1的变量的值为0,判断不是结束指令则执行本指令。接着读取第二条指令,第二条指令为条件满足执行指令,指明变量1小于10时执行参数指定的代码段,代码段的范围依据其后的符号‘{’和‘}’设定,如果条件不符合则直接跳转至‘}’后的代码,判断过程同理于第一条指令。然后进入第三条指令,符号‘{’表示这是一段独立代码段开始,和‘}’共同构成本独立代码段。第四条指令设置变量同第一条指令,只是将变量1的值加1并将结果再放回变量1中,然后依据流程进入第五条指令。第五条指令是播放指令,根据指令的参数信息通过脚本驱动模块调用多媒体驱动模块驱动音频设备播放“提示音.mp3”这条语音。第六条指令同第五条指令,只是播放的方式为随机播放。第七条指令为符号‘}’表明独立代码段结束。第八条指令‘退出’表示退出当前的脚本代码段。
通过以上操作,用户便实现了自定义的音频播放功能。
尽管本发明的实施方案己公开如上,但其并不仅仅限于说明书和实施方式中所列运用,它完全可以被适用于各种适合本发明的领域,对于熟悉本领域的人员而言,可容易地实现另外的修改,因此在不背离权利要求及等同范围所限定的一般概念下,本发明并不限于特定的细节和这里示出与描述的图例。
Claims (10)
1.一种点读机***,包括微处理器和与之连接的外部设备,其特征在于所述点读机***还包括一脚本驱动模块,该脚本驱动模块允许用户编写脚本代码实现微处理器对外部设备的操作控制,完成用户自定义的功能。
2.如权利要求1所述的点读机***,其特征在于所述脚本驱动模块包括一脚本编译器和一脚本解释器,
脚本编译器,用于将用户编写的脚本代码根据指令集数据规格汇编成与***硬件无关的目标中间代码;
脚本解释器,用于解释执行目标中间代码,实现微处理器对外部设备的操作控制,完成用户自定义的功能。
3.如权利要求2所述的点读机***,其特征在于所述指令集数据规格以及用户编写的脚本代码的语言规范根据点读机的特性制定。
4.如权利要求2所述的点读机***,其特征在于所述用户编写的脚本代码支持多种语言,包括英文、中文和日文中的一种、两种或两种以上。
5.如权利要求1所述的点读机***,其特征在于所述外部设备包括:
存储设备及数据缓冲设备,用于存储数据,包括多媒体数据、脚本程序和目标中间代码;
多媒体设备,用于播放音频和视频;
影像处理设备OID光学头,用于触发生成OID码值消息;
导电薄膜定位设备,用于触发生成坐标消息;
按键设备,用于触发生成按键消息;
录音输入设备,用于实现录音功能;
其它输入设备,主要用于人机互动接口,包括电脑键盘,游戏手柄和触摸屏中的一种、两种或两种以上;
定时器,用于实现定时功能。
6.如权利要求1所述的点读机***,其特征在于所述点读机***还包括外部设备的驱动模块,包括显示驱动模块、按键驱动模块、多媒体驱动模块、输入设备接口模块、影像处理设备OID光学头驱动模块和导电薄膜驱动模块,外部设备的驱动模块在脚本驱动模块的控制下驱动相应的外部设备执行操作。
7.一种点读机***的脚本驱动方法,所述点读机***包括微处理器和与之连接的外部设备,还包括外部设备的驱动模块和一脚本驱动模块,其特征在于所述脚本驱动方法包括如下步骤:
用户端根据脚本语言规范编写脚本代码;
脚本驱动模块将用户端编写的脚本代码根据指令集数据规格汇编成与***硬件无关的目标中间代码并存放在存储设备中;
脚本驱动模块解释执行目标中间代码,实现对微处理器、外部设备以及外部设备的驱动模块的控制,完成用户自定义的功能。
8.如权利要求7所述的点读机***的脚本驱动方法,其特征在于所述脚本驱动模块包括一脚本编译器和一脚本解释器,
脚本编译器,用于将用户编写的脚本代码根据指令集数据规格汇编成与***硬件无关的目标中间代码并存放在存储设备中;
脚本解释器,用于解释执行目标中间代码,实现对微处理器、外部设备以及外部设备的驱动模块的控制,完成用户自定义的功能。
9.如权利要求8所述的点读机***的脚本驱动方法,其特征在于所述脚本解释器解释执行目标中间代码包括如下步骤:
A.脚本解释器从存储设备中读取目标中间代码的位置和长度信息;
B.脚本解释器读取一条目标中间代码指令;
C.判断目标中间代码指令是否是结束指令,若判断结果为是,则脚本解释器结束该指令的执行并退出本段目标中间代码,若判断结果为否则执行该指令并回到步骤B,重复执行步骤B、C。
10.如权利要求7所述的点读机***的脚本驱动方法,其特征在于所述外部设备包括:
存储设备及数据缓冲设备,用于存储数据,包括多媒体数据、脚本程序和目标中间代码;
多媒体设备,用于播放音频和视频;
影像处理设备OID光学头,用于触发生成OID码值消息;
导电薄膜定位设备,用于触发生成坐标消息;
按键设备,用于触发生成按键消息;
录音输入设备,用于实现录音功能;
其它输入设备,主要用于人机互动接口,包括电脑键盘,游戏手柄和触摸屏中的一种、两种或两种以上;
定时器,用于实现定时功能;
所述外部设备的驱动模块包括显示驱动模块、按键驱动模块、多媒体驱动模块、输入设备接口模块、影像处理设备OID光学头驱动模块和导电薄膜驱动模块,外部设备的驱动模块在脚本驱动模块的控制下驱动相应的外部设备执行操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2007101642759A CN100530089C (zh) | 2007-10-23 | 2007-10-23 | 一种点读机***及其脚本驱动方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2007101642759A CN100530089C (zh) | 2007-10-23 | 2007-10-23 | 一种点读机***及其脚本驱动方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101145103A true CN101145103A (zh) | 2008-03-19 |
CN100530089C CN100530089C (zh) | 2009-08-19 |
Family
ID=39207644
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2007101642759A Expired - Fee Related CN100530089C (zh) | 2007-10-23 | 2007-10-23 | 一种点读机***及其脚本驱动方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100530089C (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101853581A (zh) * | 2010-05-16 | 2010-10-06 | 冯德强 | 一种电子点读装置 |
CN102054044A (zh) * | 2010-12-31 | 2011-05-11 | 深圳市华伯通讯设备有限公司 | 一种个性化资源文件的生成方法、装置及电子设备 |
CN104517483A (zh) * | 2013-09-29 | 2015-04-15 | 宁夏先锋软件有限公司 | 一种新型光学点读机 |
CN106843972A (zh) * | 2017-01-23 | 2017-06-13 | 北京晶海科技有限公司 | 一种零部件向后兼容的方法及装置 |
CN107450930A (zh) * | 2017-08-14 | 2017-12-08 | 上海迅显信息科技有限公司 | 一种基于hmi***脚本语言的开发方法 |
CN107899243A (zh) * | 2017-10-20 | 2018-04-13 | 深圳市乐智教育科技有限公司 | 一种生成游戏的方法和设备 |
CN109064787A (zh) * | 2018-07-17 | 2018-12-21 | 广东小天才科技有限公司 | 一种点读设备 |
CN109145202A (zh) * | 2018-07-27 | 2019-01-04 | 珠海米团科技有限公司 | 一种基于oid码的多内容推送方法及*** |
CN110262793A (zh) * | 2019-05-20 | 2019-09-20 | 苏州乐鼎电子科技有限公司 | 一种点读笔***的逻辑驱动方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3934231A (en) * | 1974-02-28 | 1976-01-20 | Dendronic Decisions Limited | Adaptive boolean logic element |
JP3330620B2 (ja) * | 1991-07-11 | 2002-09-30 | 株式会社リコー | 電子学習機及びその学習プログラム消化状況管理方法 |
CN2765270Y (zh) * | 2004-12-09 | 2006-03-15 | 胡灼华 | 课本点读机 |
CN2821735Y (zh) * | 2005-06-30 | 2006-09-27 | 四川长虹朝华信息产品有限责任公司 | 一种可以直接使用教材课本的点读机 |
CN1971661A (zh) * | 2006-11-28 | 2007-05-30 | 东莞市步步高教育电子产品有限公司 | 一种对存储在点读机中内容进行播放的控制方法 |
-
2007
- 2007-10-23 CN CNB2007101642759A patent/CN100530089C/zh not_active Expired - Fee Related
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101853581A (zh) * | 2010-05-16 | 2010-10-06 | 冯德强 | 一种电子点读装置 |
CN102054044A (zh) * | 2010-12-31 | 2011-05-11 | 深圳市华伯通讯设备有限公司 | 一种个性化资源文件的生成方法、装置及电子设备 |
CN104517483A (zh) * | 2013-09-29 | 2015-04-15 | 宁夏先锋软件有限公司 | 一种新型光学点读机 |
CN106843972A (zh) * | 2017-01-23 | 2017-06-13 | 北京晶海科技有限公司 | 一种零部件向后兼容的方法及装置 |
CN107450930A (zh) * | 2017-08-14 | 2017-12-08 | 上海迅显信息科技有限公司 | 一种基于hmi***脚本语言的开发方法 |
CN107899243A (zh) * | 2017-10-20 | 2018-04-13 | 深圳市乐智教育科技有限公司 | 一种生成游戏的方法和设备 |
CN109064787A (zh) * | 2018-07-17 | 2018-12-21 | 广东小天才科技有限公司 | 一种点读设备 |
CN109145202A (zh) * | 2018-07-27 | 2019-01-04 | 珠海米团科技有限公司 | 一种基于oid码的多内容推送方法及*** |
CN110262793A (zh) * | 2019-05-20 | 2019-09-20 | 苏州乐鼎电子科技有限公司 | 一种点读笔***的逻辑驱动方法 |
Also Published As
Publication number | Publication date |
---|---|
CN100530089C (zh) | 2009-08-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100530089C (zh) | 一种点读机***及其脚本驱动方法 | |
KR100224618B1 (ko) | 다목적 학습기의 페이지 전환 방법 | |
US6308042B1 (en) | Computer based training system | |
WO1999008175A2 (en) | Universally accessible computing system | |
Bates | Programming 8-bit PIC microcontrollers in C: with interactive hardware simulation | |
CN1758329A (zh) | 多功能电子乐谱播放器 | |
CN102819457A (zh) | 用来于开机期间播放多媒体文件的方法与装置 | |
CN110531985A (zh) | Sdk初始化方法及***、电子设备、存储介质 | |
CN103886777B (zh) | 动画播放装置及方法、动画播放控制装置及方法 | |
KR102645880B1 (ko) | 자기주도 영어 학습 콘텐츠 제공 방법 및 장치 | |
JP4934904B2 (ja) | ロボット連携装置、ロボット連携プログラム記憶媒体、およびロボット連携プログラム | |
RU2007112776A (ru) | Носитель записи и способ и устройство воспроизведения данных с носителя записи | |
US6966032B1 (en) | Audio assisted setup apparatus and method | |
JP3268602B2 (ja) | メモリカートリッジと光学式ディスクメモリを使用したゲーム機システム | |
JP2003076349A (ja) | データ再生装置 | |
CN110262793A (zh) | 一种点读笔***的逻辑驱动方法 | |
CN1916885B (zh) | 实现影音文同步播放的方法 | |
Franklin et al. | Macromedia Flash MX 2004 ActionScript | |
KR101146566B1 (ko) | 어학 학습기 | |
EP0635783B1 (en) | A multi-media system for interactive presentation of user information and mass storage means for use with such system | |
Bell et al. | Simon Says | |
JP2000082275A (ja) | 記録担体、装置及び、方法 | |
DeFanti et al. | BASIC Zgrass—a sophisticated graphics language for the Bally Home Library Computer | |
Barker | MICROTEXT: a new dialogue programming language for microcomputers | |
KR101553272B1 (ko) | 복수의 타이머를 사용하여 멀티미디어 콘텐츠를 저작하는 방법 및 복수의 타이머를 사용하여 멀티미디어 콘텐츠를 저작하는 저작 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090819 Termination date: 20111023 |