(57)【特許請求の範囲】
【請求項１】
パラメータの現在値を記憶する現在値記憶手段と、
前記現在値記憶手段に記憶されているパラメータの現在値を増加させるためのパラメータ入力スイッチと、
前記パラメータ入力スイッチが所定時間以上継続して押されたかどうかを判断する判断手段と、
前記判断手段により前記パラメータ入力スイッチが所定時間以上継続して押されたことが判断された場合に、前記現在値記憶手段内の現在値を第１速度で連続的に増加させる速度制御手段と、
前記速度制御手段によって第１速度で連続的に増加している前記現在値記憶手段内の現在値が所定範囲の値になった場合に、前記現在値記憶手段内の現在値が前記第１速度より遅い第２速度で連続的に増加するように変更させる速度変更手段とを備え、
前記パラメータの現在値は、最小値から最大値までの範囲で変化可能であり、前記最大値に達すると前記最小値にラウンドし、
前記所定範囲は、前記パラメータ入力スイッチが押された時点で設定されているパラメータ値より所定値だけ小さい第１の値から前記パラメータ入力スイッチが押された時点で設定されているパラメータ値までの範囲である
電子楽器のパラメータ設定装置。
【請求項２】
パラメータの現在値を記憶する現在値記憶手段と、
前記現在値記憶手段に記憶されているパラメータの現在値を減少させるためのパラメータ入力スイッチと、
前記パラメータ入力スイッチが所定時間以上継続して押されたかどうかを判断する判断手段と、
前記判断手段により前記パラメータ入力スイッチが所定時間以上継続して押されたことが判断された場合に、前記現在値記憶手段内の現在値を第１速度で連続的に減少させる速度制御手段と、
前記速度制御手段によって第１速度で連続的に減少している前記現在値記憶手段内の現在値が所定範囲の値になった場合に、前記現在値記憶手段内の現在値が前記第１速度より遅い第２速度で連続的に減少するように変更させる速度変更手段とを備え、
前記パラメータの現在値は、最小値から最大値までの範囲で変化可能であり、前記最小値に達すると前記最大値にラウンドし、
前記所定範囲は、前記パラメータ入力スイッチが押された時点で設定されているパラメータ値より所定値だけ大きい第１の値から前記パラメータ入力スイッチが押された時点で設定されているパラメータ値までの範囲である
電子楽器のパラメータ設定装置。
【請求項３】
前記所定時間として任意の値を設定するための入力手段を更に備えた請求項１乃至２の何れか１項に記載の電子楽器のパラメータ設定装置。
【請求項４】
前記第１速度及び第２速度を規定する値として任意の値を入力するための入力手段を更に備えた請求項１乃至３の何れか１項に記載の電子楽器のパラメータ設定装置。
【請求項５】
前記所定値として任意の値を入力するための入力手段を更に備えた請求項１乃至４の何れか１項に記載の電子楽器のパラメータ設定装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、電子楽器にパラメータを設定するためのパラメータ設定装置に関し、特にパラメータ設定操作の操作性を向上させる技術に関する。
【０００２】
【従来の技術】
従来、音量値、音色番号、リズム番号といったパラメータを電子楽器に設定するパラメータ設定装置が知られている。このパラメータ設定装置は、一般に、パラメータ入力スイッチとパラメータ表示器とから構成されている。パラメータ入力スイッチはパラメータを設定するための操作子であり、例えばアップスイッチとダウンスイッチとから構成されるアップダウンスイッチ、インクリメンタ、ベンダーホイール等が実用化されている。また、パラメータ表示器は、パラメータ入力スイッチで入力されたパラメータ値を表示する。
【０００３】
以下、パラメータ入力スイッチとしてアップダウンスイッチが採用されたパラメータ設定装置について説明する。このパラメータ設定装置では、アップスイッチが単発的に押されると現在のパラメータ値が＋１だけ増加される。一方、所定時間以上押し続けられると現在のパラメータ値から連続的に増加される。この場合、パラメータ値が増加する速度は、一定であったり、又は押し続ける時間の経過に連れて早くなるように制御される。
【０００４】
同様に、ダウンスイッチが単発的に押されると現在のパラメータ値が−１だけ減少される。一方、所定時間以上押し続けられると現在のパラメータ値から連続的に減少される。この場合、パラメータ値が減少する速度は、一定であったり、又は押し続ける時間の経過に連れて早くなるように制御される。以上のような構成により、現在のパラメータ値から離れたパラメータ値を設定する場合に、迅速な設定ができるようになっている。
【０００５】
【発明が解決しようとする課題】
しかしながら、上述した従来のパラメータ設定装置は、以下のような問題がある。即ち、パラメータ入力スイッチを所定時間以上押し続けた場合に、一定のスピードでパラメータ値が変化するパラメータ設定装置では、現在値から目標値に到達するまでに時間がかかる。一方、押し続ける時間の経過に連れて変化する速度が早くなるパラメータ設定装置では、目標値を通り過ぎてしまうことが多いのでパラメータ入力スイッチを操作して目標値に戻す必要がある。この場合、操作するスイッチを変更する必要があり、その操作が煩わしいという問題がある。
【０００６】
例えば、現在値が「５０」、目標値が「９７」であって、パラメータ値の可変範囲が「０〜１００」である場合に、アップスイッチを押し続けるとパラメータ値は「５０」から徐々に変化速度を上げながら変化する。従って、目標値である「９７」で停止することは困難であり、多くの場合「１００」まで至ってしまう。この場合は、その後にダウンスイッチを単発的に３回操作して目標値の「９７」まで戻すという操作が必要である。
【０００７】
また、アップスイッチ及びダウンスイッチを備えたパラメータ設定装置には、可変範囲の最大値まで増加されると最小値にラウンドし、逆に、最小値まで減少されると最大値にラウンドするものも知られている。この場合、上記の例でいうと、アップスイッチを押し続けることによりパラメータ値は「５０」から徐々に変化速度を上げながら変化し、目標値である「９７」を通過し、更に最大値である「１００」をもラウンドして最小値の近傍の値になることがある。この場合は、ダウンスイッチの操作回数も多くなり、パラメータの設定に時間がかかる。
【０００８】
更に、アップスイッチ及びダウンスイッチの何れか一方のみを備えたパラメータ設定装置も知られている。このアップスイッチのみを備えたパラメータ設定装置では、可変範囲の最大値まで増加されると最小値にラウンドし、逆に、ダウンスイッチのみを備えたパラメータ設定装置では、最小値まで減少されると最大値にラウンドする。図１４は、アップスイッチのみを備え、且つ一定のスピードでパラメータ値が変化するパラメータ設定装置の動作例を示す。
【０００９】
このようなパラメータ設定装置では、目標値が現在の設定値より僅かに小さい場合（アップスイッチを備えたパラメータ設定装置）又は目標値が現在の設定値より僅かに大きい場合（ダウンスイッチを備えたパラメータ設定装置）に、目標値を通過してしまうと更に一周させなければならず、パラメータ値を所望値に設定するのが難しいという問題がある。特に、パラメータ値の変化速度を上げるように動作するパラメータ設定装置では目標値を通過してしまうことが多く、パラメータ設定操作が難しいという問題がある。
【００１０】
本発明は、上述した諸問題を解消するためになされたもので、パラメータの設定を容易に行うことのできる電子楽器のパラメータ設定装置を提供することを目的とする。
【００１１】
【課題を解決するための手段】
本発明に係るパラメータ設定装置は、上記目的を達成するために、パラメータの現在値を記憶する現在値記憶手段と、前記現在値記憶手段に記憶されているパラメータの現在値を変化させるためのパラメータ入力スイッチと、前記パラメータ入力スイッチが所定時間以上継続して押されたかどうかを判断する判断手段と、前記判断手段により前記パラメータ入力スイッチが所定時間以上継続して押されたことが判断された場合に、前記現在値記憶手段内の現在値を第１速度で連続的に変化させる速度制御手段と、前記速度制御手段によって第１速度で連続的に変化されている前記現在値記憶手段内の現在値が所定範囲の値になった場合に、前記現在値記憶手段内の現在値が前記第１速度より遅い第２速度で連続的に変化するように変更させる速度変更手段、とを備えている。
【００１２】
この場合、前記パラメータは最小値から最大値までの範囲でのみ変化可能に構成し、前記所定範囲は、前記最大値から該最大値より小さい第１の値までの範囲及び前記最小値から該最小値より大きい第２の値までの範囲の少なくとも一方であるように構成できる。また、前記パラメータは最小値から最大値までの範囲で、前記最小値及び前記最大値をラウンドして変化可能に構成し、前記所定範囲は、前記最大値より小さい第１の値から前記最小値より大きい第２の値までの範囲であるように構成できる。これらの場合、パラメータ入力スイッチは、前記パラメータを増加させるアップスイッチと前記パラメータを減少させるダウンスイッチとから構成できる。
【００１３】
また、このパラメータ設定装置におけるパラメータ入力スイッチを、前記パラメータを増加させるアップスイッチ又は前記パラメータを減少させるダウンスイッチから構成し、前記パラメータは最小値から最大値までの範囲で、前記最小値及び前記最大値をラウンドして変化可能であり、前記所定範囲は、前記パラメータ入力スイッチが押された時点で設定されているパラメータ値より小さい第１の値から前記パラメータ入力スイッチが押された時点で設定されているパラメータ値までの範囲であるように構成できる。
【００１４】
上記のパラメータ設定装置は、前記所定時間として任意の値を設定するための入力手段を更に備えるように構成できる。また、前記第１速度及び第２速度を規定する値として任意の値を入力するための入力手段を更に備えるように構成できる。更に、前記所定範囲を規定する値として任意の値を入力するための入力手段を更に備えるように構成できる。
【００１５】
【発明の実施の形態】
以下、本発明に係る電子楽器のパラメータ設定装置の実施の形態を図面を参照しながら詳細に説明する。以下では、パラメータ設定装置は電子楽器に組み込まれているものとする。従って、本発明の理解を容易にするために、電子楽器の全体の構成及び動作をも含めて説明する。なお、各実施の形態で同一又は相当部分には同一の符号を付して説明を省略又は簡略化する。
【００１６】
（実施の形態１）
図１は、本発明に係るパラメータ設定装置が適用された電子楽器の構成を示すブロック図である。この電子楽器は、システムバス２６で相互に接続された中央処理装置（以下、「ＣＰＵ」という）１０、プログラムメモリ１１、ワークメモリ１２、キースキャン回路１３、パネルスキャン回路１４及び楽音発生部１５から構成されている。システムバス２６は、上記各構成要素の間でアドレス信号、データ信号又は制御信号等を送受するために使用される。
【００１７】
ＣＰＵ１０は、プログラムメモリ１１に記憶されている制御プログラムに従って電子楽器の全体を制御する。このＣＰＵ１０による制御の内容は、後にフローチャートを参照しながら詳細に説明する。
【００１８】
プログラムメモリ１１は、例えばリードオンリメモリ（ＲＯＭ）から構成されており、上述した制御プログラムの他に、ＣＰＵ１０が使用する種々の固定データを記憶している。
【００１９】
ワークメモリ１２は、例えばランダムアクセスメモリ（ＲＡＭ）で構成され、この電子楽器で処理が行われる際に、種々のデータが一時記憶される。このワークメモリ１２には、電子楽器を制御するための各種レジスタ、フラグ、カウンタ等が定義されている。各種レジスタには、パラメータの現在値を記憶する現在値レジスタ、音量の現在値を記憶する音量レジスタ、現在選択されている音色番号を記憶する音色番号レジスタ、現在選択されているリズム番号を記憶するリズム番号レジスタ、新パネルデータレジスタ、旧パネルデータレジスタ、識別ナンバレジスタ等が含まれる。
【００２０】
また、フラグには、所定時間以上連続して操作されたかどうかを示すタイムフラグＴＭＦＬＧが含まれる。また、カウンタには、連続して操作された時間を計数するためのタイムカウンタＴＭＣＮＴ、ウェイト時間を計数するウエイトカウンタＷＴＣＮＴが含まれる。
【００２１】
キースキャン回路１３には複数の鍵を有する鍵盤装置２０が接続されている。この鍵盤装置２０は、押鍵によって発音を指示し、離鍵によって消音を指示するために使用される。この鍵盤装置２０としては、例えば、異なる押圧深さでそれぞれオンになる第１キースイッチＳＷ１及び第２キースイッチＳＷ２を各鍵に備えた２接点方式の鍵盤装置を用いることができる。
【００２２】
このキースキャン回路１３は、ＣＰＵ１０からの指令に応答して鍵盤装置２０上の各キースイッチをスキャンする。そして、このスキャンにより得られた各キースイッチの開閉状態を示す信号に基づいて各鍵を１ビットに対応させたキーデータ及び押鍵の早さを示すタッチデータを作成する。これらのキーデータ及びタッチデータは、システムバス２６を介してＣＰＵ１０に送られる。
【００２３】
パネルスキャン回路１４には操作パネル２１が接続されている。この操作パネル２１には、パラメータ入力スイッチ３０及びパラメータ表示器３１が含まれる。パラメータ入力スイッチ３０は、例えば図２（Ａ）に示すような、アップスイッチＵＰとダウンスイッチＤＯＷＮとから構成されるアップダウンスイッチによって構成されている。
【００２４】
アップスイッチＵＰは、パラメータ値を増加させるために使用される。このアップスイッチＵＰが単発的に押されると現在値レジスタに格納されている現在のパラメータ値が「＋１」だけ増加され、所定時間以上押し続けられると現在のパラメータ値から連続的に増加される。また、ダウンスイッチＤＯＷＮは、パラメータ値を減少させるために使用される。このダウンスイッチＤＯＷＮが単発的に押されると現在値レジスタに格納されている現在のパラメータ値が「−１」だけ減少され、所定時間以上押し続けられると現在のパラメータ値から連続的に減少される。このようにして変更された現在値レジスタの内容がパラメータ、例えば音量値、音色番号、リズム番号等として使用される。
【００２５】
パラメータ表示器３１はＬＥＤやＬＣＤで構成されており、上記現在値レジスタの内容を表示する。従って、ユーザはこのパラメータ表示器３１を見ながらパラメータ入力スイッチ３０（アップスイッチＵＰ及びダウンスイッチＤＯＷＮ）を操作することにより、パラメータを所望の値に設定することができる。
【００２６】
なお、バッファ入力スイッチ３０としては、図２（Ｂ）に示すようなインクリメンタスイッチ、図２（Ｃ）に示すようなベンダーホイール等を用いることもできる。また、実際の電子楽器に設けられる操作パネルには、上記以外に、種々のパネルスイッチ、これらパネルスイッチの設定状態を表示するＬＥＤ表示器等が設けられているが図示を省略してある。
【００２７】
パネルスキャン回路１４は、ＣＰＵ１０からの指令に応じて操作パネル２１の各スイッチをスキャンする。そして、このスキャンにより得られた各スイッチの開閉状態を示す信号に基づいて、各スイッチを１ビットに対応させたパネルデータを作成する。各ビットは、例えば「１」でオン、「０」でオフ状態を表す。このパネルデータは、システムバス２６を介してＣＰＵ１０に送られ、パネルイベントが発生したかどうかを判断するために使用される。また、このパネルスキャン回路１４は、操作されることによりイベントが発生したスイッチの識別ナンバを生成する。これらパネルデータ及び識別ナンバは、システムバス２６を介してＣＰＵ１０に送られる。また、パネルスキャン回路１４は、ＣＰＵ１０から送られてきた表示データをパラメータ表示器３１に送る。これにより、ＣＰＵ１０から送られてきた現在値レジスタの内容がパラメータ表示器３１に表示される。
【００２８】
楽音発生部１５は、ＣＰＵ１０からの指示に応答してデジタル楽音信号を発生する。この楽音発生部で発生されたデジタル楽音信号は、Ｄ／Ａ変換部２２に送られる。Ｄ／Ａ変換部２２は、受け取ったデジタル楽音信号をアナログ楽音信号に変換してアナログ信号処理部２３に送る。アナログ信号処理部２３は、アナログ楽音信号に例えば音響効果信号を付加して増幅器２４に送る。増幅器２４は、アナログ信号処理部２３からの信号を増幅してスピーカ２５に送る。これにより、スピーカ２５から楽音が発生される。
【００２９】
次に、以上のように構成される電子楽器において、パラメータを設定する場合の操作を説明する。
【００３０】
ユーザは、先ず、電子楽器に通常備えられているモード設定機能を用いて、電子楽器の動作モードをパラメータ設定モードに移行させる。このパラメータ設定モードに入ると、ユーザは、操作パネル２１上の図示しないスイッチを操作して設定しようとするパラメータの種類、例えば、音量、音色番号、リズム番号等の中から１つを選択する。今、音量が選択されたとすると、音量レジスタの内容が現在値レジスタにコピーされる。
【００３１】
この状態でパラメータ入力スイッチ３０が操作されると、その操作に応答して現在値レジスタの内容が増減され、その増減結果がパラメータ表示器３１に表示される。そして、パラメータ入力スイッチ３０が一定時間以上操作されないと、その時点で現在値レジスタに格納されているパラメータの現在値が音量レジスタに格納され、パラメータ設定操作が完了する。
【００３２】
次に、上記のように構成された、本発明の実施の形態１に係るパラメータ設定装置が適用された電子楽器の動作を図３〜図８に示したフローチャートを参照しながら説明する。なお、この実施の形態１に係るパラメータ設定装置では、パラメータは、最小値ＭＩＮである「０」から最大値ＭＡＸである「１００」までの範囲で変化するものとする。また、準最大値ＮＭＡＸとして「９０」が、準最小値ＮＭＩＮとして「１０」がそれぞれ規定されているものとする。なお、これら最小値ＭＩＮ、最大値ＭＡＸ、準最大値ＮＭＡＸ及び準最小値ＮＭＩＮは、このパラメータ設定装置で設定可能なパラメータの各１つとして、ユーザがパラメータ入力スイッチ３０を用いて任意に設定するように構成できる。
【００３３】
（１）メイン処理
図３は本発明の実施の形態１に係るパラメータ設定装置が適用された電子楽器のメイン処理を示すフローチャートである。このメイン処理ルーチンは電源の投入により起動される。電源が投入されると、先ず、イニシャライズが行われる（ステップＳ１０）。このイニシャライズでは、ＣＰＵ１０の内部のハードウエアが初期状態に設定されると共に、ワークメモリ１２に定義されているレジスタ、カウンタ、フラグ等に初期値が設定される。
【００３４】
このイニシャライズが終了すると、次いで、パネルスイッチのイベントが検出されたかどうかが調べられる（ステップＳ１１）。即ち、ＣＰＵ１０は、パネルスキャン回路１４からパネルデータ（以下、「新パネルデータ」という）を取り込み、新パネルデータレジスタに格納する。次いで、この新パネルデータと、前回にステップＳ１１で取り込まれて既に旧パネルデータレジスタに記憶されているパネルデータ（以下、「旧パネルデータ」という）との排他的論理和をとってパネルイベントマップを作成する。このパネルイベントマップがゼロであればパネルスイッチイベントは検出されなかったものと、そうでなければパネルスイッチイベントが検出されたものとそれぞれ判断される。
【００３５】
ここで、パネルスイッチイベントが検出されると、パネルスイッチイベントに対応するパネルスイッチに割り当てられている機能を実現するためのパネルスイッチイベント処理が実行される（ステップＳ１２）。このパネルスイッチイベント処理の詳細は後述する。一方、上記ステップＳ１１でパネルスイッチイベントが検出されなければ、ステップＳ１２の処理はスキップされる。
【００３６】
次いで、「その他の処理」が行われる（ステップＳ１３）。この「その他の処理」では、鍵盤装置２０の操作に基づいて生成されたキーデータ及びタッチデータに応じた発音処理及び消音処理、外部からの受信されたＭＩＤＩデータに応じたＭＩＤＩ処理、自動演奏処理等が行われる。その後、シーケンスはステップＳ１１に戻り、以下ステップＳ１１〜Ｓ１３の処理が繰り返される。この繰り返し実行の過程で、操作パネル２１の操作、鍵盤装置２０の操作、ＭＩＤＩデータの受信といったイベントが発生すると、それらのイベントに応じた処理が行われ、以て電子楽器としての各種機能が発揮される。
【００３７】
（２）パネルスイッチイベント処理
次に、上記メイン処理ルーチンのステップＳ１２で行われるパネルスイッチイベント処理の詳細を、図４に示したフローチャートを参照しながら説明する。このパネルスイッチイベント処理では、先ず、操作パネル２１から送られてくる識別ナンバが識別ナンバレジスタに格納される（ステップＳ２０）。
【００３８】
次いで、識別ナンバレジスタの内容がパネル入力スイッチ３０に割り当てられた識別ナンバ、つまりアップスイッチＵＰの識別ナンバ又はダウンスイッチＤＯＷＮの識別ナンバであるかどうかが調べられる（ステップＳ２１）。ここで、識別ナンバレジスタの内容がパネル入力スイッチ３０に割り当てられた識別ナンバであることが判断されると、後述するパラメータ入力処理が行われ（ステップＳ２２）、その後、シーケンスはステップＳ２３に分岐する。一方、識別ナンバレジスタの内容がパネル入力スイッチ３０に割り当てられた識別ナンバでないことが判断されると、その他のスイッチ処理が行われる（ステップＳ２３）。この「その他のスイッチ処理」では、パラメータ入力スイッチ３０以外のパネルスイッチ、例えば音色選択スイッチ、リズム選択スイッチ等のイベントに対する処理が行われる。その後、シーケンスはメイン処理ループにリターンする。
【００３９】
（３）パラメータ入力処理
次に、上記パネルスイッチイベント処理ルーチンのステップＳ２２で行われるパネル入力処理の詳細を、図５〜図８に示したフローチャートを参照しながら説明する。このパラメータ入力処理では、先ず、識別ナンバレジスタの内容がアップスイッチＵＰに割り当てられた識別ナンバであるかどうかが調べられる（ステップＳ３０）。
【００４０】
ここで、識別ナンバレジスタの内容がアップスイッチＵＰに割り当てられた識別ナンバであることが判断されると、以下、アップスイッチＵＰのイベントに対する処理が実行される。即ち、先ず、現在値レジスタの値Ｐがインクリメント（＋１）される（ステップＳ３１）。このステップＳ３１では、インクリメントされた値Ｐを操作パネル２１のパラメータ表示器３１に表示させる処理も行われる。次いで、連続操作判定処理が行われる（ステップＳ３２）。この連続操作判定処理では、アップスイッチＵＰが所定時間連続して押されたかどうかが判定され、連続して押されたことが判定された場合はタイムフラグＴＭＦＬＧが「１」にセットされ、そうでない場合はタイムフラグＴＭＦＬＧが「０」にセットされる。
【００４１】
ここで、上記連続操作判定処理の詳細を図７のフローチャートを参照しながら説明する。この連続操作判定処理では、先ず、タイムフラグＴＭＦＬＧが「０」にセットされると共に、タイムカウンタＴＭＣＮＴの内容が「０」にクリアされる（ステップＳ５０）。次いで、タイムカウンタＴＭＣＮＴの内容がインクリメント（＋１）される（ステップＳ５１）。
【００４２】
次いで、タイムカウンタＴＭＣＮＴの内容が「５０」より小さいかどうかが調べられ（ステップＳ５２）、小さいことが判断されると、スイッチオフイベントが発生したかどうかが調べられる（ステップＳ５４）。ここで調べられるスイッチは、この連続操作判定処理がステップＳ３２からコールされた場合はアップスイッチＵＰであり、後述するステップＳ４１からコールされた場合はダウンスイッチＤＯＷＮである。また、タイムカウンタＴＭＣＮＴの内容と比較する値「５０」はパラメータ入力スイッチが連続して押されたことを判定する時間を決定するための値である。このタイムカウンタＴＭＣＮＴの内容と比較する値は「５０」に限らず、ＣＰＵ１０の処理速度を勘案して任意に決定できる。このタイムカウンタＴＭＣＮＴの内容と比較する値は、このパラメータ設定装置で設定可能なパラメータの１つとして、ユーザがパラメータ入力スイッチ３０を用いて任意に設定するように構成できる。
【００４３】
上記ステップＳ５４でスイッチオフイベントがないことが判断されると、シーケンスはステップＳ５１に戻り、以下、ステップＳ５１→Ｓ５２→Ｓ５４を繰り返し実行する。そして、上記ステップＳ５４でスイッチオフイベントがあることが判断されると、所定時間の間にアップスイッチＵＰ又はダウンスイッチＤＯＷＮが離されたことが認識され、タイムフラグＴＭＦＬＧが「０」にクリアされる（ステップＳ５５）。
【００４４】
上記ステップＳ５２で、タイムカウンタＴＭＣＮＴの内容が「５０」以上になったことが判断されると、所定時間の間にアップスイッチＵＰ又はダウンスイッチＤＯＷＮが離されなかったことが認識され、タイムフラグＴＭＦＬＧが「１」にセットされる（ステップＳ５３）。その後、シーケンスはパラメータ入力処理ルーチンにリターンする。
【００４５】
パラメータ入力処理ルーチンでは、次いで、タイムフラグＴＭＦＬＧが「１」であるかどうかが調べられる（ステップＳ３３）。ここで、タイムフラグＴＭＦＬＧが「０」であることが判断されると、アップスイッチＵＰが単発的に押されたことが判断され、シーケンスはパネルスイッチイベント処理ルーチンにリターンする。これにより、パラメータ値が「１」だけ増加されてパラメータ設定処理が終了する。
【００４６】
一方、上記ステップＳ３３で、タイムフラグＴＭＦＬＧが「１」であることが判断されると、アップスイッチＵＰが所定時間以上連続して操作されていることが認識され、現在値レジスタの値Ｐがインクリメント（＋１）される（ステップＳ３４）。このステップＳ３４では、インクリメントされた値Ｐを操作パネル２１のパラメータ表示器３１に表示させる処理も行われる。次いで、現在値レジスタの値Ｐが準最大値ＮＭＡＸより小さいかどうかが調べられる（ステップＳ３５）。
【００４７】
ここで、現在値レジスタの値Ｐが準最大値ＮＭＡＸより小さいことが判断されると、次いで、現在値レジスタの値Ｐが最大値ＭＡＸに等しくなったかどうかが調べられる（ステップＳ３７）。この場合、つまりシーケンスがステップＳ３５からステップＳ３７へ進む場合、ステップＳ３７では、必ず現在値レジスタの値Ｐが最大値ＭＡＸに等しくないことが判断されるので、次いで、アップスイッチＵＰのオフイベントがあるかどうかが調べられる（ステップＳ３８）。
【００４８】
ここでアップスイッチＵＰのオフイベントがないことが判断されるとシーケンスはステップＳ３４に戻り、以下、ステップＳ３４→Ｓ３５→Ｓ３７→Ｓ３８の処理が繰り返される。これにより、パラメータ値は第１速度でインクリメントされる。上記ステップＳ３４→Ｓ３５→Ｓ３７→Ｓ３８の繰り返し実行の過程でステップＳ３８でアップスイッチＵＰのオフイベントが発生したことが判断されると、シーケンスはパネルイベント処理ルーチンにリターンする。
【００４９】
また、上記ステップＳ３４→Ｓ３５→Ｓ３７→Ｓ３８の繰り返し実行の過程でステップＳ３５で、現在値レジスタの値Ｐが準最大値ＮＭＡＸ以上であることが判断されると、遅速化処理が実行される（ステップＳ３６）。この遅速化処理では、一定時間だけシーケンスの進行が停止される。
【００５０】
ここで、上記遅速化処理の詳細を図８のフローチャートを参照しながら説明する。この遅速化処理では、先ず、ウエイトカウンタＷＴＣＮＴの内容が「０」にクリアされる（ステップＳ６０）。次いで、ウエイトカウンタＷＴＣＮＴの内容がインクリメント（＋１）される（ステップＳ６１）。次いで、ウエイトカウンタＷＴＣＮＴの内容が「５０」より小さいかどうかが調べられる（ステップＳ６２）。ここで、ウエイトカウンタＷＴＣＮＴの内容が「５０」より小さいことが判断されると、シーケンスはステップＳ６１に戻り、以下ステップＳ６１とステップＳ６２とを繰り返し実行する。
【００５１】
そして、この繰り返し実行の過程で、ステップＳ６２で、ウエイトカウンタＷＴＣＮＴの内容が「５０」以上になったことが判断されると、シーケンスはコールされたステップの次のステップ（この場合はパラメータ入力処理ルーチンのステップＳ３７）にリターンする。以上の動作により、この遅速化処理ルーチンがコールされることにより所定時間だけシーケンスの進行が停止するという、所謂ウエイトがかけられることになる。なお、ウエイトカウンタＷＴＣＮＴの内容と比較する値は「５０」に限らず、ＣＰＵ１０の処理速度と必要なウエイト時間を勘案して任意に決定できる。ウエイトカウンタＷＴＣＮＴの内容と比較する値は、このパラメータ設定装置で設定可能なパラメータの１つとして、ユーザがパラメータ入力スイッチ３０を用いて任意に設定するように構成できる。
【００５２】
パラメータ入力処理ルーチンでは、現在値レジスタの値Ｐが最大値ＭＡＸに等しくなったかどうかが調べられる（ステップＳ３７）。そして、現在値レジスタの値Ｐが最大値ＭＡＸに等しくなければステップＳ３８へ進む。以後は、ステップＳ３４→Ｓ３５→Ｓ３６→Ｓ３７→Ｓ３８の処理が繰り返される。これにより、パラメータ値は上記第１速度より遅い第２速度でインクリメントされる。ステップＳ３４→Ｓ３５→Ｓ３６→Ｓ３７→Ｓ３８の繰り返し処理の過程で、ステップＳ３７で現在値レジスタの値Ｐが最大値ＭＡＸに等しくなったことが判断されると、シーケンスはパラメータスイッチイベント処理ルーチンにリターンする。従って、この実施の形態１では、アップスイッチＵＰの操作の結果、最大値ＭＡＸまで到達したら以後はアップスイッチＵＰが操作されてもパラメータ値は最大値ＭＡＸを保ったままである。
【００５３】
上記ステップＳ３０、識別ナンバレジスタの内容がダウンスイッチＤＯＷＮに割り当てられた識別ナンバであることが判断されると、以下、ダウンスイッチＤＯＷＮのイベントに対する処理が実行される。即ち、先ず、現在値レジスタの値Ｐがデクリメント（−１）される（ステップＳ４０）。このステップＳ４０では、デクリメントされた値Ｐを操作パネル２１のパラメータ表示器３１に表示させる処理も行われる。次いで、連続操作判定処理が行われる（ステップＳ４１）。この連続操作判定処理では、上述したように、ダウンスイッチＤＯＷＮが所定時間連続して押されたかどうかが判定され、連続して押されたことが判定された場合はタイムフラグＴＭＦＬＧが「１」にセットされ、そうでない場合はタイムフラグＴＭＦＬＧが「０」にセットされる。
【００５４】
次いで、タイムフラグＴＭＦＬＧが「１」であるかどうかが調べられる（ステップＳ４２）。ここで、タイムフラグＴＭＦＬＧが「０」であることが判断されると、ダウンスイッチＤＯＷＮが単発的に押されたことが判断され、シーケンスはパネルスイッチイベント処理ルーチンにリターンする。これにより、パラメータ値が「１」だけ減少されてパラメータ設定処理が終了する。
【００５５】
一方、上記ステップＳ４２で、タイムフラグＴＭＦＬＧが「１」であることが判断されると、ダウンスイッチＤＯＷＮが所定時間以上連続して操作されていることが認識され、現在値レジスタの値Ｐがデクリメント（−１）される（ステップＳ４３）。このステップＳ４３では、デクリメントされた値Ｐを操作パネル２１のパラメータ表示器３１に表示させる処理も行われる。次いで、現在値レジスタの値Ｐが準最小値ＮＭＩＮより大きいかどうかが調べられる（ステップＳ４４）。
【００５６】
ここで、現在値レジスタの値Ｐが準最小値ＮＭＩＮより大きいことが判断されると、次いで、現在値レジスタの値Ｐが最小値ＭＩＮに等しくなったかどうかが調べられる（ステップＳ４６）。この場合、つまりシーケンスがステップＳ４４からステップＳ４６へ進む場合、ステップＳ４６では、必ず現在値レジスタの値Ｐが最小値ＭＩＮに等しくないことが判断されるので、次いで、ダウンスイッチＤＯＷＮのオフイベントがあるかどうかが調べられる（ステップＳ４７）。
【００５７】
ここでダウンスイッチＤＯＷＮのオフイベントがないことが判断されるとシーケンスはステップＳ４３に戻り、以下、ステップＳ４３→Ｓ４４→Ｓ４６→Ｓ４７の処理が繰り返される。これにより、パラメータ値は第１速度でデクリメントされる。上記ステップＳ４３→Ｓ４４→Ｓ４６→Ｓ４７の繰り返し実行の過程でステップＳ４７でＳ４３→Ｓ４４→Ｓ４６→Ｓ４７のオフイベントが発生したことが判断されると、シーケンスはパネルイベント処理ルーチンにリターンする。
【００５８】
また、上記ステップＳ４３→Ｓ４４→Ｓ４６→Ｓ４７の繰り返し実行の過程でステップＳ４４で、現在値レジスタの値Ｐが準最小値ＮＭＩＮより大きいことが判断されると、遅速化処理が実行される（ステップＳ４５）。この遅速化処理では、上述したように、一定時間だけシーケンスの進行が停止される。
【００５９】
次いで、現在値レジスタの値Ｐが最小値ＭＩＮに等しくなったかどうかが調べられる（ステップＳ４６）。そして、現在値レジスタの値Ｐが最小値ＭＩＮに等しくなければステップＳ４７へ進む。以後は、ステップＳ４３→Ｓ４４→Ｓ４５→Ｓ４６→Ｓ４７の処理が繰り返される。これにより、パラメータ値は上記第１速度より遅い第２速度でデクリメントされる。ステップＳ４３→Ｓ４４→Ｓ４５→Ｓ４６→Ｓ４７の繰り返し処理の過程で、ステップＳ４６で現在値レジスタの値Ｐが最小値ＭＩＮに等しくなったことが判断されると、シーケンスはパラメータスイッチイベント処理ルーチンにリターンする。従って、この実施の形態１では、Ｓ４３→Ｓ４４→Ｓ４５→Ｓ４６→Ｓ４７の操作の結果、最小値ＭＩＮまで到達したら以後はダウンスイッチＤＯＷＮが操作されてもパラメータ値は最小値ＭＩＮを保ったままである。
【００６０】
以上説明したように、この実施の形態１に係るパラメータ設定装置によれば、パラメータ入力スイッチ３０を押し続けることによりパラメータ値を第１速度で連続的に変更する際に、現在値レジスタに格納されているパラメータ値が、最大値ＭＡＸの近傍の値である準最大値ＮＭＡＸより大きくなった場合及び最小値ＭＩＮの近傍の値である準最小値ＮＭＩＮより小さくなった場合は、パラメータ値の変化速度を上記第１速度より遅い第２速度に変更するので、最大値ＭＡＸ及び最小値ＭＩＮの近辺のパラメータ値を設定する操作が容易になる。
【００６１】
（実施の形態２）
本発明の実施の形態２に係るパラメータ設定装置では、パラメータは、最小値ＭＩＮである「０」から最大値ＭＡＸである「１００」までの範囲で変化するが、アップスイッチＵＰを操作することにより現在値レジスタの内容が最大値ＭＡＸを越えた場合は最小値ＭＩＮにラウンドし、ダウンスイッチＤＯＷＮを操作することにより現在値レジスタの内容が最小値ＭＩＮを越えた場合は最大値ＭＡＸにラウンドするものとする。また、準最大値ＮＭＡＸとして「９０」が、準最小値ＮＭＩＮとして「１０」がそれぞれ規定されることは上述した実施の形態１と同じである。
【００６２】
この実施の形態２に係るパラメータ設定装置の構成は、実施の形態１に係るパラメータ設定装置の構成と同じである。また、この実施の形態２に係るパラメータ設定装置の動作は、パラメータ入力処理の動作が上述した実施の形態１と相違するだけであるので、以下では、相違する点だけを説明する。
【００６３】
図９及び図１０は、この実施の形態２に係るパラメータ設定装置が適用された電子楽器のパラメータ入力処理を示すフローチャートである。図９に示すフローチャートでは、図５に示したフローチャートにステップＳ３９の処理が追加され、図１０に示すフローチャートでは、図６に示したフローチャートにステップＳ４８の処理が追加されている。
【００６４】
アップスイッチＵＰのイベントに対する処理では、ステップＳ３７で、現在値レジスタの値Ｐが最大値ＭＡＸに等しくなったことが判断されると、最小値ＭＩＮが現在値レジスタの値Ｐとして設定される（ステップＳ３９）。その後、シーケンスはステップＳ３８に分岐する。これにより、アップスイッチＵＰの操作の結果、最大値ＭＡＸまで到達したら最小値ＭＩＮにラウンドする機能が実現されている。
【００６５】
また、ダウンスイッチＤＯＷＮのイベントに対する処理では、ステップＳ４６で、現在値レジスタの値Ｐが最小値ＭＩＮに等しくなったことが判断されると、最大値ＭＡＸが現在値レジスタの値Ｐとして設定される（ステップＳ４８）。その後、シーケンスはステップＳ４７に分岐する。これにより、ダウンスイッチＤＯＷＮの操作の結果、最小値ＭＩＮまで到達したら最大値ＭＡＸにラウンドする機能が実現されている。
【００６６】
以上説明したように、この実施の形態２に係るパラメータ設定装置によれば、実施の形態１と同様の効果を奏する。また、可変範囲の最大値まで増加されると最小値にラウンドし、逆に、最小値まで減少されると最大値にラウンドするようなパラメータ設定装置であっても、従来のようにパラメータ入力スイッチの操作回数が多くなることがない。
【００６７】
（実施の形態３）
本発明の実施の形態３に係るパラメータ設定装置が適用された電子楽器は、アップスイッチＵＰだけを備えている。また、パラメータは、最小値ＭＩＮである「０」から最大値ＭＡＸである「１００」までの範囲で変化するが、アップスイッチＵＰを操作することにより現在値レジスタの内容が最大値ＭＡＸを越えた場合は最小値ＭＩＮにラウンドする。
【００６８】
この実施の形態３に係るパラメータ設定装置の構成は、パラメータ入力スイッチ３０がアップスイッチＵＰだけで構成されていることを除き、実施の形態１に係るパラメータ設定装置の構成と同じである。
【００６９】
また、この実施の形態３に係るパラメータ設定装置の動作は、パラメータ入力処理の動作が上述した実施の形態１と相違するだけであるので、以下では、相違する点だけを説明する。
【００７０】
図１１は、この実施の形態３に係るパラメータ設定装置が適用された電子楽器のパラメータ入力処理を示すフローチャートである。
【００７１】
このパラメータ入力処理では、先ず、ワークメモリ１２に設けられたバッファＢＵＦに現在値レジスタの値Ｐが格納される（ステップＳ７０）。次いで、現在値レジスタの値Ｐがインクリメント（＋１）される（ステップＳ７１）。このステップＳ７１では、インクリメントされた値Ｐを操作パネル２１のパラメータ表示器３１に表示させる処理も行われる。次いで、連続操作判定処理が行われる（ステップＳ７２）。この連続操作判定処理では、アップスイッチＵＰが所定時間連続して押されたかどうかが判定され、連続して押されたことが判定された場合はタイムフラグＴＭＦＬＧが「１」にセットされ、そうでない場合はタイムフラグＴＭＦＬＧが「０」にセットされる。
【００７２】
次いで、タイムフラグＴＭＦＬＧが「１」であるかどうかが調べられる（ステップＳ７３）。ここで、タイムフラグＴＭＦＬＧが「０」であることが判断されると、アップスイッチＵＰが単発的に押されたことが判断され、シーケンスはパネルスイッチイベント処理ルーチンにリターンする。これにより、パラメータ値が「１」だけ増加されてパラメータ設定処理が終了する。
【００７３】
一方、上記ステップＳ７３で、タイムフラグＴＭＦＬＧが「１」であることが判断されると、アップスイッチＵＰが所定時間以上連続して操作されていることが認識され、現在値レジスタの値Ｐがインクリメント（＋１）される（ステップＳ７４）。このステップＳ７４では、インクリメントされた値Ｐを操作パネル２１のパラメータ表示器３１に表示させる処理も行われる。次いで、上記インクリメントの結果、現在値レジスタの値Ｐが最大値ＭＡＸに等しくなったかどうかが調べられる（ステップＳ７５）。
【００７４】
ここで、現在値レジスタの値Ｐが最大値ＭＡＸに等しくないことが判断されるとシーケンスはステップＳ７７へ進み、等しいことが判断されると、最小値ＭＩＮが現在値レジスタの値Ｐとして設定される（ステップＳ７６）。これにより、アップスイッチＵＰの操作の結果、最大値ＭＡＸまで到達したら最小値ＭＩＮにラウンドする機能が実現されている。その後、シーケンスはステップＳ７７に分岐する。
【００７５】
上記ステップＳ７７では、現在値レジスタの値ＰがバッファＢＵＦに格納された値から所定値Ｘを減算した値ＢＵＦ−Ｘ以上になったかどうかが調べられる（ステップＳ７７）。ここで、値ＢＵＦ−Ｘより小さいことが判断されると、シーケンスはステップＳ８０へ分岐する。
【００７６】
一方、上記ステップＳ７７で、現在値レジスタの値Ｐが、値ＢＵＦ−Ｘ以上であることが判断されると、次いで、現在値レジスタの値ＰがバッファＢＵＦに格納された値より小さいかどうかが調べられる（ステップＳ７８）。ここで、現在値レジスタの値Ｐが、バッファＢＵＦに格納された値より小さいことが判断されると、シーケンスはステップＳ８０へ進み、そうでないことが判断されると遅速化処理が実行される（ステップＳ７９）。この遅速化処理では、上述したように、一定時間だけシーケンスの進行が停止される。その後、シーケンスはステップＳ８０へ分岐する。
【００７７】
ステップＳ８０では、アップスイッチＵＰのオフイベントがあるかどうかが調べられる。ここでアップスイッチＵＰのオフイベントがないことが判断されるとシーケンスはステップＳ７４に戻り、以下、現在値レジスタの値Ｐが、値ＢＵＦ−ＸからバッファＢＵＦに格納された値までの範囲にないときは、ステップＳ７４→Ｓ７５→Ｓ７７→Ｓ７８→Ｓ８０の処理が繰り返される。これにより、パラメータ値は第１速度でインクリメントされる。
【００７８】
一方、現在値レジスタの値Ｐが、値ＢＵＦ−ＸからバッファＢＵＦに格納された値までの範囲にあるときは、ステップＳ７４→Ｓ７５→Ｓ７７→Ｓ７８→Ｓ７９→Ｓ８０の処理が繰り返される。これにより、パラメータ値は上記第１速度より遅い第２速度でインクリメントされる。上記何れかの繰り返し実行の過程でステップＳ８０でアップスイッチＵＰのオフイベントが発生したことが判断されると、シーケンスはパネルイベント処理ルーチンにリターンする。
【００７９】
以上の処理により、図１２に示すようなパラメータ変更速度の変化が実現される。即ち、アップスイッチＵＰを押すことによりその時点での現在値レジスタの値がバッファＢＵＦに格納され、更にアップスイッチＵＰを所定時間押し続けると、パラメータ変更速度は早くなる。そしてパラメータ値は増加し続け、上限値に達したら下限値にラウンドし、現在値レジスタの値Ｐが、バッファＢＵＦに格納された値から所定値Ｘを減算した値ＢＵＦ−Ｘ以上になった時点でパラメータ変更速度は遅くなる。そして、この遅くなった第２速度でパラメータ値は増加し続け、アップスイッチＵＰを所定時間押し続けて現在値レジスタの値がバッファＢＵＦに格納された値になると、再びパラメータ変更速度は早くなり、第１速度になる。
【００８０】
更に具体的な例を、図１３を参照して説明する。アップスイッチＵＰを押すことによりその時点での現在値レジスタの値「５０」がバッファＢＵＦに格納され、更にアップスイッチＵＰを所定時間押し続けると、パラメータ変更速度は早くなる。そしてパラメータ値は増加し続け、上限値「１００」に達したら下限値「０」にラウンドし、現在値レジスタの値が、バッファＢＵＦに格納された値「５０」から例えば所定値「１０」を減算した値「４０」以上になった時点でパラメータ変更速度は遅くなる。そして、この遅くなった速度でパラメータ値は増加し続け、現在値レジスタの値がバッファＢＵＦに格納された値「５０」になると、再びパラメータ変更速度は早くなる。
【００８１】
以上説明したように、この実施の形態３に係るパラメータ設定装置によれば、パラメータ入力スイッチ３０を押し続けることによりパラメータ値を第１速度で連続的に変化させる際に、現在値レジスタに格納されているパラメータ値が、パラメータ設定操作を開始した時点でのパラメータ値より所定値だけ小さな値になった時に、パラメータ値の変化速度を上記第１速度より遅い第２速度に変更し、現在値レジスタに格納されているパラメータ値が、パラメータ設定操作を開始した時点でのパラメータ値より大きくなった時に、パラメータ値の変化を上記第２速度から第１速度に戻すようにしている。
【００８２】
その結果、図１３に示すように、目標値「４７」が現在の設定値「５０」より僅かに小さい場合であっても、目標値「４７」の近傍ではパラメータ値の変化速度は遅いので、パラメータ値を目標値に設定する操作が容易になる。
【００８３】
なお、この実施の形態３ではアップスイッチＵＰだけを備えているものとしたが、ダウンスイッチＤＯＷＮだけを備えるように構成してもよく、この場合も上記と全く同様の効果を奏する。
【００８４】
また、上記所定値Ｘは、このパラメータ設定装置で設定可能なパラメータの各１つとして、ユーザがパラメータ入力スイッチ３０を用いて任意に設定するように構成できる。
【００８５】
【発明の効果】
以上詳述したように、本発明によれば、パラメータの設定を容易に行うことのできる電子楽器のパラメータ設定装置を提供できる。
【図面の簡単な説明】
【図１】本発明の実施の形態１〜３に係るパラメータ設定装置が適用された電子楽器の構成を示すブロック図である。
【図２】図１に示した操作パネルの一例を示す図である。
【図３】図１に示した電子楽器のメイン処理を示すフローチャートである。
【図４】図１に示した電子楽器のパネルスイッチイベント処理を示すフローチャートである。
【図５】図１に示した電子楽器のパラメータ入力処理を示すフローチャート（その１）である。
【図６】図１に示した電子楽器のパラメータ入力処理を示すフローチャート（その２）である。
【図７】図５及び図６の連続操作判定処理の詳細を示すフローチャートである。
【図８】図５及び図６の遅速化処理の詳細を示すフローチャートである。
【図９】本発明の実施の形態２に係るパラメータ設定装置が適用された電子楽器のパラメータ入力処理を示すフローチャート（その１）である。
【図１０】本発明の実施の形態２に係るパラメータ設定装置が適用された電子楽器のパラメータ入力処理を示すフローチャート（その２）である。
【図１１】本発明の実施の形態３に係るパラメータ設定装置が適用された電子楽器のパラメータ入力処理を示すフローチャートである。
【図１２】図１１に示したフローチャートによって実現される動作を説明するための図である。
【図１３】図１１に示したフローチャートによって実現される動作を、更に詳しく説明するための図である。
【図１４】従来のパラメータ設定装置の動作を説明するための図である。
【符号の説明】
１０  ＣＰＵ
１１  プログラムメモリ
１２  ワークメモリ
１３  キースキャン回路
１４  パネルスキャン回路
１５  楽音発生部
２０  鍵盤装置
２１  操作パネル
２２  Ｄ／Ａ変換部
２３  アナログ信号処理部
２４  増幅器
２５  スピーカ
２６  システムバス
３０  パラメータ入力スイッチ
３１  パラメータ表示器
【図１】
0004229355.tif 000002
【図２】
0004229355.tif 000003
【図３】
0004229355.tif 000004
【図４】
0004229355.tif 000005
【図５】
0004229355.tif 000006
【図６】
0004229355.tif 000007
【図７】
0004229355.tif 000008
【図８】
0004229355.tif 000009
【図９】
0004229355.tif 000010
【図１０】
0004229355.tif 000011
【図１１】
0004229355.tif 000012
【図１２】
0004229355.tif 000013
【図１３】
0004229355.tif 000014
【図１４】
0004229355.tif 000015