JP2531330C - - Google Patents

Info

Publication number
JP2531330C
JP2531330C JP2531330C JP 2531330 C JP2531330 C JP 2531330C JP 2531330 C JP2531330 C JP 2531330C
Authority
JP
Japan
Prior art keywords
switch
pad
tempo
cpu
result
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.)
Expired - Lifetime
Application number
Other languages
English (en)
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yamaha Corp
Original Assignee
Yamaha Corp
Publication date

Links

Description

【発明の詳細な説明】 【0001】 【産業上の利用分野】 この発明はコントロール装置を備えた電子楽器に関する。 【0002】 【従来の技術】 従来より、電子楽器の各種機能を選択するために、各機能毎に専用の選択スイ
ッチを設けるようにした電子楽器が知られている。ところが、このような電子楽
器ではスイッチ数が増加してしまい、コストアップ、パネル面の繁雑化による操
作性の低下を招いていた。そこで、スイッチを共用化してスイッチ数を削減する
ことが行われており、スイッチ共用技術としては、例えば、スイッチAを単独操
作すると機能Aを実行し、スイッチAと、スイッチAとは別に設けられたシフト
スイッチとを同時に操作すると機能Bを実行するというものがあった。 【0003】 【発明が解決しようとする課題】 このような従来の電子楽器においては、シフトスイッチを単独操作しても何の 機能も実行せず、スイッチの仕様効率がよくなかった。 【0004】 この発明は、このような背景の下になされたもので、無駄な操作子をなくし、
効率的に操作子の共用化を行うことができる電子楽器を提供することを目的とす
る。 【0005】 【課題を解決するための手段】 この発明による電子楽器は、第1の機能を有する第1の操作子と、前記第1の
機能とは異なる第2の機能を有する第2の操作子と、前記第1の操作子がオン状
態からオフ状態に変化した場合に前記第1の操作子がオン状態にあった期間中に
前記第2の操作子が操作されなかったことを条件として前記第1の機能を実行し
、前記第1の操作子がオフ状態のときに前記第2の操作子が操作された場合に前
記第2の機能を実行し、前記第1の操作子がオン状態のときに前記第2の操作子
が操作された場合に前記第1および第2の機能とは異なる第3の機能を実行する
とともに、その後、前記第1の操作子がオフ状態に変化するまで所定周期毎に第
3の機能を実行する制御手段とを具備することを特徴としている。 【0006】 【作用】 上記構成によれば、第1の操作子がオン状態からオフ状態に変化した場合には
、第1の操作子がオン状態にあった期間中に第2の操作子が操作されなかったこ
とを条件として第1の機能が実行され、第1の操作子がオフ状態のときに第2の
操作子が操作された場合には、第2の機能が実行され、第1の操作子がオン状態
のときに第2の操作子が操作された場合には、第1および第2の機能とは異なる
第3の機能が実行されるとともに、その後、前記第1の操作子がオフ状態に変化
するまで所定周期毎に第3の機能が実行される。 【0007】 【実施例】 以下、図面を参照して、この発明の一実施例について説明する。図1はこの発
明の一実施例による電子楽器の構成を示すブロック図である。この図において、 1はパネルスイッチであり、テンポ/パッドアサインスイッチ、リズム選択スイ
ッチ、スタート/ストップスイッチ等の複数のスイッチからなり、演奏者によっ
て操作される。2はスイッチ検出回路であり、パネルスイッチ1の各種スイッチ
のON/OFFを検出し、それらのON/OFF状態をデータバス13へ出力す
る。 【0008】 3はパッドであり、2つのパッド3a,3bからなり、演奏者によって打撃さ
れる。ここで、パッド3a,3bの具体例を図2に示す。図2に示すようにパッ
ド3a,3bは、各々被打撃面であるゴムパッド31の内部に金属プレート32
が埋め込まれており、金属プレート32の下部に圧電センサ33が固着されてい
る。上記ゴムパッド31が演奏者の手又はスティックによって打撃されると金属
プレート32が振動し、その振動を圧電センサ33が検知するようになっている
。また、図1において、4は打撃検出回路であり、パッド3のONイベントおよ
びその強度を上述の圧電センサ33からの信号により検出する。 【0009】 5はRAMであり、パッドアサインレジスタを含む各レジスタおよび各変数等
を記憶する。これら各変数については後述する。パッドアサインレジスタは、パ
ッド3a,3bの音色の割当(以下、アサインという)を示す音色番号PAD1
,PAD2が記憶される。ここで、前述のテンポ/パッドアサインスイッチが押
下されパッド3a,3bが打撃されると、パッドアサインレジスタ内の音色番号
PAD1,PAD2が変更される。このアサインの具体的な変更例を図3に示す
。この図に示すように、インクリメントスイッチが押下されるとパッドアサイン
レジスタの音色番号PAD1,2が「…→0→1→2→…→n→0→1→…」と
変更され、デクリメントスイッチが押下されるとパッドアサインレジスタの音色
番号PAD1,2が「…→n→n→1→n−2→…→1→0→n→…」と変更さ
れる。また、パッド3a,3bが打撃されてテンポ/パッドアサインスイッチを
押下し続けると、1秒毎に自動的にアサインが変更される。音色番号PAD1,
PAD2と音色との関係として、例えば図3に示すように、「0」は「バスドラ
ム1」、「1」は「スネアドラム1」、…「n」は「カウベル」に割り当てられ ている。 【0010】 次に、6はROMであり、制御プログラム、リズムパターンデータ等を記憶し
ている。7は表示回路であり、LED(Light Emitting Diode)もしくはLCD
(Liquid Crystal Display)等からなり、テンポ値、リズムパターン番号等を表
示する。8は音源回路であり、PCM音源等からなり、打楽器音を形成する。9
はデジタル/アナログ変換回路であり、音源回路8からの出力データをアナログ
信号に変換し、サウンドシステム10に入力する。サウンドシステム10は、入
力された信号に基づき、打楽器音を発音する。11はCPUであり、データバス
13を通して、スイッチ検出回路2および打撃検出回路4による検出結果を取り
込み、RAM5およびROM6に記憶されたデータを読み込んで表示回路7およ
び音源回路8の制御を行う。12はタイマであり、CPU11に対して50ミリ
秒毎に割込みを行う。この割込み処理については後述する。また、タイマ12は
テンポ割込みも行い、CPU11はこのテンポ割込みが行われる毎に後述する自
動リズム処理を行う。このテンポ割込みの割込み時間間隔は、設定されたテンポ
に応じて決定され、テンポが変化するとテンポ割込みの割込み時間間隔も変化す
る。 【0011】 ここで、この動作を制御するために使用される各変数について説明する。これ
らの各変数は、RAM5の所定の記憶エリアに設定されるものである。 テンポスイッチフラグTEMPO テンポ/パッドアサインスイッチがON状態である間“1”となり、OFF状
態となると“0”となる。 パッドアサインフラグASSIGN テンポ/パッドアサインスイッチが押下されると“0”となり、その後パッド
3a,3bが打撃されると“1”となる。 カウンタCOUNT1 テンポ/パッドアサインスイッチのみ押下された場合の、スイッチの押下時間
を計測するためのカウンタである。テンポ/パッドアサインスイッチが押下され ると“40”にセットされ、その後割込み処理により50ミリ秒毎にデクリメン
トされる。また、テンポ/パッドアサインスイッチが押下されたまま2秒経過す
ると“10”にセットされ、その後、0.5秒毎に「10,9,…,0」のカウ
ントを繰り返す。 カウンタCOUNT2 テンポ/パッドアサインスイッチが押下された状態でパッド3a,3bが打撃
された場合、すなわちパッドアサイン状態における、テンポ/パッドアサインス
イッチの押下時間を計測するためのカウンタである。パッドアサイン状態になる
と“40”にセットされ、その後50ミリ秒毎にデクリメントされる。このパッ
ドアサイン状態でテンポ/パッドアサインスイッチが押下されたまま2秒経過す
ると“20”にセットされ、その後、1秒毎に「20,19,…,0」のカウン
トを繰り返す。 インクリメントフラグINC FLG インクリメントスイッチであるとき、“1”がセットされる。 パッドフラグPON FLG パッド3aが打撃されると“1”がセットされ、パッド3bが打撃されると“
2”がセットされる。 音色番号PAD1,PAD2 パッド3a,3bに対応する各パッドアサインレジスタ内に割り当てられた音
色番号を示す。 【0012】 次に、図4〜図8に示すフローチャートにより、電子楽器の動作について説明
する。この電子楽器の電源(図示せず)が投入されると、CPU11は図4にフ
ローを示すメインルーチンの実行を開始する。まず、ステップS10に進み、初
期化処理を行う。この初期化処理により、RAM5内のレジスタおよび各変数の
初期化が行われる。そして、以後CPU11は、スイッチスキャン処理(ステッ
プS20)、パッドスキャン処理(ステップS30)、および表示処理等その他
の処理(ステップS40)を繰り返し実行する。 【0013】 (1)テンポ変更処理 まず、演奏者がテンポ/パッドアサインスイッチを押下することによって、テ
ンポを変更する場合について説明する。 【0014】 図5は、メインルーチンのステップS20において実行される、スイッチスキ
ャン処理ルーチンの処理フローを説明するフローチャートである。まず、ステッ
プS201に進むと、CPU11は、テンポ/パッドアサインスイッチのONイ
ベントがスイッチ検出回路2から検出されたか否かを判断する。そして、インク
リメントスイッチ、またはデクリメントスイッチのいずれか一方が押下されると
、このステップS201における判断結果が「YES」となり、ステップS20
2に進んでパッドアサインフラグASSIGNに“0”をセットする。次にステ
ップS203に進み、テンポスイッチフラグTEMPOに“1”をセットする。
更にステップS204に進み、カウンタCOUNT1に“40”をセットする。
そしてステップS205に進み、CPU11は、ステップS201においてON
イベントが検出されたテンポ/パッドアサインスイッチが、インクリメントスイ
ッチであるか否かを判断する。ここで、検出されたイベントがインクリメントス
イッチのONイベントである場合には、ステップS206に進み、インクリメン
トフラグINC FLGに“1”をセットする。一方、ステップS201におい
て検出されたイベントがデクリメントスイッチのONイベントである場合には、
ステップS207に進み、インクリメントフラグINC FLGに“0”をセッ
トする。 【0015】 次に、ステップS208に進み、CPU11は、テンポ/パッドアサインスイ
ッチのOFFイベントがスイッチ検出回路2から検出されたか否かを判断する。
OFFイベントが検出されない場合は、ステップS208における判断結果が「
NO」となり、ステップS215に進み、リズム選択スイッチ等、その他のスイ
ッチ処理を行い、メインルーチンに戻る。以後、このスイッチスキャン処理が実
行されると、CPU11はテンポ/パッドアサインスイッチのOFFイベントが
検出されたか否かを判断する。そして、演奏者が、押下していたテンポ/パッド アサインスイッチを離すと、ステップS208における判断結果が「YES」と
なる。そして、ステップS209において、CPU11はパッドアサインフラグ
ASSIGNの内容が“1”であるか否かを判断し、演奏者がパッド3a,3b
を打撃していない場合はこの判断結果は「NO」となり、ステップS210に進
む。次に、ステップS210においてインクリメントフラグINC FLGの内
容が“1”であるか否かを判断し、この判断結果が「YES」である場合は、ス
テップS211に進んでテンポ値をインクリメントし、「NO」である場合は、
ステップS212に進んでテンポ値をデクリメントする。このステップS211
もしくはステップS212の処理により、後述するタイマ12によるテンポ割込
みの割込み時間間隔が変更される。更に、ステップS213に進み、テンポスイ
ッチフラグTEMPOに“0”をセットし、ステップS214に進んで、カウン
タCOUNT1およびCOUNT2を“0”にセットする。そしてステップS2
15に進み、リズムスタートスイッチSTARTやリズムストップスイッチST
OP等その他のスイッチ処理を行って、メインルーチンに戻る。 【0016】 次に、CPU11は、メインルーチンのステップS30において、パッドスキ
ャン処理を実行する。図6は、上記パッドスキャン処理ルーチンの処理フローを
説明するフローチャートである。まず、ステップS301に進むと、CPU11
は、パッド3a,3bのONイベントが打撃検出回路4から検出されたか否かを
判断する。パッド3a,3bが打撃されていないと、ステップS301における
判断結果は「NO」となり、何も処理せずにメインルーチンに戻る。 【0017】 次に、CPU11は、メインルーチンのステップS40において、表示処理等
、その他の処理を実行する。例えば、変更されたテンポ値を表示回路により表示
する等の処理を行う。 【0018】 また、上述のスイッチスキャン処理、パッドスキャン処理、およびその他の処
理と平行して、CPU11はタイマ割込み処理を実行する。このタイマ割込み処
理は、タイマ12によるタイマ割込みが行われることにより実行される。タイマ 12は以下に説明する2通りの割込みを行う。 テンポ割込み 図7に、タイマ12によるテンポ割込みによりCPU11が実行する処理のフ
ローを示す。タイマ12は設定されたテンポに応じてテンポ割込みを行う。ステ
ップS501において、CPU11は、リズムスタートスイッチSTARTのO
NイベントがステップS215において検出された時点から、リズムストップス
イッチSTOPのONイベントが同じくステップS215において検出されるま
での間、ROM6よりリズムパターンデータを読み出して発音処理を行う。CP
U11は、タイマ12によりテンポ割込みが行われる毎に、この自動リズム処理
を実行する。このタイマ12による割込み時間間隔は、設定されたテンポ値によ
り決定される。従って、このテンポ変更処理においてテンポ値が変更されると、
このテンポ割込みの割込み時間間隔が変更される。 【0019】 50ミリ秒割込み 図8は、タイマ12による50ミリ秒割込みによりCPU11が実行する処理
の処理フローを示すフローチャートである。タイマ12は、50ミリ秒毎にCP
U11に対して割込み信号を出力する。まず、ステップS601に進むと、CP
U11はカウンタCOUNT1の内容が“0”より大きいか否かを判断する。こ
こでは、図5に示すスイッチスキャン処理のステップS204においてカウンタ
COUNT1が“40”にセットされているため、この判断結果が「YES」と
なり、ステップS602に進み、カウンタCOUNT1の内容をデクリメントす
る。次にステップS603に進み、カウンタCOUNT1の内容が“0”である
か否かを判断する。前述したようにカウンタCOUNT1の内容は“40”から
1デクリメントされて“39”であるため、このステップS601における判断
結果は「NO」となる。これは演奏者がテンポ/パッドアサインスイッチを押下
した状態でまだ2秒経過していない場合であり、ステップS604〜S607の
処理を行わずにステップS608に進む。 【0020】 次に、ステップS608において、CPU11は、カウンタCOUNT2の内 容が“0”より大きいか否かを判断する。この場合はこの判断結果が「NO」と
なり、メインルーチンに戻る。以後、演奏者がテンポ/パッドアサインスイッチ
を押下し続けると、50ミリ秒毎にカウンタCOUNT1がステップS602に
おいてデクリメントされる。そしてその結果カウンタCOUNT1の内容が“0
”となると、ステップS603における判断結果が「YES」となる。これは、
テンポ/パッドアサインスイッチがON状態となってからタイマ割込みが40回
実行された(2秒経過した)場合である。そして、ステップS604に進み、イ
ンクリメントフラグINC FLGの内容が“1”であるか否かを判断する。こ
の判断結果が「YES」の場合はステップS605に進んでテンポ値をインクリ
メントし、判断結果が「NO」の場合はステップS606に進んでテンポ値をデ
クリメントする。そして、ステップS607に進み、カウンタCOUNT1を“
10”にセットして、ステップS608に進む。そして、この50ミリ秒毎に実
行されるタイマ割込み処理によって、カウンタCOUNT1は「10,9,…,
0」と順次デクリメントされる。そして、カウンタCOUNT1は一旦“0”と
なると再び“10”がセットされ、以降このカウントを繰り返す。それによりテ
ンポ値は0.5秒毎に自動的にインクリメント(ステップS605)あるいはデ
クリメント(ステップS606)される。 【0021】 一方、演奏者が、押下していたテンポ/パッドアサインスイッチを離すと、ス
イッチスキャン処理のステップS214においてカウンタCOUNT1に“0”
がセットされるため、ステップS601における判断結果が「NO」となる。そ
のため、このタイマ割込み処理において、CPU11はテンポ値のインクリメン
トあるいはデクリメントを停止しその時点でのテンポ値を保持する。 【0022】 (2)通常のパッド発音処理 次に、演奏者がテンポ/パッドアサインスイッチを押下せずに、パッド3a,
3bのみ打撃する場合について説明する。 【0023】 まず、CPU11は、図4に示すステップS20、すなわち図5に示すスイッ チスキャン処理を実行する。CPU11はステップS201に進むと、テンポ/
パッドアサインスイッチのONイベントがスイッチ検出回路2から検出されたか
否かを判断する。テンポ/パッドアサインスイッチが押下されない場合、この判
断結果は「NO」となり、ステップS208に進む。ステップS208において
、CPU11は、テンポ/パッドアサインスイッチのOFFイベントが検出され
たか否かを判断する。ここでは、この判断結果が「NO」となり、ステップS2
15に進み、その他のスイッチ処理を行ってメインルーチンに戻る。 【0024】 次に、CPU11は、図4に示すステップS30、すなわち図6のパッドスキ
ャン処理を実行する。まず、ステップS301に進むと、CPU11は、パッド
3a,3bのONイベントが打撃検出回路4により検出されたか否かを判断する
。パッド3a,3bのいずれかが打撃されると、この判断結果は「YES」とな
り、ステップS302に進み、テンポスイッチフラグTEMPOの内容が“1”
であるか否かを判断する。ここではこの判断結果は「NO」となり、ステップS
316に進み、ステップS301において検出されたイベントがパッド3aのO
Nイベントであるか否かを判断する。この判断結果が「YES」の場合はステッ
プS317に進み、RAM5のパッドアサインレジスタに記憶された音色番号P
AD1を読み出し、打撃検出回路4によって検出されたパッド3aの打撃の強さ
を取り込んで、音源回路8に出力する。それによって音源回路8は、音色番号P
AD1に対応する音色であり、かつパッド3aの打撃された強さに応じた音量で
ある打楽器音を形成する。音源回路8の出力信号は、デジタル/アナログ回路9
によってアナログ信号に変換され、サウンドシステム10によって発音される。
また、ステップS316における判断結果が「NO」の場合、すなわちステップ
S301において検出されたイベントがパッド3bのONイベントである場合は
ステップS318に進み、ステップS317と同様の処理を行い、音色番号PA
D2に対応する音色であり、かつパッド3bの打撃された強さに応じた音量の打
楽器音を発音するよう制御する。そして、メインルーチンに戻る。 【0025】 次に、通常のパッド発音処理を実行中に50ミリ秒毎にタイマ割込みが行われ る際の、CPU11によるタイマ割込み処理について説明する。まず、図8に示
す50ミリ秒割込み処理においてステップS601に進むと、CPU11は、カ
ウンタCOUNT1の内容が“0”より大きいか否かを判断する。ここで、テン
ポ/パッドアサインスイッチは押下されていないため、この判断結果が「NO」
となり、ステップS608に進む。ステップS608において、カウンタCOU
NT2の内容が“0”より大きいか判断し、この判断結果もステップS601に
おける場合と同様「NO」となるので、何も処理を行わずにメインルーチンに戻
る。 【0026】 (3)パッドアサイン変更処理 次に、演奏者がパッド3a,3bのアサインを変更するために、テンポ/パッ
ドアサインスイッチを押下した後、パッド3a,3bを打撃する場合について説
明する。 【0027】 まず、CPU11は、図4に示すステップS20、すなわち図5に示すスイッ
チスキャン処理を実行する。CPU11はステップ201に進むと、テンポ/パ
ッドアサインスイッチのONイベントが検出されたか否かを判断する。ここで、
インクリメントスイッチまたはデクリメントスイッチのいずれか一方が押下され
ると、判断結果は「YES」となり、ステップS202に進んで、以下ステップ
S207まで上述の(1)テンポ変更処理の場合と同様の処理を行う。 【0028】 次に、ステップS208に進み、CPU11は、テンポ/パッドアサインスイ
ッチのOFFイベントがスイッチ検出回路2から検出されたか否かを判断する。
OFFイベントが検出されない場合、ステップS208における判断結果が「N
O」となり、ステップS215に進み、リズム選択スイッチ等その他のスイッチ
処理を行い、メインルーチンに戻る。以後、このスイッチスキャン処理が実行さ
れると、CPU11はテンポ/パッドアサインスイッチのOFFイベントが検出
されたか否かを判断する。そして、演奏者が、押下していたテンポ/パッドアサ
インスイッチを離すと、ステップS208における判断結果が「YES」となる 。そして、ステップS209進み、CPU11はパッドアサインフラグASSI
GNの内容が“1”であるか否かを判断する。ここで、演奏者がパッド3a,3
bのいずれかを打撃していると、判断結果は「YES」となり、ステップS21
3に進み、テンポスィッチフラグTEMPOに“0”をセットし、ステップS2
14に進んで、カウンタCOUNT1およびCOUNT2を“0”にセットする
。そしてステップS215に進み、その他のスイッチ処理を行って、メインルー
チンに戻る。 【0029】 次に、CPU11は、図4に示すステップS30、すなわち図6に示すパッド
スキャン処理を実行する。まず、ステップS301に進むと、CPU11は、パ
ッド3a,3bのいずれかのONイベントが打撃検出回路4により検出されたか
否かを判断する。ここでパッド3a,3bのいずれかが打撃されると、この判断
結果は「YES」となり、ステップS302に進み、テンポスイッチフラグTE
MPOの内容が“1”であるか否かを判断する。そして、テンポ/パッドアサイ
ンスイッチが押下されていると、この判断結果は「YES」となり、ステップS
303に進み、パッドアサインフラグASSIGNに“1”をセットする。そし
てステップS304に進み、ステップS301において検出されたイベントがパ
ッド3aのONイベントであるか否かを判断する。この判断結果が「YES」の
場合はステップS305に進み、パッドフラグPON FLGに“1”をセット
する。そしてステップS306に進み、インクリメントフラグINC FLGの
内容が“1”であるか否かを判断する。この判断結果が「YES」の場合はステ
ップS307に進み、レジスタ内の音色番号PAD1の内容をインクリメントす
る。例えば、レジスタに音色番号PAD1として図3に示す“1”が記憶されて
いたとすると、この処理により“2”となる。また、ステップS306における
判断結果が「NO」の場合はステップS308に進み、音色番号PAD1の内容
をデクリメントする。この場合、音色番号PAD1として“1”が記憶されてい
たとすると、この処理により“0”となる。そしてステップS309に進み、ス
テップS317と同様に処理がおこなわれ、音色番号PAD1が“2”である場
合は「ハイハットオープン」の音色を持つ打楽器音が、音色番号PAD1が“0 ”である場合は「バスドラム1」の音色を持つ打楽器音が、サウンドシステム1
0より発音される。 【0030】 一方、ステップS304の判断結果が「NO」の場合、すなわちステップS3
01において検出されたイベントがパッド3bのONイベントである場合には、
ステップS310に進み、パッドフラグPON FLGに“2”をセットする。
そしてステップS311に進み、インクリメントフラグINC FLGの内容が
“1”であるか否かを判断する。この判断結果が「YES」の場合は、ステップ
S312に進み、音色番号PAD2の内容をインクリメントし、「NO」の場合
はステップS313に進んで、音色番号PAD2の内容をデクリメントする。次
にステップS314に進み、ステップS318と同様の処理を行う。そしてステ
ップS315に進み、カウンタCOUNT2を“40”にセットし、カウンタC
OUNT2を“0”にセットして、メインルーチンに戻る。 【0031】 次に、パッドアサイン変更処理中、50ミリ秒タイマ割込みが行われた場合の
CPU11によるタイマ割込み処理について説明する。まず、図8に示すタイマ
割込み処理においてステップS601に進むと、CPU11はカウンタCOUN
T1の内容が“0”より大きいか否かを判断する。ここでは、「NO」となりス
テップS608へ進む。 【0032】 次に、ステップS608において、CPU11はカウンタCOUNT2の内容
が“1”より大きいか否かを判断する。ここでは、図6に示すパッドスキャン処
理のステップS315においてカウンタCOUNT2が“40”にセットされて
いるため、この判断結果が「YES」となり、ステップS609に進む。そして
ステップS609において、カウンタCOUNT2の内容をデクリメントする。
次にステップS610に進み、カウンタCOUNT2の内容が“0”であるか否
かを判断する。ここでは、前述したようにカウンタCOUNT2の内容は“40
”から1デクリメントされて“39”であるため、この判断結果は「NO」とな
る。この場合は、テンポアサイン状態においてテンポ/パッドアサインスイッチ がON状態となってからまだ2秒経過していない場合であり、ステップS611
〜S620の処理を行わずにメインルーチンに戻る。。 【0033】 以後、演奏者がテンポアサイン状態においてテンポ/パッドアサインスイッチ
を押下し続けると、50ミリ秒毎にカウンタCOUNT2がデクリメントされる
。そして、その結果カウンタCOUNT2の内容が“0”となると、ステップS
610における判断結果が「YES」となる。これはパッドアサイン状態となっ
てからタイマ割込みが40回実行された(2秒経過した)場合である。そして、
ステップS611に進み、パッドフラグPON FLGの内容が“1”であるか
否かを判断する。この判断結果が「YES」の場合、すなわちパッド3aのON
イベントが検出された場合は、ステップS612に進み、インクリメントフラグ
INC FLGの内容が“1”であるか否かを判断する。この判断結果が「YE
S」の場合、ステップS613に進んでレジスタ内の音色番号PAD1の内容を
インクリメントし、判断結果が「NO」の場合、ステップS614に進んで音色
番号PAD1の内容をデクリメントする。そして、ステップS615に進み、図
6に示すパッドスキャン処理のステップS317と同様に発音処理を行う。 【0034】 また、ステップS611の判断結果が「NO」の場合、すなわち、パッド3b
のONイベントが検出された場合は、ステップS616に進み、インクリメント
フラグINC FLGの内容が“1”であるか否かを判断する。この判断結果が
「YES」の場合はステップS617に進んで、レジスタ内の音色番号PAD2
の内容をインクリメントし、判断結果が「NO」の場合はステップS618に進
んで、音色番号PAD2の内容をデクリメントする。そして、ステップS619
に進み、図6に示すパッドスキャン処理のステップS318と同様の処理を行う
° 【0035】 次に、上記ステップS615またはステップS619の処理が終了すると、ス
テップS620に進み、カウンタCOUNT2を“20”にセットする。そして
、このタイマ割込み処理においてカウンタCOUNT2は「20,19,…,0 」と順次デクリメントされる。そして、カウンタCOUNT2は一旦“0”とな
ると再び“20”がセットされ、以降このカウントを繰り返す。それによりCP
U11は音色番号PAD1,2の内容をインクリメント(ステップS613もし
くはステップS617)あるいはデクリメント(ステップS614もしくはステ
ップS618)し続け、パッド3a,3bのアサインは1秒毎に自動的に変更さ
れる。例えば、演奏者がインクリメントスイッチを押下し続けた場合は、図3に
示すように音色番号PAD1,2が「…→0→1→2→…→n→0→…」のよう
に変更され、デクリメントスイッチを押下し続けた場合は「…→n→n−1→n
−2→…→2→1→0→…」のように変更される。 【0036】 一方、演奏者が押下していたテンポ/パッドアサインスイッチを離すと、スイ
ッチスキャン処理のステップS214においてカウンタCOUNT2に“0”が
セットされるため、ステップS608における判断結果が「NO」となる。その
ため、このタイマ割込み処理において、CPU11はパッド3a,3bのアサイ
ンの変更を停止し、レジスタ内にはその時点の音色番号PAD1,2が保持され
る。 【0037】 以上のように、本実施例によれば、以下のような効果がある。 (1)操作子A(テンポ/パッドアサインスイッチ)を単独で操作すると機能A
(テンポ変更処理)が実行され、操作子B(パッド3a,3b)を単独で操作す
ると機能B(パッド発音処理)が実行され、操作子Aおよび操作子Bを共に操作
すると機能C(パッドアサイン変更処理)が実行されるため、操作子を有効に使
用することができる。 (2)操作子AのON期間に操作子BのONイベントがあったか否かを検出し、
操作子AのOFFイベント時にその検出結果に基づき操作子Aの機能を決定する
ようにしたので、機能Cを実行しようとして機能Aが実行されてしまうという不
都合が生じない。すなわち、操作子AがONされてからOFFされるまでの間に
、操作子BのONイベントがなかった場合に限り、機能Aが実行される。 【0038】 なお、操作子の形態、数、機能の種類が実施例に限定されない。 【0039】 【発明の効果】 以上説明したように、この発明によれば、第1および第2の操作子が単独で操
作された場合に第1および第2の機能を各々実行し、第1および第2の操作子が
同時に操作された場合に第3の機能を実行するとともに、その後、第1の操作子
がオフ状態に変化するまで所定周期毎に第3の機能を実行するようにしたので、
2つの操作子で3つの機能を実行することができ、配置する操作子の数を削減で
きるという効果が得られる。 また、第1の操作子がオン状態からオフ状態に変化した場合に第1の操作子が
オン状態にあった期間中に第2の操作子が操作されなかったことを条件として第
1の機能を実行し、第1の操作子がオン状態のときに第2の操作子が操作された
場合に第3の機能を実行するとともに、その後、第1の操作子がオフ状態に変化
するまで所定周期毎に第3の機能を実行するようにしたので、第3の機能を実行
するために第1の操作子を操作したにも関わらず第1の機能が実行されてしまう
という不具合を確実に防ぐことができ、使用者の意図に忠実に第1の機能と第3
の機能とを実行できるという効果が得られる。 このように、本願発明には、無駄な操作子をなくし、効率的に操作子の共用化
を行うことができるという効果がある。
【図面の簡単な説明】 【図1】 この発明の一実施例による電子楽器の構成を示すブロック図である
。 【図2】 同実施例におけるパッドの構成例を示す縦断面図である。 【図3】 同実施例におけるパッドのアサインの変更の流れを説明する表であ
る。 【図4】 同実施例におけるCPUの動作を示すフローチャートである。 【図5】 同実施例におけるCPUの動作を示すフローチャートである。 【図6】 同実施例におけるCPUの動作を示すフローチャートである。 【図7】 同実施例におけるCPUの動作を示すフローチャートである。 【図8】 同実施例におけるCPUの動作を示すフローチャートである。 【符号の説明】 1……パネルスイッチ(複数の操作子)、2……スイッチ検出回路、3a,3b
……パッド、4……打撃検出回路、5……RAM、11……CPU(制御手段)
、12……タイマ

Claims (1)

  1. 【特許請求の範囲】 【請求項1】 第1の機能を有する第1の操作子と、 前記第1の機能とは異なる第2の機能を有する第2の操作子と、 前記第1の操作子がオン状態からオフ状態に変化した場合に前記第1の操作子
    がオン状態にあった期間中に前記第2の操作子が操作されなかったことを条件と
    して前記第1の機能を実行し、前記第1の操作子がオフ状態のときに前記第2の
    操作子が操作された場合に前記第2の機能を実行し、前記第1の操作子がオン状
    態のときに前記第2の操作子が操作された場合に前記第1および第2の機能とは
    異なる第3の機能を実行するとともに、その後、前記第1の操作子がオフ状態に
    変化するまで所定周期毎に第3の機能を実行する制御手段と を具備することを特徴とする電子楽器。

Family

ID=

Similar Documents

Publication Publication Date Title
JP2970517B2 (ja) 電子打楽器
JPH05108065A (ja) 自動演奏装置
JPH04181295A (ja) 電子楽器
JP2629891B2 (ja) 楽音信号発生装置
JP2531330C (ja)
JP2531330B2 (ja) 電子楽器
JP2830065B2 (ja) 電子楽器
JPS62103696A (ja) 電子楽器
JP5643532B2 (ja) 電子楽音発生器の音域設定装置
JPH07219545A (ja) 電子楽器
JP3640145B2 (ja) 電子楽器のデータ表示方法、および電子楽器
JP4261457B2 (ja) 電子楽器
JP2604259B2 (ja) 電子楽器のデータ選択装置
JP3210582B2 (ja) 自動演奏装置および該自動演奏装置を備えた電子楽器
JP4175566B2 (ja) 電子楽器の発音制御装置
JP2008046249A (ja) 電子鍵盤楽器
JPH0566773A (ja) 電子楽器
JP2007240929A (ja) 鍵域分割位置決定装置
JP3509120B2 (ja) 電子楽器
JP5560581B2 (ja) 電子楽器
JP2630268B2 (ja) リズム音発生装置
JPH07146681A (ja) 電子楽器
JPH07175480A (ja) 電子楽器のデータ設定装置
JPH068996B2 (ja) 電子楽器
JP3375215B2 (ja) 電子楽器