电脑通讯系统.pdf

上传人:g**** 文档编号:995499 上传时间:2018-03-24 格式:PDF 页数:40 大小:1.14MB
返回 下载 相关 举报
摘要
申请专利号:

CN85107539

申请日:

1985.10.08

公开号:

CN85107539A

公开日:

1986.05.10

当前法律状态:

终止

有效性:

无权

法律详情:

|||授权|||审定||||||公开

IPC分类号:

G06F3/16

主分类号:

G06F3/16

申请人:

何颉勋

发明人:

何颉勋

地址:

香港北角邮箱54504号

优先权:

1984.10.18 美国(US) 662210

专利代理机构:

中国专利代理有限公司

代理人:

匡少波

PDF下载: PDF下载
内容摘要

一个系统用作与机器通讯。其中以音乐的音程作为码来传达预选了的命令或输入至一电脑。该系统可用人声相继地发出音调(DO—RE,等等)来建立音程并可用电路和程序来转换接收到的音或调为同一基本周期的脉冲列并储存和算出周期和音程。当某一特别的音程被接收到时,本设备包括一数位微型电脑例如苹果Ⅱ加TM型能执行一预设录下的子程序和并使得那线路复原来接收第二个音程。

权利要求书

1: 1、一个系统用作以音调讯号来与电脑通讯,而该电脑其中预录有一系列子程序相应于不同的音调音程(Interval),含有: (a)用于将各式样的音调讯号变换为代表着其基本音调周期的讯号的装置; (b)一装置联结于上述音调讯号变换装置用作算出一接收到的音调讯号与一参照音调讯号的音程; (c)一装置响应所述变换和算出装置,用作选出和运行一预录了的相应于那由所述音程算出设施算出的特别的音程的子程序。 2、权利要求1系统其操作能回应一参照讯号,该讯号由输入到所述变换装置的一音调讯号循序与命令音调讯号建立的。 3、权利要求2的系统其运作能响应音乐音阶中音乐的音调。 4、权利要求3的系统其中音阶是近代的音阶,其音程包括有
2: 000,1.250,1.500和
3: 000。 5、一声音发动电脑操纵装置含有: 一麦克风用作将声音变为电讯号; 联结所述麦克风用作将那电讯号变为一脉冲列的装置,其脉冲周期正是那接收来的口音声音的基本周期; 一装置,联接于所述变换装置,用作测量所述脉冲列的周期和将它与一参照周期作比较; 一装置,用作算出所述脉冲列的周期与所述参照周期间的音程; 一装置,响应上述的装置用作使那电脑去执行不同的程序作为对选出了的算出来的不同的特别音程数值所作出的响应。 6、在一个人声辨认系统中,改进在于装置用以响应其形式为有特别的音乐音程互相关系的音调讯号的命令,而该系统中有一些特别的不同的命令可被辨认出和与同一些不同的音程相对应。 7、权利要求6系统,其中所述的装置如果其中一音是重覆了一连续的时间超过一预选时间,其操作能依一探获的比例音程产生出一不同的音程。 8、在一声音辨认系统中其改进在于: 一波形整形线路其工作能响应一音调输入来产生一脉冲列其周期相同于那音调讯号的基本成份; 一周期测量和比较电路用作接收和测量所述波形电路的脉冲列输出,该电路包括有将那脉冲列的周期与一参照周期作比较的装置和用作算出其间的音乐的音程的装置; 用作响应特别的音程而不响应其他的音程的装置; 9、一通过接口电路从人声与电脑通讯的方法含有下列步骤: 以音调讯号的形式提供命令至接口电路; 使所述音调讯号相关于特定的音乐的音程; 算出接收来的音调讯号与参照音调讯号间的音程;和 选出和执行在电脑内对应于那算出的特别的音程的一预录的子程序协定(Subroutine  protocol)。 10、权利要求9的方法其中所述的音调讯号是一音乐音阶中的音乐的音调。 11、权利要求10的方法中所述的音乐音阶是近代的音乐音阶 其中的音程包括1.000;1.250;1.500和2.000  with  tolerance)。 12、权利要求11的方法,其中所述与所述音调讯号有关的步骤含有,首先,将一参照音调讯号变换为一讯号代表着此音调的周期,和之后,依次次序,将各命令音调讯号变换为讯号代表着各音调的周期,和然后算出所述各音程。 13、权利要求9的方法含有的步骤为: 在一音调讯号已重覆了一段连续的时间时检测; 并根据那探获的重复的音程按比例产生出一不同的音程。 14、权利要求9的方法,其中所述与音调讯号有关的步骤包括的下列步骤: 变换每一音调讯号讯号为一脉冲列而其特定的周期是与该音调讯号的音调有关的。 15、权利要求12的方法,其中所述与音调讯号有关的步骤包括的步骤为: 变换所述参照讯号为一脉冲列,而其特定的周期是与该参照音调讯号的音调有关的;其后换转每一音调讯号为一关于该音调讯号的音调的脉冲列;和然后算出所述音程。

说明书


发明领域

    本发明是关于与机器通讯的领域和特别是关于将口音传达命令给电脑。

    先前技术的描述

    利用人声与电脑通讯已引起许多兴趣,及研究工作。康雷(A·E·Conrad)在1984年一月刊的“研究与开发”(Research    &    Development,VOl·26,NO·1,Pages    86-89)刊出题为“抛开你的键盘,只管告诉你的电脑怎样做”(Toss    Your    Keyboards    and    Just    Tell    Your    Computer    What    To    Do)一文内调查了以声音命令电脑的优点,应用以及一般系统。

    该文指示这方面的工作主要集中在两种口语辨认系统,(speech    recognition    systems)即特定说话者的(speaker-dependent)与非从属说话者的(speaker-independent)两种系统。前一种只能辨认某一个人讲的口语,而后一种能辨认一群人所讲的同一口语。从属说话者系统现时能够辨认(或学会辨认)的口语多过非从属说话者的系统,因而能够控制更多的机能。两种系统都依赖创造出来的口语“模板”跟接收得来的口语的配合。

    人们在这领域里做了很多努力,并有很多发明专利及文章,如玛利(Marley)的美国发明专利第4,284,846号内的先前技术描述里考查到的工艺公布。该发明专利说明了一种用来分析及比较口语的系统,而这系统是利用预选储藏的比例来比较某些波形的特性。

    口语辨认系统的其他发明专利有以下的沙河(Sahoe),美国发明专利第4,286,114和4,319,221:安(B·H·An)美国发明专利第4,292,470号;威池(Welch)等美国发明专利第4,319,085号和第4,336,421;基力(Kellett)美国发明专利第4,343,969;比斯(Pirz)美国发明专利第4,349,700;邓里顾芝(Taniguchi)等美国发明专利第4,389,109;希治角(Hitchock)美国发明专利第4,388,495;杜夫晓士(Duifhuis)等美国发明专利第4,384,335;和乌夫斯柴(Rothschila)等美国发明专利4,399,732。

    这些系统都是相当复杂和昂贵的,或者是其能力非常有限的。例如,一个典型的非从属说话者系统能够辨认大概十个口语(例如,一至十的数目字),而属某说话者系统则能够辨认约一至二百个口语。

    发明概述

    这发明与上列发明专利所公开的系统与前述系统不同,它提供一个不太复杂的系统,这系统利用人声能够伸广到比平常需要用到或正常口语中用到的一个更加广阔的范围,从而可以经济地作成一个能够辨认较多不同的口音命令的非从属说话者系统。依据本发明的教导所造出来的系统会感觉和辨认音调的差异,这些差异被用来作为操作一些预先指定的功能编码讯号(Coded    signals)。

    依据本发明的一特征,那些音调差异就是音乐的音阶(Musical    scale)里的音调,例如普通全音阶(Diatonic    scale)。并提供装置(nuans)比较不同的音调,如某使用者主观的C中(MiddleC)调及其后发出的他/她的D调来定下各不同使用者的调。这发明的系统是使用和辨别音乐的音程作为命令或输入。

    这系统可有多种用途,包括在使用他种输入系统是不实际的环境之下,使用本系统来输入和控制一个电脑。例如在黑房中(例如电子显微镜室)或在使用者必须用双手做其他工作的情形下,如在一生产过程中。这系统对于伤残人士极为有用,尤其是那些不便操作传统电脑端机的人士。

    通过参照以下的描述及附图就更容易明白到现在本发明的辨别系统及其优点,在以下的描述及附图中,同一数字表示同一成分。

    附图简述

    图1是依照本发明的教导而制造的声音辨认系统的方块线路图并附有各示点的波形。

    图2是图1所示的系统的波形整形线路部分的线路图。

    图3是图1所示的系统的周期测量及其他部分的线路图。

    图4是一组波形,用于了解图2和图3所示的线路的操作。

    图5是一个流程图,用于表明图1至图3所示的系统的整体操作。

    图6,7,8,都是流程表,用于表明这系统的各可取的实现方式的操作。

    图9,10是各可取的流程图表的子程序,可用来代入图6,7,8所示的流程图内的一部份。

    实施例的说明书

    本发明的原理可使用硬件和/或软件多种形式来实施。以下说明其中多种,包括多种变化。

    依本发明构造的一个系统〔10〕如图1所示。这系统〔10〕包括一个转换器〔12〕(Transducer),例如麦克风,用来拾取如波形〔14〕所描绘的声波。这些波,如某人唱出的“C”音音调,有一个基本的周期“T”系于该音调的高度(pitch)。为着简化电子装置(Elchonics)起见就用波形整形线路〔18〕将该接收得来的声音波形〔14〕的电模拟量转化为一周期为“T”的脉冲序列〔16〕。

    并可设一辅助电讯号输入〔20〕用来作为对转换器〔12〕的一可取选择。辅助输入〔20〕可能是,例如,摇远发动用的电话输入或一个音调产生器(Tone    generator)。

    周期测量电路〔22〕接收波列〔16〕并量度其周期以及将其数字化和把这资料放进输入/输出接口〔24〕,这接口与一数字电脑〔26〕连接。

    在系统〔10〕的总括操作中,系统〔10〕就是于麦克风〔12〕或输入〔20〕接收音调讯号和对被挑选了的这些音调作出反应以操作电脑内的预编的程序。

    为着了解本发明中系统〔10〕的操作背后的原理,以下描述本发明实施于大家都熟知的自然音阶(Diatonic    scale)。当然本发明亦可实施于其他音阶。近代的自然音阶中的音程(Intervals)都不取决于某一个音的频率的(虽则一旦定了某一个音的频率亦即同时定了其他音的频率),并且可以以下表表示出一部分:

    (任何一任意的自然音阶)    (音程)

    MI′    2.5000

    RE′    2.2500

    DO′    2.0000

    TI    1.8750

    LA    1.6667

    SO    1.5000

    FA    1.3333

    MI    1.2500

    RE    1.1250

    (参照)    DO    1.0000

    TI′0.93750

    LA′0.83333

    SO′0.75000

    FA′0.66667

    MI′0.62500

    RE′0.56250

    DO′0.50000

    TI″0.46875

    由于大多数人类都熟识这音阶,而且小孩子们亦能轻易地发出DO,RE,ME,FA,SO,LA,TI,DO′(下意识地选出一参照频率并将它用上述的音程与其他各音关联)所以本发明以测定音程和对之起反应作为接收资讯(Information)的手段(means)。

    因此,依据图5的流程表,一个开始命令可以是于阶段“A”接收到一个探测到的音调声音(“RE”)。在阶段“B”这个讯号就被测量以便决定它重覆的时间是否足够(以防错误发动)。如果一个参照讯号(如“DO”)已存在并已被储存着,那么两者就被比较及如果一个1.125的音程在阶段“C”中被计算出来,那么一个寻找(Fetch)和执行(Execute)的子程序就被执行于“D”阶段,即为1.125音程重调用和执行一个预先记录的子程序。在结束的时候这系统在“E”阶段复位(Reset)和准备好接收第二个信号(例如“FA”)和对它作出大至相同的反应。

    为着避免系统变为特定说话者的系统,和让具有最小音乐能力的人都可用它,那个参照讯号是由同一方法建立。作为一个开始,用户只须对麦克风〔12〕发出短时间的“DO”的声音而后发出“RE”的声音。那系统把第一个接收的音调声音作为建立一个参照讯号来处置,并把第二个信号和跟着来的音调声音当作可能的命令讯号。

    图2示出那波形整形线路〔18〕和它与麦克风〔12〕及辅助输入〔20〕互相连接的较佳实施例。虽然图2内的元件标有某一数值,但是许多其他的数值都可应用,正如本领域的一般技术人员所熟识的那样。然而,图2所示的数值和电路元件的连接用在原型(pretotype)内工作得十分好。

    更切实地,麦克风〔12〕是连接在装框的地接点和接至电路点〔28〕的电抗阻抗〔27〕之间。该点〔28〕通过一电阻〔32〕也接至装框地点,和通过一电容〔34〕接至辅助输入〔20〕。

    无论是讯号输入〔12〕或〔20〕接收到一个讯号,输入〔12〕或〔20〕就将它供给一低频放大器〔36〕。这放大器由一运算放大器〔38〕组成,它的负输入点(脚6)接至电路点〔28〕,而正输入点(脚5)经电阻〔40〕接至偏压电压(正5伏特)和经并联的电容〔42〕和电阻〔44〕接至装框地点。该运算放大器〔38〕的脚4经限流电阻〔45〕接至正偏压电源(12伏特),和经电容〔46〕接至装框地点。运算放大器〔38〕的一些输出经并联的电阻〔47〕和电容〔48〕回输至它的负输入。

    放大器〔36〕的主要输出被输送至一低通滤波器。该低通滤波器有一电阻〔51〕,它的一边接至放大器〔36〕的输出,而另一边是经一电容器〔52〕接地和经一电阻〔53〕接电路接合点〔54〕。低频过滤器〔50〕的输出被输至接合点〔54〕而由此点至一比较器〔55〕和至一有衰减的峰值电压跟随电路(a    peak-voltage-follower-with-decay    circuit    56。)〔56〕。讯号分两路被输送出去:(a)径一电流隔离二极管〔57〕至比较器〔55〕的运算放大器〔58〕的正讯号输入点(脚12),而此点亦经一电阻〔59〕接地;(b)至有衰减的峰值电压跟随电路〔56〕。电路〔56〕的输出提供讯号至比较器〔55〕的负讯号输入点(脚13)。

    电路〔56〕的构成最好用一运算放大器〔60〕,它的正输入点(脚3)直接接着汇点〔54〕,而它的输出(脚1)就被直接回输至它的负输入点(脚2)同时亦经一隔流二极管〔61〕被输至放大器〔58〕的负输入点以及经并联的电阻〔63〕和电容〔64〕被输至地。并联的电阻〔63〕和电容〔64〕拥有一适当放电时间常数,令到比较器〔55〕的倒相输入讯号的效力经常盖过不倒相输入的,除了在汇点〔54〕的讯号达至每一周的最高峰的时候。

    比较器〔55〕的输出波形〔16〕是取自一对串连在运算放大器〔58〕的输出点(脚14)与地之间的电阻〔65〕和〔66〕的接合点。这输出被送往周期测量电路〔22〕的输入点ST。

    现在参阅图3,那里示出一较佳实施例的周期测量电路〔22〕和输出/输入接口〔24〕以及其与电脑〔26〕的互相接法。那特定的电脑〔26〕最好是萍果牌Ⅱ加型(Apple    Ⅱ    plus),而与那机器特定的互相接法亦如所示。

    那脉冲列〔16〕是经一作为史密触发器(Schmitt    Triqqer)用的运算放大器〔70〕接连至一移位寄存器〔72〕。寄存器〔72〕的输出(脚3和脚4)经反相器〔74〕及周期测量门〔75〕连接至计数器〔78〕,该计数器〔78〕再经缓冲器〔80〕接连至电脑〔26〕。

    来自电脑〔26〕的输出都是取自它的R/W,A0,A1,A2和 DS( Devlce Select)的输出以及偏压电源(5v)和定时脉冲列,一如图3所示。门〔81〕和〔82〕是用来在线〔83〕上提供复位命令。

    参考图4就更容易了解图2-3的电路和电脑〔26〕的工作。图4示出下述各样的互相关系:波形14,16和从CP点入移位寄存器〔72〕的输入,自电脑〔26〕传至周期测量门〔75〕的定时脉冲,以及移位寄存器〔72〕的相应于那测量到的周期“T”的开始与完结的输出。

    工作时,图2-3的电路首先把输入讯号〔14〕化为每周只有一个脉冲的脉冲列〔16〕于ST点(图2和图3),即史密触发器〔70〕的输入点。电脑〔26〕使移位寄存器〔72〕和计数器(经路线〔83〕和反相器〔86〕)复位并把电路准备好作下一周期测量。

    当整了形的波形〔16〕中的第一个上升沿到达移位寄存器〔72〕的CP点的时候。这寄存器的输出QO就从低升高(电压水平)。计数器〔78〕开始测量输入波形列的当前周期。

    当整了形的波形〔16〕中的第二个上升沿到达移位寄存器〔72〕的CP点的时候,它的输出Q1从低升高。计数器〔78〕停数。在同一时间,在缓冲器〔80〕的高字节缓冲器〔90〕的最高有效数位的输入由低被置高,代表着那周期测量经已结束。

    电脑〔26〕读出缓冲器〔90〕的高字节,如果最高有效数位是高就忽略它,而电脑〔26〕就将最低有效的7位作为一个15位元二进数字的Q8至Q14的值。(如果最高效数位是低那就表示周期测量尚未完成)。

    电脑〔26〕也读出低字节缓冲器〔92〕,及将读数作为那15位元二进数字的最低有效8位的值。亦即是Q0至Q7。电脑〔26〕将这15位元二进数字解释为刚测量到的周期的量。

    图6流程表使得系统〔10〕的工作更加容易领会。在这里,开始序列A馈给复位测量电路门81-82和它们的联结导线),再在B1处决定是否经已接收了周期讯号。若没有,系统就循环回去等候这样的一个讯号。若是,系统就在阶段B3取一读数,和这是是第J次(任何数目,例如第30次)在阶段B4连续地再发生了那相同的脉冲周期T,系统就在阶段C算出一平均数。

    图6的流程表是为单音程讯息的。它是用作孤立地输入参照和讯号波列的,其中在相继的波列之间总有一个间断。方块I是用作探获这些间断的。

    若方块I的输出是第一个探获的音调讯号,它就被当为参照讯号和被储存。若第二个或相继来的讯号被鉴定了,就将它们与参照讯号作比较并计算出一个音程来。这计算出来的音程于是就被试图用作相配,和如果找到一个相配的话,那关连的子程序就被执行,然后程序复位。

    在实际应用时,电脑终端机可示出如下般的选择表(Menu):

    我为你服务。“唱”你的选择

    (DO    DO)为(列出存储器中的程序)

    (DO    RE)为(显示“HO”样式)

    (DO    ME)为(字式显示)

    (DO    FA)为(闪式显示)

    (DO    SO)为(奏出急进音串)

    (DO    LA)为(发动外在驹动器来列出磁碟中的程式目录)

    (DO    TE)为(显示“TE”字样)

    (DO    DO′)为(发动外在驱动器来储藏本程序于磁碟,和执行磁碟中另一程序,和回返)

    而用户只须“唱”出所要求的命令来发动电脑。

    以下是一适用于图6程序清单:

    5    REM    INVENTED    BY    HO    KIT-FUN

    8    REM    UNPUBLISHED    COPYRIGHT

    10    REM    P    O    BOX    54504

    11    REM    NORTH    POINT

    12    REM    HONG    KONG

    15    REM

    20    REM    1-INTERVAL

    21    REM

    23    REM    FIG.6

    25    REM

    30    REM    ISOLATED    INPUTS

    32    REM

    34    REM    32

    40    REM

    50    REM    SLOT    4

    55    REM    J,W,K,I,I(K),N,X,P,I(P),M

    60    HN=128

    62    NU=24:REM    SET    “J”    FOR    EACH    WAVE    TRAIN

    64    BY=256

    69    I0=0.9688

    70    I1=1.0625:REM    A    BOUNDARY    BETWEEN    TWO

    ADJACENT    MUSICAL    INTERVALS

    71    I2=1.1875

    73    I3=1.2975

    74    I4=1.4167

    75    I5=1.5833

    76    I6=1.7708

    77    I7=1.9444

    78    I8=2.1250

    82    GOTO    90

    85    REM    HERE    COMPUTER    MAY    BE    PROGRAMMED    TO

    BRIEFLY    PERFORM    OTHER    OPERATIONS

    “UNRELATED”    TO    THIS    PROGRAMME

    88    GOTO    100

    90    DIM    T(50),H(50),L(50)

    91    W=0:GOTO    95:REM    RESET    PROGRAMME    TO

    ACCEPT    A    NEW    REFERENCE

    93    W=1:REM    RESET    PROGRAMME    TO    ACCEPT

    NEXT    SIGNAL

    95    J=1

    96    FOR    PS=1    TO    2500:NEXT:HOME:PRINT

    “I    AM    AT    YOUR    SERVICE.‘SING’YOUR

    CHOICE”:PRINT:PRINT“(DO    DO)    FOR

    (LIST    PROGRAMME    IN    MEMORY)”:PRINT

    “(DO    RE)FOR    (DISPLAY    PATTERN    ′HO′)”:

    PRINT    “(DO    ME)    FOR    (TEXT    MODE    DISPLAY)”

    PRINT“(DO    FA)    FOR    (FLASH    MODE    DISPLAY)”:

    PRINT“(DO    SO)    FOR    (PLAY    RUNNING

    TONES)”:PRINT“(DO    LA)    FOR    (ACTIVATE

    EXTERNAL    DRIVE)”:HTAB    15:PRINT“TO

    CATALOG    PROGRAMMES    ON”:HTAB    15:PRINT

    “DISK)”:PRINT“(DO    TE)    FOR    (DISPLAY

    ‘TE’)”

    98    PRINT“(DO    DO′)    FOR    (ACTIVATE    EXTERNAL

    DRIVE”:HTAB    15:PRINT“TO    SAVE

    THIS    PROGRAMME”:HTAB    15:PRINT

    “ON    DISK,AND    EXECUTE”:HTAB    15:

    PRINT“ANOTHER    PROGRAMME    ON”:

    HTAB    15:PRINT“DISK,AND    RETURN)”:

    REM    MESSAGE    FROM    MACHINE

    99A=PEEK(49348):REM    RESET    MEASURING

    CIRCUIT

    100H(J)=PEEK(49346):REM    HIGH    BYTE

    140    IF    H(J)<HN    THEN    GO    TO    85:REM    PERIOD

    MEASUREMENT    UNFINISHED

    160    L(J)=PEEK    (49345):REM    LOW    BYTE

    300A=PEEK    (49348):REM    RESET    MEASURING

    CIRCUIT

    400    IF    J=NU    THEN    GO    TO    2000

    900    J=J+1:GO    TO    100

    2000W=W+1:REM    REFERENCE    WAVE    TRAIN    IF    W=1

    2100    FOR    J=5    TO    24:T(J)=(H(J)-HN)

    *BY+L(J):NEXT:J=1:

    REM    PERIOD    READINGS

    2400 AVE(W)=0.05*(T(5)+T(6)+T(7)

    +T(8)+T(9)+T(10)+T(11)

    +T(12)+T(13)+T(14)+T(15)

    +T(16)+T(17)+T(18)+T(19)

    +T(20)+T(21)+T(22)+T(23)

    +T(24)):REM    AVERAGE    PERIOD

    2420 PRINT CHR(7):REM BEEP FOR NEXT WAVE

    TRAIN

    2466A=PEEK    (49348):REM    RESET    CIRCUIT    AND

    TEST    FOR    SILENCE

    2470    FOR    PS=1    to    20:NEXT:REM    BRIEF    PAUSE

    2472    REM“WAVE    TRAIN    STILL    DETECTED?”

    2475L=PEEK    (49345):H=PEEK    (49346)

    2478    IF    L=0    AND    H=0    THEN    GO    TO    2495:

    REM“NO    WAVE    DETECTED”

    2485    GO    TO    2466

    2495    REM“REFERENCE/SIGNAL    BRANCHING”

    2510    IF    W=1    THEN    GO    TO    100:REM    IT    WAS

    A    REFERENCE    WAVE

    2520    REM    IT    WAS    A    SIGNAL    WAVE    TRAIN

    2700    I=AVE    (1)/AVE(2):REM    INTERVAL

    COMPUTED

    2800    HOME:PRINT“INTERVAL=”;I

    2810    IF    I<I0    GOTO    91:REM    SMALLER    THAN    THE

    LOWEST    INTERVAL    PROGRAMMED    (WHICH

    MAY    BE    EXTENDED).START    AGAIN

    2820    IF    I<I1    GO    TO    3000:REM    INTERVAL

    1.0000

    2840    IF    I<I2    GO    TO    3500:REM    INTERVAL

    1.1250

    2860    IF    I<I3    GO    TO    4000:REM    INTERVAL

    1.2500

    2880    IF    I<I4    GO    TO    4500:REM    INTERVAL

    1.3333

    2900    IF    I<I5    GO    TO    5000:REM    INTERVAL

    1.5000

    2920    IF    I<I6    GO    TO    5500:REM    INTERVAL

    1.6667

    2940    IF    I<I7    GO    TO    6000:REM    INTERVAL

    1.8750

    2960    IF    I<I8    GO    TO    6500:REM    INTERVAL

    2.0000

    2980    GO    TO    91:REM    GREATER    THAN    THE    HIGHEST

    INTERVAL    PROGRAMMED    (WHICH    MAY    BE

    EXTENDED).START    AGAIN

    3000    REM    MESSAGE    IDENTIFIED    WITH    1.0000

    3005    REM    FEEDBACK

    3010 FQ=50:REM***DO***OF AN

    ABITRARY    MUSICAL    SCALE

    3020    GOSUB    9980

    3030 IPRO=1.0000:I=“DO”

    3035    GOSUB    9800

    3050    LIST

    3499    GO    TO    93

    3500    REM    MESSAGE    IDENTIFIED    WITH    1.1250

    3505    REM    FEEDBACK

    3510 FQ=76:REM***RE***OF AN ABITRARY

    MUSICAL    SCALE

    3520    GOSUB    9980

    3530 IPRO=1.125:I=“RE”

    3540    GOSUB    9800

    3550    FLASH:PRINT“GRAPHIC”:NORMAL

    3600    GR

    3610    COLOR=12

    3650    VLIN    0,30    AT    2

    3660    VLIN    0,30    AT    12

    3670    HLIN    2,12    AT    15

    3680    VLIN    0,30    AT    16

    3690    VLIN    0,30    AT    26

    3700    HLIN    16,26    AT    0

    3720    HLIN    16,26    AT    30

    3999    GO    TO    93

    4000    REM    MESSAGE    IDENTIFIED    WITH    1.2500

    4005    REM    FEEDBACK

    4010 FQ=99:REM***ME***OF AN ABITRARY

    MUSICAL    SCALE

    4020    GOSUB    9980

    4040 IPRO=1.2500:I=“ME”

    4050    GOSUB    9800

    4055    FLASH:PRINT“TEXT”:NORMAL

    4100    TEXT

    4499    GO    TO    93

    4500    REM    MESSAGE    IDENTIFIED    WITH    1.3333

    4502    REM    FEEDBACK

    4505 FQ=109:REM***FA***OF AN ABITRARY

    MUSICAL    SCALE

    4510    GOSUB    9980

    4515 IPRO=1.3333:I=“FA”

    4520    GOSUB    9800

    4600    FLASH

    4650    PRINT“FLASH”

    4999    GO    TO    93

    5000    REM    MESSAGE    IDENTIFIED    WITH    1.5000

    5001    REM    FEEDBACK

    5002 FQ=127:REM***SO***OF AN

    ABITRARY    MUSICAL    SCALE

    5004    GOSUB    9980

    5010 IPRO=1.5000:I=“SO”

    5020    GOSUB    9800

    5025    FLASH:PRINT“MUSIC”:NORMAL

    5100    NORMAL

    5105    TEXT

    5120    FOR    FQ=230    TO    254

    5160    GOSUB    5300

    5180    NEXT    FQ

    5200    GO    TO    93

    5300    POKE    768,1

    5320    POKE    769,FQ

    5340    CALL    770

    5350    RETURN

    5500    REM    MESSAGE    IDENTIFIED    WITH    1.6667

    5501    REM    FEEDBACK

    5502 FQ=144:REM***LA***OF AN

    ABITRARY    MUSICAL    SCALE

    5504    GOSUB    9800

    5510 IPRO=1.6667:I=“LA”

    5520    GOSUB    9800

    5522    PRINT

    5523    HTAB    16

    5525    FLASH:PRINT“LA”:NORMAL

    5550 PRINT CHR(4);“CATALOG”

    5999    GO    TO    93

    6000    REM    MESSAGE    IDENTIFIED    WITH    1.8750

    6005    REM    FEEDBACK

    6010 FQ=159:REM***TE***OF AN

    ABITRARY    MUSICAL    SCALE

    6015    GOSUB    9980

    6020 IPRO=1.8750:I=“TE”

    6030    GOSUB    9800

    6040    PRINT

    6050    HTAB    16

    6060    FLASH:PRINT“TE”:NORMAL

    6499    GO    TO    93

    6500    REM    MESSAGE    IDENTIFIED    WITH    2.0000

    6505    REM    FEEDBACK

    6510 FQ=166:REM***DO′***OF AN

    ABITRARY    MUSICAL    SCALE

    6515    GOSUB    9980

    6520 IPRO=2.0000:I=“DO′”

    6530    GOSUB    9800

    6540    PRINT

    6550    HTAB    16

    6560    FLASH:PRINT“DO′”:NORMAL

    6570 PRINT CHR(4);“SAVE PROGRAMME”

    6580 PRINT CHR(4);“BRUN BEEPING 350 20”

    6999    GO    TO    93

    9800    PRINT“ERROR=”;(I-IPRO)/IPRO

    9810    PRINT

    9820    HTAB    2:PRINT“I    RECOGNIZED    INTERVAL

    (DO“;I;”) AND I AM NOW EXECUTING

    YOUR    MESSAGE”

    9822    RETURN

    9980    REM    DECLARE    THE    RECOGNIZED    INTERVAL

    9982    POKE    768,6:POKE    769,50:CALL    770:

    REM    A    SOUND    SUBROUTINE    TO    PRODUCE

    A    PRESET    REFERENCE    SOUND    FOR    FEEDBACK

    PURPOSES

    9984    POKE    768,6:POKE    769,FQ:CALL    770:REM

    PRODUCE    A    SOUND    BEARING    THE

    RECOGNIZED    INTERVAL

    9986    RETURN

    9990    END

    特别地,如果上述列表之第93行修改为如下:

    93W=0

    系统10就会分别以一个新的参照来操作每一个命令。这般的操作容许同一个或不同的说话者自由地改变每一个命令所用的参照。

    现在参考图7,那里表明本发明的系统用的另一流程表并以参照数字100来指示它。这表描画出N音程讯息(N-interval    Message)所用之程式。那即是,它是用于多音调码。例如,在这情形下,DO-RE-ME和DO-RE-FA就是不同的讯号。

    以下就是适合用来实行这程式的适用列表:

    5    REM    INVENTED    BY    HO,KIT-FUN

    8    REM    UNPUBLISHED    COPYRIGHT

    10    REM    P    O    BOX    54504

    11    REM    NORTH    POINT

    12    REM    HONG    KONG

    15    REM

    20    REM    N-INTERVAL

    21    REM

    22    N=2

    23    REM    FIG.7

    25    REM

    30    REM    ISOLATED    INPUTS

    32    REM

    34    REM

    35    REM

    36    REM

    40    REM    9

    45    REM

    50    REM    SLOT    4

    55 REM J,W,K,I,I(K),N,X,I(P),M

    60    HN=128

    62    NU=24:REM    SET    “J”    FOR    EACH    WAVE    TRAIN

    64    BY=256

    69    I0=0.9688:REM    LOWEST    FOR    THIS    PROGRAMME.

    MAY    BE    EXTENDED

    70    I1=1.0625:REM    A    BOUNDARY    BETWEEN    TWO

    ADJACENT    MUSICAL    INTERVALS

    71    I2=1.1875

    73    I3=1.2975

    74    I4=1.4167

    75    I5=1.5833

    76    I6=1.7708

    77    I7=1.9444

    78    I8=2.1250

    80 M=“RECOGNIZED AND EXECUTING (MESSAGE)”

    82    GO    TO    90

    85    REM    HERE    COMPUTER    MAY    BE    PROGRAMMED    TO

    BRIEFLY    PERFORM    OTHER    OPERATIONS

    “UNRELATED”    TO    THIS    PROGRAMME

    88    GO    TO    100

    90    DIM    T(50),H(50),L(50)

    92    DIM    K(100)

    95    J=1:W=0:K=0:REM    RESET    PROGRAMME

    96    FOR    PS=1    TO    2500:NEXT:HOME:PRINT

    “I    AM    AT    YOUR    SERVICE.‘SING’

    YOUR    2-INTERVAL    MESSAGE”

    97    PRINT:PRINT    “EXAMPLE”

    98    PRINT“(DO    RE    SO)    FOR    (MESSAGE    25)”:

    PRINT“(DO    FA    DO)    FOR    (MESSAGE    41)”

    99    A=PEEK    (49348):REM    RESET    MEASURING    CIRCUIT

    100    H(J)=PEEK    (49346):REM    HIGH    BYTE

    140    IF    H(J)<HN    THEN    GO    TO    85:REM    PERIOD

    MEASUREMENT    UNFINISHED

    160    L(J)=PEEK    (49345):REM    LOW    BYTE

    300    A=PEEK    (49348):REM    RESET    MEASURING

    CIRCUIT

    400    IF    J=NU    THEN    GO    TO    2000

    900    J=J+1:GO    TO    100

    2000    W=W+1:REM“W”TH    WAVE    TRAIN

    2100    FOR    J=5    TO    24:T(J)=(H(J)-HN)

    *BY+L(J):NEXT:J=1:REM PERIOD

    READINGS

    2400 AVE(W)=0.05*(T(5)+T(6)+T(7)

    +T(8)+T(9)+T(10)+T(11)

    +T(12)+T(13)+T(14)+T(15)

    +T(16)+T(17)+T(18)+T(19)

    +T(20)+T(21)+T(22)+T(23)

    +T(24):REM    AVERAGE    PERIOD

    2420 PRINT CHR(7):REM BEEP FOR NEXT WAVE TRAIN

    2466    A=PEEK    (49348):REM    RESET    CIRCUIT    AND

    TEST    FOR    SILENCE

    2470    FOR    PS=1    TO    20:NEXT:REM    BRIEF    PAUSE

    2472    REM“WAVE    TRAIN    STILL    DETECTED?”

    2475    L=PEEK(49345):H=PEEK(49346)

    2478    IF    L=0    AND    H=0    THEN    GO    TO    2495:

    REM“NO    WAVE    DETECTED”

    2485    GO    TO    2466

    2495    REM“REFERENCE/SIGNAL    BRANCHING”

    2510    IF    W=1    THEN    GO    TO    100:REM    IT    WAS    A

    REFERENCE    WAVE

    2520    REM    IT    WAS    A    SIGNAL    WAVE    TRAIN

    2550    K=K+1:REM    “K”TH    SIGNAL(NOTE    THAT

    K=W-1)

    2570    REM(AFTER    A    PROGRAMME    RESET    THE    FIRST

    WAVE    TRAIN    IS    TAKEN    AS    REFERENCE,

    ALL    SUBSEQUENT    WAVE    TRAINS    TAKEN

    AS    SIGNALS    REFERRED    TO    THIS

    REFERENCE,TILL    THE    NEXT    RESET.)

    2700    I(K)=AVE(l)/AVE(W):REM    INTERVAL

    COMPUTED

    2720    PRINT“INTERVAL=”;I(K)

    2740    IF    K=N    THEN    GO    TO    2770:REM    AN    N-INTERVAL

    MESSAGE

    2760    GO    TO    100

    2770    REM    LOCATE    AND    EXECUTE

    2780    I=I(l):REM    FIRST    INTERVAL

    2800    IF    I<I0    GO    TO    95:REM    TOO    LOW    FOR    THIS

    PROGRAMME.START    AGAIN

    2820    IF    I<I1    GO    TO    21000:REM    INTERVAL    1.0000

    2840    IF    I<I2    GO    TO    22000:REM    INTERVAL    1.1250

    2860    IF    I<I3    GO    TO    23000:REM    INTERVAL    1.2500

    2880    IF    I<I4    GO    TO    24000:REM    INTERVAL    1.3333

    2980    IF    I<I5    GO    TO    25000:REM    INTERVAL    1.5000

    2980    GO    TO    95:REM    OUT    OF    PROGRAMMED    RANGE.

    START    AGAIN

    21000    I=I(2):REM    SECOND    INTERVAL

    21005    IF    I<I0    GO    TO    95:REM    TOO    LOW    FOR    THIS

    PROGRAMME.START    AGAIN

    21010    IF    I<I1    GO    TO    21100:REM    INTERVAL    1.0000

    21020    IF    I<I2    GO    TO    21200:REM    INTERVAL    1.1250

    21030    IF    I<I3    GO    TO    21300:REM    INTERVAL    1.2500

    21040    IF    I<I4    GO    TO    21400:REM    INTERVAL    1.3333

    21050    IF    I<I5    GO    TO    21500:REM    INTERVAL    1.5000

    21090    GO    TO    95:REM    OUT    OF    PROGRAMMED    RANGE.

    START    AGAIN

    21100 PRINT M;“11)”

    21110    REM‘PROGRAMMED    MESSAGE    HERE’

    21190    GO    TO    95

    21200 PRINT M;“12)”

    21210    REM‘PROGRAMMED    MESSAGE    HERE’

    21290    GO    TO    95

    21300 PRINT M;“13)”

    21310    REM‘PROGRAMMED    MESSAGE    HERE’

    21390    GO    TO    95

    21400 PRINT M;“14)”

    21410    REM‘PROGRAMMED    MESSAGE    HERE’

    21490    GO    TO    95

    21500 PRINT M;“15)”

    21510    REM‘PROGRAMMED    MESSAGE    HERE’

    21590    GO    TO    95

    22000    I=I(2):REM    SECOND    INTERVAL

    22005    IF    I    I0    GO    TO    95:REM    TOO    LOW    FOR    THIS

    PROGRAMME.START    AGAIN

    22010    IF    I    I1    GO    TO    22100:REM    INTERVAL    1.0000

    22020    IF    I    I2    GO    TO    22200:REM    INTERVAL    1.1250

    22030    IF    I    I3    GO    TO    22300:REM    INTERVAL    1.2500

    22040    IF    I    I4    GO    TO    22400:REM    INTERVAL    1.3333

    22050    IF    I    I5    GO    TO    22500:REM    INTERVAL    1.5000

    22090    GO    TO    95:REM    OUT    OF    PROGRAMMED    RANGE.

    START    AGAIN

    22100 PRINT M;“21)”

    22110    REM‘PROGRAMMED    MESSAGE    HERE’

    22190    GO    TO    95

    22200 PRINT M;“22)”

    22210    REM‘PROGRAMMED    MESSAGE    HERE’

    22290    GO    TO    95

    22300 PRINT M;“23)”

    22310    REM‘PROGRAMMED    MESSAGE    HERE’

    22390    GO    TO    95

    22400 PRINT M;“24)”

    22410    REM‘PROGRAMMED    MESSAGE    HERE’

    22490    GO    TO    95

    22500 PRINT M;“25)”

    22510    REM‘PROGRAMMED    MESSAGE    HERE’

    22590    GO    TO    95

    23000    I=I(2):REM    SECOND    INTERVAL

    23005    IF    I    I0    GO    TO    95:REM    TOO    LOW    FOR    THIS

    PROGRAMME.START    AGAIN

    23010    IF    I<I1    GO    TO    23100:REM    INTERVAL    1.0000

    23020    IF    I<I2    GO    TO    23200:REM    INTERVAL    1.1250

    23030    IF    I<I3    GO    TO    23300:REM    INTERVAL    1.2500

    23040    IF    I<I4    GO    TO    23400:REM    INTERVAL    1.3333

    23050    IF    I<I5    GO    TO    23500:REM    INTERVAL    1.5000

    23090    GO    TO    95:REM    OUT    OF    PROGRAMMED    RANGE.

    START    AGAIN

    23100 PRINT M;“31)”

    23110    REM‘PROGRAMMED    MESSAGE    HERE’

    23190    GO    TO    95

    23200 PRINT M;“32)”

    23210    REM‘PROGRAMMED    MESSAGE    HERE’

    23290    GO    TO    95

    23300 PRINT M;“33)”

    23310    REM‘PROGRAMMED    MESSAGE    HERE’

    23390    GO    TO    95

    23400 PRINT M;“34)”

    23410    REM‘PROGRAMMED    MESSAGE    HERE’

    23490    GO    TO    95

    23500 PRINT M;“35)”

    23510    REM‘PROGRAMMED    MESSAGE    HERE’

    23590    GO    TO    95

    24000    I=I(2):REM    SECOND    INTERVAL

    24005    IF    I<I0    GO    TO    95:REM    INTERVAL    TOO    LOW

    FOR    THIS    PROGRAMME.START    AGAIN

    24010    IF    I<I1    GO    TO    24100:REM    INTERVAL    1.0000

    24020    IF    I<I2    GO    TO    24200:REM    INTERVAL    1.1250

    24030    IF    I<I3    GO    TO    24300:REM    INTERVAL    1.2500

    24040    IF    I<I4    GO    TO    24400:REM    INTERVAL    1.3333

    24050    IF    I<I5    GO    TO    24500:REM    INTERVAL    1.5000

    24090    GO    TO    95:REM    OUT    OF    PROGRAMMED    RANGE.

    START    AGAIN

    24100 PRINT M;“41)”

    24110    REM‘PROGRAMMED    MESSAGE    HERE’

    24190    GO    TO    95

    24200 PRINT M;“42)”

    24210    REM‘PROGRAMMED    MESSAGE    HERE’

    24290    GO    TO    95

    24300 PRINT M;“43)”

    24310    REM‘PROGRAMMED    MESSAGE    HERE’

    24390    GO    TO    95

    24400 PRINT M;“44)”

    24410    REM‘PROGRAMMED    MESSAGE    HERE’

    24490    GO    TO    95

    24500 PRINT M;“45)”

    24510    REM‘PROGRAMMED    MESSAGE    HERE’

    24590    GO    TO    95

    25000    I=I(2):REM    SECOND    INTERVAL

    25005    IF    I<I0    GO    TO    95:REM    TOO    LOW    FOR    THIS

    PROGRAMME.START    AGAIN

    25010    IF    I<I1    GO    TO    25100:REM    INTERVAL    1.0000

    25020    IF    I<I2    GO    TO    25200:REM    INTERVAL    1.1250

    25030    IF    I<I3    GO    TO    25300:REM    INTERVAL    1.2500

    25040    IF    I<I4    GO    TO    25400:REM    INTERVAL    1.3333

    25050    IF    I<I5    GO    TO    25500:REM    INTERVAL    1.5000

    25090    GO    TO    95:REM    OUT    OF    PROGRAMMED    RANGE.

    START    AGAIN

    25100 PRINT M;“51)”

    25110    REM‘PROGRAMMED    MESSAGE    HERE’

    25190    GO    TO    95

    25200 PRINT M;“52)”

    25210    REM‘PROGRAMMED    MESSAGE    HERE’

    25290    GO    TO    95

    25300 PRINT M;“53)”

    25310    REM‘PROGRAMMED    MESSAGE    HERE’

    25390    GO    TO    95

    25400 PRINT M;“54)”

    25410    REM‘PROGRAMMED    MESSAGE    HERE’

    25490    GO    TO    95

    25500 PRINT M;“55)”

    25510    REM‘PROGRAMMED    MESSAGE    HERE’

    25590    GO    TO    95

    图8示出又另一流程表,用作口述程式。利用输入一连串声音说话者有效地定下由欲要的一串口音命令所组成的口述程式(例如一个程序)供以后执行。

    依照图8流程表来实行这程式的适用列表如下:

    5    REM    INVENTED    BY    HO    FIT-FUN

    8    REM    UNPUBLISHED    COPYRIGHT

    10    REM    P    O    BOX    54504

    11    REM    NORTH    POINT

    12    REM    HONG    KONG

    15    REM

    20    REM    1-INTERVAL

    21    REM

    23    REM    FIG.8

    25    REM    PROGRAMMING    USING    VOCAL    COMMANDS

    30    REM    ISOLATED    INPUTS

    32    REM

    34    REM‘ONE    REFERENCE    FOR    EACH    ORAL    PROGRAMME’

    36    REM

    40    REM    VOPRO    18

    45    REM

    50    REM    SLOT    4

    55 REM J,W,K,I,I(K),N,X,I(P),M

    60    HN=128

    62    NU=24:REM    SET“J”FOR    EACH    WAVE    TRAIN

    64    BY=256

    69    I0=0.9688:REM    LOWEST    IN    THIS    PROGRAMME.

    MAY    BE    EXTENDED

    70    I1=1.0625:REM    A    BOUNDARY    BETWEEN    TWO

    ADJACENT    MUSICAL    INTERVALS

    71    I2=1.1875

    73    I3=1.2975

    74    I4=1.4167

    75    I5=1.5833

    76    I6=1.7708

    77    I7=1.9444

    78    I8=2.1250

    82    GO    TO    90

    85    REM    HERE    COMPUTER    MAY    BE    PROGRAMMED    TO

    BRIEFLY    PERFORM    OTHER    OPERATIONS

    “UNRELATED”TO    THIS    PROGRAMME

    88    GO    TO    100

    90    DIM    T(50),H(50),L(50)

    92    DIM.K(100)

    95    J=1:W=0:K=0:REM    RESET    PROGRAMME

    96    FOR    PS=l    TO    2500:NEXT:HOME:PRINT

    “I    AM    AT    YOUR    SERVICE.‘SING’YOUR

    CHOICE”:PRINT:PRINT“(DO    DO)

    FOR(LIST    PROGRAMME    IN    MEMORY)”:

    PRINT“(DO    RE)FOR(DISPLAY    PATTERN

    ‘HO’)”:PRINT“(DO    ME)FOR(TEXT    MODE

    DISPLAY)”

    97    PRINT“(DO    FA)FOR(FLASH    MODE    DISPLAY)”:

    PRINT“(DO    SO)FOR(PLAY    RUNNING    TONES)”:

    PRINT“(DO    LA)FOR(ACTIVATE    EXTERNAL

    DRIVE”:HTAB    15:PRINT“TO    CATALOG

    PROGRAMMES    ON”:HTAB    15:PRINT“DISK)”:

    PRINT“(DO    TE)FOR(DISPLAY‘TE’)”

    98    PRINT“(DO    DO′)FOR(ACTIVATE    EXTERNAL

    DRIVE”:HTAB    15:PRINT“TO    SAVE    THIS

    PROGRAMME”:HTAB    15:PRINT“ON    DISK,

    AND    EXECUTE”:HTAB    15:PRINT“ANOTHER

    PROGRAMME    ON”:HTAB    15:PRINT“DISK,

    AND    RETURN)”:REM    MESSAGE    FROM    MACHINE

    99A=PEEK(49348):REM    RESET    MEASURING    CIRCUIT

    100    H(J)=PEEK(49346):REM    HIGH    BYTE

    140    IF    H(J)<HN    THEN    GO    TO    85:REM    PERIOD

    MEASUREMENT    UNFINISHED

    160    L(J)=PEEK(49345):REM    LOW    BYTE

    300A=PEEK(49348):REM    RESET    MEASURING

    CIRCUIT

    400    IF    J=NU    THEN    GO    TO    2000

    900    J=J+1:GO    TO    100

    2000    W=W+1:REM“W”TH    WAVE    TRAIN

    2100    FOR    J=5    TO    24:T(J)=(H(J)-HN)

    *BY+L(J):NEXT:J=1:

    REM    PERIOD    READINGS

    2400 AVE(W)=0.05*(T(5)+T(6)+T(7)+T(8)

    +T(9)+T(10)+T(11)+T(12)

    +T(13)+T(14)+T(15)+T(16)

    +T(17)+T(18)+T(19)+T(20)

    +T(21)+T(22)+T(23)+T(24)):

    REM    AVERAGE    PERIOD

    2420 PRINT CHR(7):REM BEEP FOR NEXT WAVE TRAIN

    2466    A=PEEK(49348):REM    RESET    CIRCUIT    AND    TEXT

    FOR    SILENCE

    2470    FOR    PS=1    TO    20:NEXT:REM    BRIEF    PAUSE

    2472    REM“WAVE    TRAIN    STILL    DETECTED?”

    2475    L=PEEK(49345):H=PEEK(49346)

    2478    IF    L=0    AND    H=0    THEN    GO    TO    2495:

    REM“NO    WAVE    DETECTED”

    2485    GO    TO    2466

    2495    REM“REFERENCE/SIGNAL    BRANCHING”

    2510    IF    W=1    THEN    GO    TO    100:REM    IT    WAS    A

    REFERENCE    WAVE

    2520    REM    IT    WAS    A    SIGNAL    WAVE    TRAIN

    2550    K=K+1:REM“K”TH    SIGNAL(NOTE    THAT

    K=W-1)

    2570    REM(AFTER    A    PROGRAMME    RESET    THE    FIRST

    WAVE    TRAIN    IS    TAKEN    AS    THE    REFERENCE.

    ALL    SUBSEQUENT    WAVE    TRAINS    TAKEN    AS

    SIGNALS    REFERRED    TO    THIS    REFERENCE,

    TILL    THE    NEXT    RESET.)

    2700    I(K)=AVE(1)/AVE(W):REM    INTERVAL

    COMPUTED

    2720    PRINT“INTERVAL=”;I(K)

    2740    IF    I(K)<0.9688    GO    TO    2770:REM    A    PRESET

    VALUE    OF    X(SEE    FLOW    CHART    FIG    8)

    WHICH    IS    PROGRAMMABLE

    2760    GO    TO    100

    2770    REM    EXECUTE    ORAL    PROGRAMME    JUST    ENTERED

    2780    FOR    P=1    TO    K=1:I=I(P):GOSUB    2790:NEXT

    2785    GO    TO    95

    2790    REM‘BUILDING    BLOCKS    OF    A    PROGRAMMABLE

    PROCESS’

    2800    IF    I<I0    GO    TO    95:REM    TOO    LOW    FOR    THE

    PROGRAMMED    RANGE    HERE.START    AGAIN

    2820    IF    I<I1    GO    TO    3000:REM    INTERVAL    1.0000

    2840    IF    I<I2    GO    TO    3500:REM    INTERVAL    1.1250

    2860    IF    I<I3    GO    TO    4000:REM    INTERVAL    1.2500

    2880    IF    I<I4    GO    TO    4500:REM    INTERVAL    1.3333

    2900    IF    I<I5    GO    TO    5000:REM    INTERVAL    1.5000

    2920    IF    I<I6    GO    TO    5500:REM    INTERVAL    1.6667

    2940    IF    I<I7    GO    TO    6000:REM    INTERVAL    1.8750

    2960    IF    I<I8    GO    TO    6500:REM    INTERVAL    2.0000

    2980    RETURN:REM    GREATER    THAN    THE    HIGHEST    INTERVAL

    PROGRAMMED(WHICH    MAY    BE    EXTENDED).

    NEGLECT

    3000    REM    MESSAGE    IDENTIFIED    WITH    1.0000

    3005    REM    FEEDBACK

    3010 FQ=50:REM***DO***OF AN ABITRARY

    MUSICAL    SCALE

    3020    GOSUB    9980

    3030 IPRO=1.0000:I=“DO”

    3035    GOSUB    9800

    3050    LIST

    3499    RETURN

    3500    REM    MESSAGE    IDENTIFIED    WITH    1.1250

    3505    REM    FEEDBACK

    3510 FQ=76:REM***RE***OF AN ABITRARY

    MUSICAL    SCALE

    3520    GOSUB    9980

    3530 IPRO=1.124:I=“RE”

    3540    GOSUB    9800

    3550    FLASH:PRINT“GRAPHIC”:NORMAL

    3600    GR

    3610    COLOR=12

    3650    VLIN    0,30    AT    2

    3660    VLIN    0,30    AT    12

    3670    VLIN    2,12    AT    15

    3680    VLIN    0,30    AT    16

    3690    VLIN    0,30    AT    26

    3700    HLIN    16,26    AT    0

    3720    HLIN    16,26    AT    30

    3999    RETURN

    4000    REM    MESSAGE    IDENTIFIED    WITH    1.2500

    4005    REM    FEEDBACK

    4010 FQ=99:REM***ME***OF AN ABITRARY

    MUSICAL    SCALE

    4020    GOSUB    9980

    4040 IPRO=1.2500:I=“ME”

    4050    GOSUB    9800

    4055    FLASH:PRINT“TEXT”:NORMAL

    4100    TEXT

    4499    RETURN

    4500    REM    MESSAGE    IDENTIFIED    WITH    1.3333

    4502    REM    FEEDBACK

    4505 FQ=109:REM***FA***OF AN ABITRARY

    MUSICAL    SCALE

    4510    GOSUB    9980

    4515 IPRO=1.3333:I=“FA”

    4520    GOSUB    9800

    4600    FLASH

    4650    PRINT“FLASH”

    4999    RETURN

    5000    REM    MESSAGE    IDENTIFIED    WITH    1.5000

    5001    REM    FEEDBACK

    5002 FQ=127:REM***SO***OF AN ABITRARY

    MUSICAL    SCALE

    5004    GOSUB    9980

    5010 IPRO=1.5000:I=“SO”

    5020    GOSUB    9800

    5025    FLASH:PRINT“MUSIC”

    5100    NORMAL

    5105    TEXT

    5120    FOR    FQ=230    TO    254

    5160    GOSUB    5300

    5180    NEXT    FQ

    5200    RETURN

    5300    POKE    768,1

    5320    POKE    769,FQ

    5340    CALL    770

    5350    RETURN

    5500    REM    MESSAGE    IDENTIFIED    WITH    1.6667

    5501    REM    FEEDBACK

    5502 FQ=144:REM***LA***OF AN ABITRARY

    MUSICAL    SCALE

    5504    GOSUB    9980

    5510 IPRO=1.6667:I=“LA”

    5520    GOSUB    9800

    5522    PRINT

    5523    HTAB    16

    5525    FLASH:PRINT“LA”:NORMAL

    5550 PRINT CHR(4);“CATALOG”

    5999    RETURN

    6000    REM    MESSAGE    IDENTIFIED    WITH    1.8750

    6005    REM    FEEDBACK

    6010 FQ=159:REM***TE***OF AN ABITRARY

    MUSICAL    SCALE

    6015    GOSUB    9980

    6020 IPRO=1.8750:I=“TE”

    6030    GOSUB    9800

    6040    PRINT

    6050    HTAB    16

    6060    FLASH:PRINT“TE”:NORMAL

    6499    RETURN

    6500    REM    MESSAGE    IDENTIFIED    WITH    2.0000

    6505    REM    FEEDBACK

    6510 FQ=166:REM***DO′***OF AN ABITRARY

    MUSICAL    SCALE

    6515    GOSUB    9980

    6520 IPRO=2.0000:I=“DO′”

    6530    GOSUB    9800

    6540    PRINT

    6550    HTAB    16

    6560    FLASH:PRINT“DO′”:NORMAL

    6570 PRINT CHR(4);“SAVE PROGRAMME”

    6580 PRINT CHR(4);“BRUN BEEPING 350 20”

    6999    RETURN

    9800    PRINT“ERROR=”;(I-IPRO)/IPRO

    9810    PRINT

    9820    HTAB    2:PRINT“I    RECOGNIZED    INTERVAL

    (DO“;I;”)AND I AM NOW EXECUTING

    YOUR    MESSAGE”

    9822    RETURN

    9980    REM    DECLARE    THE    RECOGNIZED    INTERVAL

    9982,POKE    768,6:POKE    769,50:CALL    700:

    REM    A    SOUND    SUBROUTINE    TO    PRODUCE

    A    PRESET    REFERENCE    SOUND

    9984    POKE    768,6:POKE    769,FQ:CALL    770:REM

    PRODUCE    A    SECOND    SOUND    BEARING    THE

    RECOGNIZED    INTERVAL

    9986    RETURN

    9990    END

    图9表明另一子程序,指名为Ⅱ。它可用来代替图6,7和8内的流程表方块Ⅰ。当用了它来代替任何图6,7和8内的方块Ⅰ的时候,它就许可系统处理连贯(Slurred)的输入,即是连贯的波列。这样般的操作有利于一个人类说话者,因为发出连贯的口头声音比较发出孤立的较为不费力。

    以下就是用来执行方块Ⅱ的程序的适用列表:

    2420 PRINT CHR(7):REM BEEP FOR NEXT WAVE TRAIN 2460 for PS=1 TO 500:NEXT:REM PAUSE

    这可被用未替代例如上列图6的流程表用的列表的第2420-2485数行。需要留意图9内的停顿时间(pause)应当足够长久,以避免本波列(图6,7和8的流程表内的)被误作下一接着来的读数,即是被误作为“下一波列”,而且用户并要小心不应太过持久地发出本波列至令它越过那停顿时间。

    图10表明又另一可用子程序,指名为Ⅲ。这方块Ⅲ将系统10修改至足以令使用者靠发出一比通常需要的波列要持久些来达到扩阔他的频率范围的效果。那即是说,维持至超过那停顿的时间。当机器探获持久超过某一预定时间长度的波列时,机器就在鉴定讯息之前(即是在解释之前)利用一个系统数将资料修改从而得到一个虚音程(Virtual    interval)。

    图10之方块Ⅲ内的m项是一系数,它可以是一范围内的任何一特别数值。有两个数值,0.5和2对人类说话者是特别有用。当m等于0.5的时候机器听话者就作高8度移调而当m等于2,就作低8度移调(即是DO-RE,音程1.125,若m等于0.5以及若RE被持续着,那就量出音程2.5或DO-RE′)。当说话者或唱者更进一步维持那波列就会实现重覆移调。这意思就是说话者的频率范围被虚假地扩阔了。并且,言辞般的输入容许使用者在舒服的频率范围内操作而竟然达至大数目的音程,好像他有非常广阔的声音频率范围似的。如此只需要用几个音调就可以发出更大数目的不同“字”(“Word”)讯号。

    以下是图10之方块Ⅲ的程序的适用列表:

    2420 PRINT CHR(7):REM BEEP FOR NEXT WAVE TRAIN

    2464    FOR    PS=1    TO    1000:NEXT:REM    PAUSE

    2466    A=PEEK(49348):REM    RESET    CIRCUIT    AND

    TEST    FOR    SILENCE

    2470    FOR    PS=1    TO    100:NEXT:REM    BRIEF    PAUSE

    2472    REM“WAVE    TRAIN    STILL    DETECTED?”

    2475    L=PEEK(49345):H=PEEK(49346)

    2478    IF    L=0    AND    H=0    THEN    GO    TO    2495:

    REM    NO    WAVE    DETECTED

    2480    AVE(W)=AVE(W)/2:REM    MULTIPLYING

    FACTOR=1/2

    2485    GO    TO    2420

    显然地从以上的描述,本发明指出一新的与电脑通讯用的系统。该系统用的概念是利用音乐的音程为码来通讯,而这就实质地扩大辨认口头命令的数目和使得辨认口头命令更为容易。

    该系统可以经济有效地实现和容易学习和有效地使用。它不是某个特定的使用者的,然而它又提供大数目的可被辨认的“字”(intervals)而它又能经济地制造和使用。

    虽然经已表示出和描写出本发明该系统的数种实现,但本领域的一般技术人员都会明白可以把系统10,100或在这里说明了的修改加以变化和修改而仍然不离开本发明的教导。故此,本发明保护范围必须只受伴随着的权利要求所限制。

电脑通讯系统.pdf_第1页
第1页 / 共40页
电脑通讯系统.pdf_第2页
第2页 / 共40页
电脑通讯系统.pdf_第3页
第3页 / 共40页
点击查看更多>>
资源描述

《电脑通讯系统.pdf》由会员分享,可在线阅读,更多相关《电脑通讯系统.pdf(40页珍藏版)》请在专利查询网上搜索。

一个系统用作与机器通讯。其中以音乐的音程作为码来传达预选了的命令或输入至一电脑。该系统可用人声相继地发出音调(DORE,等等)来建立音程并可用电路和程序来转换接收到的音或调为同一基本周期的脉冲列并储存和算出周期和音程。当某一特别的音程被接收到时,本设备包括一数位微型电脑例如苹果加TM型能执行一预设录下的子程序和并使得那线路复原来接收第二个音程。 。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1