JPH0333279B2 - - Google Patents

Info

Publication number
JPH0333279B2
JPH0333279B2 JP60229083A JP22908385A JPH0333279B2 JP H0333279 B2 JPH0333279 B2 JP H0333279B2 JP 60229083 A JP60229083 A JP 60229083A JP 22908385 A JP22908385 A JP 22908385A JP H0333279 B2 JPH0333279 B2 JP H0333279B2
Authority
JP
Japan
Prior art keywords
register
pitch
key
memory
sound
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
JP60229083A
Other languages
Japanese (ja)
Other versions
JPS6289095A (en
Inventor
Tetsuji Ichiki
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
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP60229083A priority Critical patent/JPS6289095A/en
Publication of JPS6289095A publication Critical patent/JPS6289095A/en
Publication of JPH0333279B2 publication Critical patent/JPH0333279B2/ja
Granted legal-status Critical Current

Links

Description

【発明の詳細な説明】[Detailed description of the invention]

「産業上の利用分野」 この発明は電子楽器に係り、特に、発生楽音の
ピツチを変更する際に用いられる楽音ピツチ設定
装置に関する。 「従来の技術」 従来、電子楽器の楽音ピツチ設定装置におい
て、楽音のピツチを基準ピツチから変更する方法
として、例えば鍵盤で操作されたキーに対応して
発生させる基準ピツチに対応した周波数ナンバに
対してピツチ変更量を表すデータを乗算して上記
基準周波数ナンバを変換し、この変換後の周波数
ナンバに基づいて発生楽音のピツチ設定を行う方
法が知られている(特開昭60−178494号参照)。 「発明が解決しようとする問題点」 しかしながら、上述した方法は押鍵毎に乗算を
しなければならず、したがつて、高速の乗算器が
必要となり、また、ソフトウエアによつて乗算す
る場合は時間がかかり、発音の立ち上がりが遅れ
がちになる。 この発明は上述した事情に鑑みてなされたもの
で、高速の乗算器を必要とせず、簡単な構成で、
しかも短時間でピツチ変更をすることができる電
子楽器の楽音ピツチ設定装置を提供することを目
的としている。 「問題を解決するための手段」 この発明は、発生すべき楽音の音高を指定する
音高指定手段と、少なくとも12の各音名に対応し
て、音高のピツチを設定するための1組の周波数
情報を、それぞれ所定のピツチ変更量に対応して
M組(M≧1)記憶した第1の記憶手段と、N種
類(N>M)のピツチ変更量を選択的に指定する
ピツチ変更量指定手段と、前記ピツチ変更量指定
手段によつて指示されたピツチ変更量に応じて、
前記第1の記憶手段内のM組の周波数情報のいず
れかを選択する選択手段と、前記選択手段によつ
て選択された1組の周波数情報を前記ピツチ変更
量に応じて変換して出力する変換手段と、前記変
換手段によつて変換された1組の周波数情報を記
憶する第2の記憶手段と、前記第2の記憶手段内
の、前記音高指定手段で指定された音高に対応す
る周波数情報を読み出す読出し手段とを具備し、
前記読み出された周波数情報を用いて発生すべき
楽音のピツチを設定するようにしたことを特徴と
している。 「実施例」 以下、図面を参照しこの発明の一実施例につい
て説明する。 [1] 全体構成 第1図は全体構成を示すブロツク図である。
この図において、1は鍵盤、2は操作パネル、
3は外部音を収音するためのマイクロフオン、
4は楽音形成回路である。この楽音形成回路4
は、マイクロフオン3によつて収音した外部音
をサンプリングして内部の楽音メモリに記憶さ
せ、この記憶させたサンプリングデータに基づ
いて楽音(サンプリング音と称す)を形成す
る。また、通常の電子楽器と同様に、オーケス
トラ音およびリズム音を形成する。そして、形
成した各楽音信号をミキシングしてサウンドシ
ステム5へ出力する。6は装置各部を制御する
CUP(中央処理装置)であり、バスライン7を
介して各部と接続している。8はプログラムお
よびデータが記憶されたROM、9はRAM、
10はリジム音の発生タイミングを制御するテ
ンポクロツクTCを発生するテンポクロツク発
生回路である。 [2] 動作モード この電子楽器は、次の動作モードを有してい
る。 サンプリングモード このモードは、マイクロフオン3によつて
収音した外部音をサンプリングし、楽音形成
回路4内の楽音メモリに記憶させるモードで
ある。 プレイモード 操作者が鍵盤演奏を行う時の動作モードで
ある、つぎの2つのモードがある。 a サンプリング音キーボードモード このモードは、鍵盤1は全鍵域の操作に
応じてオーケストラ音およびサンプリング
音の双方を発生するモードである。 b サンプリング音ベースモード このモードは、鍵盤1は全鍵を高音側と
低音側に、例えばF#3音を境として仮想
分割し、低音側の鍵域を伴奏鍵域、高音側
の鍵域をメロデイ鍵域とする。そして、メ
ロデイ鍵域のキーが操作された場合は、オ
ーケストラ音を発生し、一方伴奏鍵域のキ
ーが操作された場合は、サンプリング音に
よるベース音を発生する。なお、実際に
は、伴奏鍵域のキー操作に対応して和音
(コード音)も同時に発生するものである
が、この実施例ではこの点を省略してあ
る。 なお、リズム音は、操作パネル2のリズムス
イツチによつてリズム音発生が指示された場合
にのみ発生する。また、リズム音発生が指示さ
れていない時は、上述したベース音も発生しな
い。 また、この電子楽器においては、上述したサ
ンプリング音のピツチを自在に変更できるよう
になつている。 [3] 各部の構成の詳細 (i) 操作パネル2 第2図は、操作パネル2の構成を示す図で
ある。この図において、12はサンプリング
モード/プレイモードを選択するためのサン
プリングスイツチ、13はサンプリングモー
ドが設定された時点灯するLED、14はサ
ンプリング開始を指示するスタートスイツ
チ、15は後述するレピート発音を指示する
レピートスイツチ、16はレピート発生が指
示された時点灯するLEDである。17U,
17Dは各々、サンプリング音のピツチ変更
量を設定するためのピツチ変更スイツチ、1
8はサンプリング音キーボードモード/サン
プリング音ベースモードを選択するためのス
イツチ、19はサンプリング音の音量調整用
ボリユーム、20はオーケストラ音の音色を
選択するための音色選択スイツチ、21はリ
ズムの種類を選択するためのリズム選択スイ
ツチ、22はオーケストラ音の音量調整用ボ
リユーム、23はリズム音の発生/停止を指
示するリズムスイツチ、24はリズム音発生
が指示されている時点灯するLED、25は
リズム音の音量調整用ボリユームである。 (ii) 楽音形成回路4 第3図は楽音形成回路4の構成を示すブロ
ツク図である。この図において、30は端子
T1を介してバスライン7に接続されるイン
ターフエイス、31はオーケストラ音形成回
路、32はリズム音形成回路である。33,
34,35は各々CPU6によつて書き込み
が行なわれるモードレジスタ、キーオンレジ
スタ、レピートレジスタであり、いずれも1
ビツトのレジスタである。36はCPU6に
よつて後述する周波数ナンバFNが書き込ま
れるFNレジスタ、37はCPU6によつてセ
ツトされるフリツプフロツプ、38は入力さ
れる信号の立ち下がりにおいてパルス信号を
出力する微分回路である。39,40は各々
スタートアドレスレジスタ、エンドアドレス
レジスタであり、同図に示す楽音メモリGM
の最も若いアドレスA1(通常「0」)およ
び最終アドレスA2を各々示すデータが電源
投入時にCPU6によつて設定される。41
はゲート回路であり、そのエネーブル端子
ENへ“1”信号が供給された時「開」、
“0”信号が供給された時「閉」となる。4
2はゲート回路41の出力を一定周期のクロ
ツクパルスφのタイミングで累算するアキユ
ムレータ、43は入力される信号の立ち上が
りにおいてパルス信号を出力する微分回路、
44はアキユムレータ42の出力が変化する
毎にパルス信号P1を出力する変化検出回
路、45はアキユムレータ42の出力と、ス
タートアドレスレジスタ39の出力とを加算
する加算回路、46は加算回路45の出力と
エンドアドレスレジスタ40の出力とを比較
し、両者が一致した時一致信号EQ(“1”信
号)を出力する比較回路である。47は、端
子T2を介して供給されるマイクロフオン3
の出力(アナログ信号)をデイジタルデータ
に変換して出力するるA/D(アナログ/デ
イジタル)変換回路、GMはA/D変換回路
47の出力(サンプリングデータ)が記憶さ
れる楽音メモリである。この楽音メモリGM
において、ADはアドレス端子、WPはライ
トパルス端子、R/Wはリード/ライト端
子、DATAはデータ端子である。この楽音
メモリGMは、リード/ライト端子R/Wへ
“1”信号が供給されている場合において、
ライトパルス端子WPへ“1”のパルス信号
が供給されると、データ端子DATAに得ら
れるデータをアドレス端子ADへ印加されて
いるアドレスデータが示すアドレス内に書き
込み、また、リード/ライト端子R/Wへ
“0”信号が供給されている場合は、アドレ
ス端子ADへ印加されているアドレスデータ
が示すアドレス内のデータを読み出し、出力
する。48はエンベロープ発生回路である。
このエンベロープ発生回路48は、第4図に
示すように、キーオンレジスタ34の出力信
号KONが“1”信号に立ち上がつた時点で
データ「1」となり、以後データ「1」を保
持し、信号KONが“0”信号に立を下がつ
た時点以降徐々に「0」まで減少するエンベ
ロープデータEDを出力する回路である。4
9は楽音メモリGMの出力とエンベロープデ
ータEDとを乗算する乗算回路、50は乗算
回路49の出力をアナログ信号に変換する
D/A(デイジタル/アナログ)変換回路で
あり、このD/A変換回路50の出力として
サンプリング音が得られる。22,25,1
9は各々操作パネル2に設けられている音量
適整用ボリユームであり、オーケストラ音形
成回路31から出力されるオーケストラ音信
号、リズム音形成回路32から出力されるリ
ズム音信号およびD/A変換回路50から出
力されるサンプリング音信号が各々、これら
のボリユーム22,25,19を介してミキ
シング回路51へ供給され、ここでミキシン
グされた後、端子T3を介してサウンドシス
テム6に供給される。 (iii) ROM8 第5図はROM8内に設定されている各メ
モリを示す図である。この図において、M
(0)〜M(12)は各々、12種類の周波数ナンバ
FNが記憶された周波数ナンバメモリ、8a
はリズム音形成時に使用されるリズムパター
ンが記憶されたリズムパターンメモリ、8b
はベース音形成時に使用されるベースパター
ンが記憶されたベースパターンメモリ、8c
はCPU6のプログラムが記憶されたプログ
ラムメモリである。 (iv) ROM9 第6図はRAM9内に設定されているレジ
スタおよびメモリを示す図である。各レジス
タに書き込まれるデータは次の通りである。 NKC:最新押下キーのキーコード KCREG:発音中のサンプリング音のキー
コード MODE:サンプリングモード→“1” プレイモード→“0” KB:サンプリング音ベースモード→
“1” サンプリング音キーボードモード→“0” PC(ピツチカウンタ)、SFT、FMN:ピ
ツチ制御用データ TPCTR(テンポカウンタ):リズム音制御
用データ RPT:レピート発音設定時→“1” レピート発音否設定時→“0” RHY:リズムオン→“1” リズムオフ→“0” TYPE:和音のコードタイプ ROOT:和音の根音 また、FMEMは楽音メモリGの読み出し
の際使用され周波数ナンバが記憶される周波
数ナンバメモリ、TEMPは各種のデータが
一時記憶される一時記憶メモリである。 [4] 周波数ナンバFN 第3図における楽音メモリGMの書き込み/
読み出し時のアドレスは、この周波数ナンバ
FNに基づいて作られる。すなわち、FNレジ
スタ36内の周波数ナンバFNが、アキユムレ
ータ42において累算され、この累算値が逐次
加算回路45を介して楽音メモリGMのアドレ
ス端子ADへ供給される。この場合、アキユム
レータ42の累算周期φが一定であることか
ら、周波数ナンバFNの値が小さいときは、楽
音メモリGMから読み出される波形の周波数が
小になり、一方、周波数ナンバFNの値が大き
いときは、楽音メモリGMから読み出される波
形の周波数が大となる。すなわち、周波数ナン
バFNは楽音メモリGMの読み出し周波数を決
定し、同様に、楽音メモリGMの書き込み時の
書き込み周波数(サンプリング周波数)を決定
する。 ところで、この実施例においては、前述した
プレイモードにおけるメモリGMの読み出し
周波数を、キーの音高に対応して、基本的に第
7図に示す周波数としている。また、メモリ書
き込み時の周波数(サンプリング周波数)を同
図に破線で囲つた周波数としている。そして、
破線内に示す12のキーC#4〜C5の各周波数に
各々対応する12の周波数ナンバFNを、第5図
に示すROM8の周波数ナンバメモリM(6)内に
予め記憶させている。この場合、第7図の破線
外の周波数に対応する周波数ナンバFNは、破
線内の12の周波数ナンバFNから容易に算出す
ることができる。すなわち、例えばC2音発生
時の読み出し周波数2KHzはC3音発生時の読み
出し周波数4KHzの1/2となつており、C3音発生
時の読み出し周波数4KHzはC4音発生時の読み
出し周波数8KHzの1/2となつている。他の周波
数についても同様である。(1オクターブ毎に
周波数1/2異なる。)したがつて、破線外の周波
数に対応する周波数ナンバFNは、破線内の周
波数ナンバFNをビツトシフトすることにより
簡単に求めることができる。 なお、この実施例においては、サンプリング
周波数は破線内の周波数のみであるが、メモリ
GMの読み出し周波数は、以下に述べるよう
に、第7図に示す周波数を変更できるようにな
つている。 [5] 楽音メモリGMの読み出し周波数変更方法 この実施例においては、100セント(半音)を
13等分し、1STEP=約7.7センント単位で読み出
し周波数を変更できるようになつている。すなわ
ち、操作者が操作パネル2(第2図)のピツチ変
更スイツチ17Uを1回、2回……と押すと、読
み出し周波数が第7図に示す基本周波数から
1STEP、2STEP……と上昇し、したがつてサン
プリング音の音高が上昇し、また、ピツチ変更ス
イツチ17Dを1回、2回……と押すと、読み出
し周波数が1STEP、2STEP……と下降するよう
になつている。この読み出し周波数の変更は次の
よにして行なわれる。 第8図の符号SNM内の図は、第5図に示す周
波数ナンバメモリM(0)〜M(12)を再び示した図
である。この図に示すように、メモリM(6)内に
は、C#4〜C5音の読み出し周波数(第7図の破
線枠内参照)に対応する周波数ナンバFNが記憶
されており、メモリM(7)には、メモリM(6)の読み
出し周波数を1STEP(7.7セント)上げた周波数
に対応する周波数ナンバFNが各音名(C#〜
C)に対応して記憶されており、……、メモリM
(12)には、メモリM(6)の読み出し周波数を6STEP
上げた周波数に対応する周波数ナンバFNが各音
名に対応して記憶されている。また、メモリM(5)
内には、メモリM(6)の読み出し周波数を1STEP
下げた周波数に対応する周波数ナンバFNが記憶
されており、……、メモリM(0)内には、メモ
リM(6)の読み出し周波数を6STEP下げた周波数
に対応する周波数ナンバFNが記憶されている。 そして、レジスタPC(第6図)内に「6」が設
定されている時は、メモリM(6)内の周波数ナンバ
FNが第6図のメモリFMEM内に転送され、この
メモリFMEM内の周波数ナンバFNに基づいて楽
音メモリGM(第3図)の読み出しが行なわれる。
この場合、サンプリング周波数と読み出し周波数
とが同一となり、したがつてピツチずれなしのサ
ンプリング温が発生する。なおここで、サンプリ
ング周波数と読み出し周波数とが同一とは、例え
ばD3キーでサンプリングした場合、D3キーの押
下に基づく読み出し周波数がサンプリング周波数
と同一になるという意味である。次に、操作者が
ピツチ変更スイツチ17Uを1回押すと、レジス
タPC内に「7」が設定され、メモリM(7)内の周
波数ナンバFNがメモリFMEM内に転送される。
この場合、このメモリFMEM内の周波数ナンバ
FNに基づいて楽音メモリGMの読み出しが行な
われ、したがつて、サンプリング時より1STEP
高いピツチのサンプリング音が発生する。また、
操作者がピツチ変更スイツチ17Dを操作して、
レジスタPC内に「5」を設定すると、メモリM
(5)内の周波数ナンバFNがメモリFMEM内に設定
され、これにより、サンプリング時より1STEP
低いピツチのサンプリング音が発生する。レジス
タPC内に8〜12あるいは0〜4が設定された場
合も同様である。 次に、レジスタPC内のデータが「13」以上
(PC≧13)の場合および「−1」以下(PC≦−
1)の場合について説明する。例えば、PC=13
の場合は、第8図のテーブルM(0)+1に示す周
波数、すなわち、メモリ(6)の読み出し周波数を
7STEP上げた周波数に対応する周波数ナンバFN
をメモリFMEM内に記憶させる必要がある。と
ころで、メモリM(6)の周波数を7STEP上げると
は、メモリM(0)の周波数を13STEP上げるこ
とを意味し、言い替えれば、メモリM(0)の各
音名の周波数を各々100セト(半音)上げること
を意味する。そして、メモリM(0)の各周波数
を半音上げたテーブルM(0)+1を作るには、第
9図に示すように、メモリM(0)の各周波数を
各々1段上へ(半音上の音名に)シフトしてテー
ブルM(0)+1へ書き込み、また、メモリM(0)
の最上段(音名C#)の周波数を2倍してテーブ
ルM(0)+1の最下段(音名C)へ書き込めばよ
い。ここで、上記「2倍」は、周波数を1オクタ
ーブ上げることを意味する。このように、テーブ
ルM(0)+1は、メモリM(0)内の周波数ナン
バFNをシフトすることにより簡単に作成され
る。同様に、PC=14、15……25の場合に必要と
されるテーブルM(1)+1、M(2)+1……M(12)+1
は各々、メモリM(1)、M(2)……M(12)内の周波数ナ
ンバFNをシフトすることにより、簡単に作成さ
れる。また、PC=26〜38の場合に必要とされる
テーブルM(0)+2〜M(12)+2は各々、メモリM
(0)〜M(12)内の周波数ナンバFNを2回シフト
することによつて作成でき、レジスタPC内のデ
ータがさらに大きくなつた場合も、同様にして作
成することができる。第10図にレジスタPC内
のデータとテーブルとの対応関係を示す。なお、
このテーブルは説明の便宜上のもので、実際のデ
ータテーブルが設けられているわけでないことは
勿論である。 一方、レジスタPC内のデータがが「−1」の
場合は、第8図に示すテーブルM(12)−1が必要と
なる。このテーブルは、第11図に示すように、
メモリM(12)内の周波数ナンバFNを1段下方へシ
フトしてテーブルM(12)−1に書き込み、また、メ
モリM(12)の最下段の周波数ナンバFNを1/2倍し
てテーブルM(12)−1の最上段に書き込むことによ
り作成される。PC≦−2の場合も同様である
(第10図参照)。 なお、この実施例においては、第10図に示す
ように、PC=103をPCの最大値としている。こ
れ以上PCの値が大きくなると、第3図のD/A
変換回路50の処理が時間的に追いつかなくなる
からである。 [6] 全体動作 以下、第1図および第3図に示す回路の動作
を、第12図〜第20図に示すCPU6の処理
フローチヤートを参照し、前述したモード別に
説明する。 サンプリングモード この場合、操作者は、まずサンプリングス
イツチ12(第2図)を操作することによ
り、このモードに設定する。サンプリングス
イツチ12が押されると、CPU6がこれを
検知し、第12図に示すサンプリングスイツ
チ・オンイベント処理を行う。すなわち、ま
ず、ステツプSS1へ進み、レジスタMODE
(第6図)内のデータ(1ビツト)を反転し、
次いで、レジスタMOODE内のデータが
“1”の時はLED13の点灯指令を、“0”
の時は消燈指令を各々操作パネル2へ出力す
る(ステツプSS2〜SS4)。次に、レジスタ
MODE内のデータをモードレジスタ33
(第3図)に転送して書き込み(ステツプ
SS5)、待機状態に戻る。ここで、レジスタ
MODEおよびモードレジスタ33に“1”
が書き込まれた場合は、サンプリングモード
に設定されたことを意味し、“0”が書き込
まれた場合は、プレイモードに設定されたこ
とを意味する。また、いずれのモードに設定
されたかは、LED13の点灯/消燈によつ
て検知することができる。 次に、操作者は、サンプリングすべき音の
音高に対応する鍵盤1のキーC#4〜C5のい
ずれかを押下する。鍵盤1のキーが押下され
ると、CPU6がこれを検知し、第13図の
キーオンイベント処理へ進む。このキーオン
イベント処理においては、まず、ステツプ
SK1において、押下キーのキーコードKCを
レジスタNKC内に書き込む。次に、ステツ
プSK2へ進み、レジスタMODE内のデータ
が“0”か否かを判断する。この場合、判断
結果は「NO」(MODE=“1”)であり、し
たがつて、ステツプSSK3へ進む。ステツプ
SK3では、レジスタNKC内のキーコードKC
のノート検出、すなわち、キーコードKCが
1オクターブ内のどの音名かの検出を行う。
次に、ステツプSK4へ進むと、ステツプSK3
において検出したノートに対応する周波数ナ
ンバFNを、第8図に示すメモリM(6)から読
み出し、NFレジスタ36(第3図)へ転送
して書き込む。そして、待機状態に戻る。 次に、操作者は、マイクロフオン3をセツ
トし、そして、スタートスイツチ14を押
す。スタートスイツチ14が押されると、
CPU6が第14図に示すスタートスイツ
チ・オンイベント処理へ進み、フリツプフロ
ツプ37(第3図)のセツトを行い、そして
待機状態に戻る。 フリツプフロツプ37がセツトされると、
オアゲート60の出力が“1”に立ち上が
り、この立ち上がりにおいて、微分回路43
からパルス信号が出力され、オアゲート61
を介してアキユムレータ42のリセツト端子
へ供給される。これにより、アキユムレータ
42がリセツトされる。また、フリツプフロ
ツプ37がセツトされると、この時モードレ
ジスタ33の出力信号MDが“1”(サンプ
リングモード)であることから、アンドゲー
ト62の出力が“1”となり、この“1”信
号がオアゲート63を介してゲート回路41
へ供給される。これにより、ゲート回路41
が開状態となり、FNレジスタ36内の周波
数ナンバFNがアキユムレータ42へ供給さ
れ、このアキユムレータ42においてクロツ
クパルスφのタイミングで逐次累算される。
そして、この累算結果と、スタートアドレス
レジスタ39内のアドレスA1を示すデータ
とが、加算回路45におて加算され、この加
算結果が楽音メモリGMのアドレス端子AD
へ供給される。一方、アキユムレータ42の
出力が変化する毎に、変化検出回路44から
パルス信号P1が出力され、楽音メモリGM
のライトパルス端子WPへ供給される。これ
により、A/D変換回路47から出力される
データ(マイクロフオン3の出力をA/D変
換したデータ)が、楽音メモリGM内に逐次
書き込まれる。そして、加算回路45の出力
が、エンドアドレスレジスタ40内のアドレ
スA2を示すデータに一致すると、比較回路
46から一致信号EQ(“1”信号)が出力さ
れ、フリツプフロツプ37のリセツト端子R
へ供給される。これにより、フリツプフロツ
プ37がリセツトされ、その出力が“0”信
号に立ち上がり、この立ち下がりにおいて、
微分回路38からパルス信号(サンプリング
終了信号)SEが出力される。そして、この
信号SEが、インターフエイス30を介して
CPU6へ供給される。CPU6は、この信号
SEを受け、第15図に示すサンプリング終
了処理へ進む。この処理においては、まず、
レジスタMODE内に“0”を書き込み(ス
テツプSE1)、次いでレジスタMODE内のデ
ータをレジスタ33に転送して書き込む(ス
テツプSE2)。これにより、自動的にプレイ
モードに設定される。次いで、LED13の
消燈指令を出力し(ステツプSE13)、待機状
態に戻る。 a サンプリング音キーボードモード この場合、操作者は、まずサンプリング
スイツチ12(第2図)によつてLED1
3を消燈し(LED13が点灯していた場
合)、次いでスイツチ18をキーボード
KB側へ投入する。これにより、レジスタ
MODEおよびモードレジスタ33内に
“0”が設定され、また、レジスタKB(第
6図)内に“0”が設定される。 次に、操作者は、サンプリング音のピツ
チ設定を行う。すなわち、まず、ピツチ変
更スイツチ17U,17Dを同時に押し、
次いでピツチを上げたい場合はスイツチ1
7Uを、下げたい場合はスイツチ17Dを
変更したいSTEP数だけ押す。 ピツチ変更スイツチ17Uまたは17D
が押されると、CPU6がこれを検知し、
第16図に示すスイツチ17U・オンイベ
ント処理またはスイツチ17Dオンイベン
ト処理へ進む。スイツチ17U・オンイベ
ント処理においては、まず、ステツプSH1
において、スイツチ17Dが同時に押され
ているか否かを判断する。そして、この判
断結果が「YES」の場合はステツプSH2
へ進み、レジスタPC(第6図)に「6」を
書き込む。これにより、「ピツチずれなし」
が設定される(第8図参照)。また、ステ
ツプSH1の判断結果が「NO」の場合は、
ステツプSH3へ進み、レジスタPC内のデ
ータをインクリメントする。そして、ステ
ツプSH4へ進む。一方、スイツチ17D・
オンイベント処理においては、まず、ステ
ツプSH6において、スイツチ17Uが同時
に押されているか否を判断する。そして、
この判断結果が「YES」の場合は、ステ
ツプSH2へ進み、また、「NO」の場合は
ステツプSH7へ進む。ステツプSH7では、
レジスタPC内のデータをデクリメントし、
そして、ステツプSH4へ進む。ステツプ
SH4では、レジスタPC内のデータを「13」
で除算する。次に、ステツプSH8へ進む
と、レジスタPC内のデータが正または零
か否かを判断する。そして、この判断結果
が「YES」の場合はステツプSH9へ進み、
「7」からステツプSH4の除算の商を減算
した値をレジスタSFT(第6図)に書き込
み、また、「NO」の場合はステツプSH10
へ進み、「8」からステツプSH4の除算の
商を減算した値をレジスタSFTに書き込
む。次に、ステツプSH11へ進むと、ステ
ツプSH4の除算の余りが正または零の場合
は、その余りをそのままレジスタFMN
(第6図)に書き込み、余りが負の場合は、
その値に応じてつぎの値をレジスタFMN
に書き込む。 −1→12 −2→11 …… −12→1 ここで、レジスタPC内のデータに対応
してレジスタSFT、FMNに各々書き込ま
れるデータ例を次表に示す。
``Industrial Application Field'' The present invention relates to electronic musical instruments, and more particularly to a musical tone pitch setting device used to change the pitch of generated musical tones. ``Prior Art'' Conventionally, in pitch setting devices for electronic musical instruments, as a method for changing the pitch of a musical tone from a standard pitch, for example, a frequency number corresponding to a standard pitch generated in response to a key operated on a keyboard is used. A known method is to convert the reference frequency number by multiplying it by data representing the pitch change amount, and to set the pitch of the generated musical tone based on the converted frequency number (see Japanese Patent Laid-Open No. 178494/1983). ). "Problems to be Solved by the Invention" However, the method described above requires multiplication every time a key is pressed, and therefore requires a high-speed multiplier. It takes time, and the onset of pronunciation tends to be delayed. This invention was made in view of the above-mentioned circumstances, and has a simple configuration that does not require a high-speed multiplier.
Moreover, it is an object of the present invention to provide a tone pitch setting device for an electronic musical instrument that can change the pitch in a short time. "Means for Solving the Problem" The present invention provides a pitch specifying means for specifying the pitch of a musical tone to be generated, and a pitch specifying means for setting the pitch of the pitch corresponding to each of at least 12 note names. a first storage means that stores M sets (M≧1) of frequency information, each corresponding to a predetermined pitch change amount; and a pitch storage means that selectively specifies N types (N>M) of pitch change amounts. According to the change amount designation means and the pitch change amount instructed by the pitch change amount designation means,
a selection means for selecting one of the M sets of frequency information in the first storage means; and converting and outputting the set of frequency information selected by the selection means according to the pitch change amount. a converting means, a second storing means for storing a set of frequency information converted by the converting means, and a pitch corresponding to the pitch specified by the pitch specifying means in the second storing means; reading means for reading out frequency information,
The present invention is characterized in that the read frequency information is used to set the pitch of the musical tone to be generated. "Embodiment" Hereinafter, an embodiment of the present invention will be described with reference to the drawings. [1] Overall configuration Figure 1 is a block diagram showing the overall configuration.
In this figure, 1 is the keyboard, 2 is the operation panel,
3 is a microphone for collecting external sounds,
4 is a musical tone forming circuit. This musical tone forming circuit 4
The sampler samples external sounds picked up by the microphone 3 and stores them in an internal musical tone memory, and forms musical tones (referred to as sampling sounds) based on the stored sampling data. It also produces orchestral sounds and rhythm sounds, similar to ordinary electronic musical instruments. Then, the formed musical tone signals are mixed and output to the sound system 5. 6 controls each part of the device
It is a CUP (central processing unit) and is connected to each part via a bus line 7. 8 is a ROM in which programs and data are stored; 9 is a RAM;
Reference numeral 10 denotes a tempo clock generation circuit that generates a tempo clock TC that controls the timing of generation of the rhythm sound. [2] Operation mode This electronic musical instrument has the following operation modes. Sampling Mode This mode is a mode in which external sounds picked up by the microphone 3 are sampled and stored in the musical tone memory within the musical tone forming circuit 4. Play Mode There are the following two modes of operation when the operator plays the keyboard. a Sampled Sound Keyboard Mode In this mode, the keyboard 1 generates both orchestral sounds and sampled sounds in response to operations in the entire key range. b Sampled sound base mode In this mode, all the keys on keyboard 1 are virtually divided into treble and bass sides, for example, with the F# 3 note as the boundary. The melody key range. When a key in the melody key range is operated, an orchestral sound is generated, while when a key in the accompaniment key range is operated, a bass sound based on a sampled sound is generated. Note that, in reality, chords (chord tones) are also generated simultaneously in response to key operations in the accompaniment key range, but this point is omitted in this embodiment. Note that the rhythm sound is generated only when generation of the rhythm sound is instructed by the rhythm switch on the operation panel 2. Further, when rhythm sound generation is not instructed, the above-mentioned bass sound is not generated either. Furthermore, in this electronic musical instrument, the pitch of the sampled sound mentioned above can be changed freely. [3] Details of the configuration of each part (i) Operation panel 2 FIG. 2 is a diagram showing the configuration of the operation panel 2. In this figure, 12 is a sampling switch for selecting sampling mode/play mode, 13 is an LED that lights up when the sampling mode is set, 14 is a start switch for instructing the start of sampling, and 15 is for instructing repeat sound, which will be described later. The repeat switch 16 is an LED that lights up when repeat generation is instructed. 17U,
17D are pitch change switches for setting the pitch change amount of the sampled sound;
8 is a switch for selecting the sampled sound keyboard mode/sampled sound base mode, 19 is the volume for adjusting the volume of the sampled sound, 20 is a tone selection switch for selecting the tone of the orchestral sound, and 21 is for selecting the type of rhythm. 22 is a volume for adjusting the volume of orchestral sounds, 23 is a rhythm switch that instructs generation/stop of rhythm sounds, 24 is an LED that lights up when rhythm sound generation is instructed, 25 is a rhythm sound This is the volume for adjusting the volume. (ii) Musical tone forming circuit 4 FIG. 3 is a block diagram showing the structure of the musical tone forming circuit 4. In this figure, 30 is an interface connected to the bus line 7 via a terminal T1, 31 is an orchestra sound forming circuit, and 32 is a rhythm sound forming circuit. 33,
34 and 35 are a mode register, a key-on register, and a repeat register, each of which is written by the CPU 6;
This is a bit register. 36 is an FN register into which a frequency number FN, which will be described later, is written by the CPU 6, 37 is a flip-flop set by the CPU 6, and 38 is a differential circuit that outputs a pulse signal at the falling edge of the input signal. 39 and 40 are a start address register and an end address register, respectively, and the musical tone memory GM shown in the figure
Data indicating the youngest address A1 (usually "0") and the final address A2 of , respectively, are set by the CPU 6 when the power is turned on. 41
is a gate circuit and its enable terminal
“Open” when “1” signal is supplied to EN;
It becomes "closed" when a "0" signal is supplied. 4
2 is an accumulator that accumulates the output of the gate circuit 41 at the timing of a clock pulse φ of a constant period; 43 is a differential circuit that outputs a pulse signal at the rising edge of the input signal;
44 is a change detection circuit that outputs a pulse signal P1 every time the output of the accumulator 42 changes, 45 is an adder circuit that adds the output of the accumulator 42 and the output of the start address register 39, and 46 is the output of the adder circuit 45. This is a comparison circuit that compares the output of the end address register 40 and outputs a match signal EQ (a "1" signal) when the two match. 47 is the microphone 3 supplied via the terminal T2.
An A/D (analog/digital) conversion circuit that converts the output (analog signal) of 47 into digital data and outputs it, GM is a tone memory in which the output (sampling data) of the A/D conversion circuit 47 is stored. This musical tone memory GM
, AD is an address terminal, WP is a write pulse terminal, R/W is a read/write terminal, and DATA is a data terminal. This musical tone memory GM, when a “1” signal is supplied to the read/write terminal R/W,
When a pulse signal of "1" is supplied to the write pulse terminal WP, the data obtained at the data terminal DATA is written into the address indicated by the address data applied to the address terminal AD, and the read/write terminal R/ When a "0" signal is supplied to W, the data in the address indicated by the address data applied to the address terminal AD is read and output. 48 is an envelope generating circuit.
As shown in FIG. 4, this envelope generating circuit 48 becomes data "1" when the output signal KON of the key-on register 34 rises to a "1" signal, and thereafter holds the data "1" and sends a signal. This is a circuit that outputs envelope data ED that gradually decreases to "0" after the KON signal falls to "0". 4
9 is a multiplication circuit that multiplies the output of the musical tone memory GM and the envelope data ED; 50 is a D/A (digital/analog) conversion circuit that converts the output of the multiplication circuit 49 into an analog signal; A sampled sound is obtained as the output of 50. 22, 25, 1
Reference numeral 9 denotes a volume adjustment volume provided on the operation panel 2, which controls the orchestra sound signal output from the orchestra sound forming circuit 31, the rhythm sound signal output from the rhythm sound forming circuit 32, and the D/A conversion circuit. The sampled sound signals output from 50 are each supplied to a mixing circuit 51 via these volumes 22, 25, and 19, mixed there, and then supplied to the sound system 6 via a terminal T3. (iii) ROM8 FIG. 5 is a diagram showing each memory set in the ROM8. In this figure, M
(0) to M(12) are each 12 types of frequency numbers.
Frequency number memory where FN is stored, 8a
8b is a rhythm pattern memory in which rhythm patterns used when forming rhythm sounds are stored;
8c is a bass pattern memory in which bass patterns used when forming bass sounds are stored.
is a program memory in which programs for the CPU 6 are stored. (iv) ROM9 FIG. 6 is a diagram showing registers and memories set in the RAM9. The data written to each register is as follows. NKC: Key code of the most recently pressed key KCREG: Key code of the sampled sound currently being sounded MODE: Sampling mode → “1” Play mode → “0” KB: Sampled sound base mode →
“1” Sampling sound keyboard mode → “0” PC (pitch counter), SFT, FMN: Pitch control data TPCTR (tempo counter): Rhythm sound control data RPT: When repeat sound is set → “1” Repeat sound is disabled setting Time → “0” RHY: Rhythm on → “1” Rhythm off → “0” TYPE: Chord type of chord ROOT: Root of chord Also, FMEM is the frequency used when reading musical tone memory G and the frequency number is stored. Number memory and TEMP are temporary storage memories in which various data are temporarily stored. [4] Frequency number FN Writing of musical tone memory GM in Figure 3/
The read address is this frequency number.
Made based on FN. That is, the frequency number FN in the FN register 36 is accumulated in the accumulator 42, and this accumulated value is supplied to the address terminal AD of the musical tone memory GM via the sequential addition circuit 45. In this case, since the cumulative cycle φ of the accumulator 42 is constant, when the value of the frequency number FN is small, the frequency of the waveform read from the musical tone memory GM becomes small, while on the other hand, when the value of the frequency number FN is large At this time, the frequency of the waveform read from the musical tone memory GM becomes large. That is, the frequency number FN determines the reading frequency of the musical tone memory GM, and similarly determines the writing frequency (sampling frequency) when writing to the musical tone memory GM. Incidentally, in this embodiment, the reading frequency of the memory GM in the play mode described above is basically the frequency shown in FIG. 7, corresponding to the pitch of the key. Furthermore, the frequency (sampling frequency) at the time of memory writing is the frequency surrounded by a broken line in the figure. and,
Twelve frequency numbers FN corresponding to the respective frequencies of the twelve keys C# 4 to C5 shown within the broken lines are stored in advance in the frequency number memory M(6) of the ROM 8 shown in FIG. In this case, the frequency numbers FN corresponding to frequencies outside the broken line in FIG. 7 can be easily calculated from the 12 frequency numbers FN inside the broken line. That is, for example, the readout frequency of 2KHz when C2 note is generated is 1/2 of the readout frequency of 4KHz when C3 note is generated, and the readout frequency of 4KHz when C3 note is generated is 8KHz when C4 note is generated. It is 1/2 of that. The same applies to other frequencies. (Frequency differs by 1/2 for every octave.) Therefore, the frequency number FN corresponding to the frequency outside the broken line can be easily obtained by bit-shifting the frequency number FN inside the broken line. In this example, the sampling frequency is only the frequency within the broken line, but the memory
The GM readout frequency can be changed as shown in FIG. 7, as described below. [5] How to change the reading frequency of musical tone memory GM In this example, 100 cents (semitone)
It is divided into 13 equal parts, and the readout frequency can be changed in units of 1 STEP = approximately 7.7 cents. That is, when the operator presses the pitch change switch 17U on the operation panel 2 (Fig. 2) once, twice, etc., the readout frequency changes from the fundamental frequency shown in Fig. 7.
As a result, the pitch of the sampled sound increases as 1STEP, 2STEP..., and when the pitch change switch 17D is pressed once, twice..., the readout frequency decreases as 1STEP, 2STEP... It's becoming like that. This change in read frequency is performed as follows. The diagram inside the symbol SNM in FIG. 8 is a diagram again showing the frequency number memories M(0) to M(12) shown in FIG. 5. As shown in this figure, the memory M(6) stores frequency numbers FN corresponding to the readout frequencies of C# 4 to C5 (see inside the broken line frame in Figure 7). In (7), each note name (C#~
C) is stored corresponding to..., memory M
In (12), the read frequency of memory M (6) is set to 6 steps.
A frequency number FN corresponding to the raised frequency is stored in correspondence with each note name. Also, memory M(5)
The read frequency of memory M(6) is set in 1 step.
A frequency number FN corresponding to the frequency lowered by 6 steps is stored in memory M(0), and a frequency number FN corresponding to the frequency lowered by 6 steps from the readout frequency of memory M(6) is stored in memory M(0). There is. When "6" is set in register PC (Figure 6), the frequency number in memory M(6)
FN is transferred to the memory FMEM shown in FIG. 6, and the tone memory GM (FIG. 3) is read out based on the frequency number FN in the memory FMEM.
In this case, the sampling frequency and the readout frequency are the same, so a sampling temperature without pitch shift is generated. Here, the phrase "sampling frequency and readout frequency are the same" means that, for example, when sampling is performed using the D3 key, the readout frequency based on pressing the D3 key becomes the same as the sampling frequency. Next, when the operator presses the pitch change switch 17U once, "7" is set in the register PC, and the frequency number FN in the memory M(7) is transferred to the memory FMEM.
In this case, the frequency number in this memory FMEM
The musical tone memory GM is read out based on FN, and therefore 1 STEP from the time of sampling.
A high pitch sampled sound is generated. Also,
The operator operates the pitch change switch 17D,
When "5" is set in register PC, memory M
The frequency number FN in (5) is set in the memory FMEM, and this allows 1 STEP from the time of sampling.
A low pitch sampled sound is generated. The same applies when 8 to 12 or 0 to 4 are set in the register PC. Next, if the data in the register PC is “13” or more (PC≧13) and if the data is “−1” or less (PC≦−
Case 1) will be explained. For example, PC=13
In this case, the frequency shown in table M(0)+1 in Figure 8, that is, the read frequency of memory (6), is
Frequency number FN corresponding to the frequency raised by 7 steps
must be stored in the memory FMEM. By the way, raising the frequency of memory M(6) by 7 steps means raising the frequency of memory M(0) by 13 steps. In other words, the frequency of each note name in memory M(0) is increased by 100 sets (semitones). ) means to raise. To create a table M(0)+1 in which each frequency in memory M(0) is raised by a semitone, each frequency in memory M(0) is raised by one level (a semitone higher), as shown in Figure 9. ) and write it to the table M(0)+1, and also write it to the memory M(0).
It is sufficient to double the frequency of the top row (pitch name C#) of the table M(0)+1 and write it to the bottom row (pitch name C) of table M(0)+1. Here, the above-mentioned "double" means raising the frequency by one octave. Thus, table M(0)+1 is simply created by shifting the frequency numbers FN in memory M(0). Similarly, when PC=14, 15...25, the required tables M(1)+1, M(2)+1...M(12)+1
are easily created by shifting the frequency numbers FN in the memories M(1), M(2)...M(12), respectively. In addition, the tables M(0)+2 to M(12)+2 required when PC=26 to 38 are each stored in memory M
It can be created by shifting the frequency number FN within (0) to M(12) twice, and it can be created in the same way even when the data in the register PC becomes larger. FIG. 10 shows the correspondence between the data in the register PC and the table. In addition,
This table is for convenience of explanation, and it goes without saying that an actual data table is not provided. On the other hand, if the data in register PC is "-1", table M(12)-1 shown in FIG. 8 is required. This table, as shown in Figure 11,
The frequency number FN in the memory M(12) is shifted down by one step and written into the table M(12)-1, and the frequency number FN in the bottom row of the memory M(12) is multiplied by 1/2 and written into the table. It is created by writing in the top row of M(12)-1. The same holds true for PC≦−2 (see FIG. 10). In this embodiment, as shown in FIG. 10, PC=103 is set as the maximum value of PC. If the value of PC becomes larger than this, D/A in Figure 3
This is because the processing of the conversion circuit 50 cannot catch up in time. [6] Overall operation The operation of the circuit shown in FIGS. 1 and 3 will be explained in each of the above-mentioned modes with reference to the processing flowcharts of the CPU 6 shown in FIGS. 12 to 20. Sampling Mode In this case, the operator first sets this mode by operating the sampling switch 12 (FIG. 2). When the sampling switch 12 is pressed, the CPU 6 detects this and performs the sampling switch on event process shown in FIG. That is, first, proceed to step SS1 and set the register MODE.
Invert the data (1 bit) in (Figure 6),
Next, when the data in the register MOODE is “1”, the lighting command for LED13 is set to “0”.
In this case, a light-off command is output to the operation panel 2 (steps SS2 to SS4). Then the register
Data in MODE to mode register 33
(Fig. 3) and write (step
SS5), returns to standby state. Here, register
“1” in MODE and mode register 33
If "0" is written, it means that the sampling mode has been set, and if "0" is written, it means that the play mode has been set. Further, which mode is set can be detected by turning on/off the LED 13. Next, the operator presses one of the keys C# 4 to C5 on the keyboard 1 that corresponds to the pitch of the sound to be sampled. When a key on the keyboard 1 is pressed, the CPU 6 detects this and proceeds to key-on event processing shown in FIG. 13. In this key-on event processing, first
In SK1, write the key code KC of the pressed key into register NKC. Next, the process advances to step SK2, and it is determined whether the data in the register MODE is "0" or not. In this case, the determination result is "NO"(MODE="1"), and therefore the process advances to step SSK3. step
In SK3, key code KC in register NKC
Note detection, that is, detection of which note name within one octave corresponds to the key code KC.
Next, when proceeding to step SK4, step SK3
The frequency number FN corresponding to the note detected in is read from the memory M(6) shown in FIG. 8, transferred and written to the NF register 36 (FIG. 3). Then, it returns to the standby state. Next, the operator sets the microphone 3 and presses the start switch 14. When the start switch 14 is pressed,
The CPU 6 proceeds to the start switch on event process shown in FIG. 14, sets the flip-flop 37 (FIG. 3), and then returns to the standby state. When flip-flop 37 is set,
The output of the OR gate 60 rises to "1", and at this rise, the differentiating circuit 43
A pulse signal is output from the OR gate 61.
is supplied to the reset terminal of the accumulator 42 via the . As a result, the accumulator 42 is reset. Furthermore, when the flip-flop 37 is set, since the output signal MD of the mode register 33 is "1" (sampling mode) at this time, the output of the AND gate 62 becomes "1", and this "1" signal is transmitted to the OR gate. Gate circuit 41 via 63
supplied to As a result, the gate circuit 41
is opened, and the frequency number FN in the FN register 36 is supplied to the accumulator 42, where it is successively accumulated at the timing of the clock pulse φ.
Then, this accumulation result and data indicating address A1 in the start address register 39 are added in an adder circuit 45, and this addition result is added to the address terminal AD of the musical tone memory GM.
supplied to On the other hand, every time the output of the accumulator 42 changes, the change detection circuit 44 outputs a pulse signal P1, and the tone memory GM
is supplied to the light pulse terminal WP of. As a result, data output from the A/D conversion circuit 47 (data obtained by A/D converting the output of the microphone 3) is sequentially written into the tone memory GM. When the output of the adder circuit 45 matches the data indicating address A2 in the end address register 40, a match signal EQ (“1” signal) is output from the comparison circuit 46, and the reset terminal R of the flip-flop 37 is output.
supplied to As a result, the flip-flop 37 is reset, its output rises to a "0" signal, and at this fall,
A pulse signal (sampling end signal) SE is output from the differentiating circuit 38. Then, this signal SE is transmitted via the interface 30.
Supplied to CPU6. CPU6 uses this signal
After receiving SE, the process proceeds to the sampling termination process shown in FIG. 15. In this process, first,
Write "0" into the register MODE (step SE1), then transfer and write the data in the register MODE to the register 33 (step SE2). This will automatically set you to play mode. Next, a command to turn off the LED 13 is output (step SE13), and the process returns to the standby state. a Sampling sound keyboard mode In this case, the operator first selects the LED1 by using the sampling switch 12 (Fig. 2).
3 off (if LED 13 is on), then switch 18 on the keyboard
Insert into KB side. This will cause the register
"0" is set in MODE and mode register 33, and "0" is set in register KB (FIG. 6). Next, the operator sets the pitch of the sampled sound. That is, first, press the pitch change switches 17U and 17D at the same time,
Next, if you want to raise the pitch, switch 1
If you want to lower 7U, press switch 17D by the number of steps you want to change. Pitch change switch 17U or 17D
When is pressed, CPU6 detects this and
The process advances to switch 17U on-event processing or switch 17D on-event processing shown in FIG. In the switch 17U on event processing, first step SH1
At , it is determined whether or not the switches 17D are pressed at the same time. If the result of this judgment is "YES", step SH2
Proceed to and write "6" into register PC (Figure 6). As a result, "no pitch deviation"
is set (see Figure 8). Also, if the judgment result of step SH1 is "NO",
Proceed to step SH3 and increment the data in register PC. Then, proceed to step SH4. On the other hand, Switch 17D
In the on-event process, first, in step SH6, it is determined whether or not the switches 17U are pressed at the same time. and,
If the result of this judgment is "YES", the process advances to step SH2, and if the result is "NO", the process advances to step SH7. At step SH7,
Decrement the data in register PC,
Then, proceed to step SH4. step
In SH4, the data in register PC is set to "13".
Divide by. Next, when the process advances to step SH8, it is determined whether the data in the register PC is positive or zero. If the result of this judgment is "YES", proceed to step SH9,
Write the value obtained by subtracting the quotient of step SH4's division from "7" to register SFT (Figure 6), and if "NO", step SH10
Then, the value obtained by subtracting the quotient of the division at step SH4 from "8" is written to the register SFT. Next, when proceeding to step SH11, if the remainder of the division at step SH4 is positive or zero, the remainder is directly stored in register FMN.
(Figure 6), and if the remainder is negative,
The next value is stored in register FMN according to that value.
write to. -1→12 -2→11 ... -12→1 Here, the following table shows examples of data written to registers SFT and FMN corresponding to the data in register PC.

【表】 ところで、前述したように、例えばPC
=14の場合、第8図に示すメモリM(1)を1
回上方へシフトしたテーブルM(1)+1の周
波数ナンバFNを第6図のメモリFMEM内
に書き込む必要がある。また、例えばPC
=−1の場合、メモリM(12)を下方へ1回シ
フトしたテーブルM(12)−1の周波数ナンバ
FNをメモリFMEMに書き込む必要があ
る。すなわち、第1表に示すレジスタ
FMN内のデータは、メモリFMEMの書き
込みの際に、メモリM(0)〜M(12)の内の
いずれを用いるかを、「SFT−7」はシフ
トの回数を、また「SFT−7」の符号は
シフトの方向を各々示している。 以上のことから、CPU6は、ステツプ
SH11の処理に続いて次の処理を行う。す
なわち、まずステツプSH12へ進むと、レ
ジスタSFT内のデータ負のデータか否か
を判断する。そして、この判断結果が
「YES」の場合はステツプSH13へ進む。
ステツプSH13では、レジスタSFT、
FMN内に各々「0」、「12」をセツトす
る。ここで、レジスタSFT内のデータが
負とは、レジスタPC内のデータが104以上
であることを意味している。そして、前述
したように、この実施例においては、PC
の最大値を103としているので、104以上の
場合は全てPC=103として処理するように
なつている。ステツプSH13はこの処理で
ある。 一方、ステツプSH12の判断結果が
「NO」の場合は、ステツプSH13をジヤン
プして、ステツプSH14へ進む。ステツプ
SH14では、レジスタFMN内のデータに
対応するメモリM(0)〜M(12)内の周波数
ナンバFN(12個)を読み出し、一時記憶
メモリTEMP(第6図)に書き込む。次
に、ステツプSH15へ進むと、ステツプ
SH14の処理において一時記憶メモリ
TEMPに記憶された周波数ナンバFNを、
「SFT−7」の値が示す回路および方向で
シフト演算する。ここで、「シフト演算」
には、前述した2倍あるいは1/2倍の演算
も勿論含んでいるものとする。次に、ステ
ツプSH16へ進むと、ステツプSH15のシフ
ト演算の結果をメモリFMEM(第6図)に
書き込む。そして、待機状態に戻る。 以上が、ピツチ変更スイツチ17U,1
7Dの操作に基づくCPU6の処理である。 上述したモード設定、ピツチ設定が終了
すると、次に操作者は、レピートスイツチ
15によりレピート発音を行わせるか否か
の設定を行う。ここで、レピート発音と
は、楽音メモリGM(第3図)内のサンプ
リングデータを、キーが押されている間繰
りり返し読み出し、楽音形成を行うことを
言う。このレピート発音が指示されていな
い時は、キーの押下時間にかかわらず、1
回のキー操作に対応して、楽音メモリGM
内のデータが1回だけ読み出され、楽音形
成が行われる。 操作者が、レピートスイツチ15を押す
と、CPU6がこれを検知し、第17図の
レピートスイツチ・オンイベント処理を行
う。すなわち、まず、ステツプSR1では、
レジスタRPT(第6図)内のデータ(1ビ
ツト)を反転し、次いで同レジスタRPT
内のデータをレピートレジスタ35(第3
図)内に転送して書き込む。次に、レジス
タRPT内のデータが“1”の時はLED1
6の点灯指令を、“0”の時は消燈指令を
各々操作パネル2へ出力し(ステツプSR2
〜SR4))、そして、待機状態に戻る。ここ
で、レジスタRPTおよびレピートレジス
タ35内に“1”が設定された場合に、レ
ピート発音が指定される。 以上の各設定を終了すると、操作者が鍵
盤演奏を行う。以下、キー操作に基づく回
路動作を説明する。 まず、キーが押下されると、CPU6が
これを検知し、第13図のステツプSK1へ
進み、押下キーのキーコードKCをレジス
タNKCに書き込む。次に、ステツプSK2
へ進むと、レジスタMODE内のデータが
“0”か否かを判断する。この場合、この
ステツプSK2の判断結果は「YES」であ
り、ステツプSK5へ進む。ステツプSK5で
は、レジスタKB(第6図)内のデータが
“1”か否かを判断する。この場合、判断
結果は「YES」であり(サンプリング音
キーボードモード)、したがつて、ステツ
プSK6へ進む。ステツプSK6では、オーケ
ストラ音の発音割当処理を行う。すなわ
ち、オーケストラ音形成回路31(第3
図)に設けられている複数の発音チヤンネ
ルの内の空きチヤンネルに、押下キーの発
音を割り当てる。なお、この割り当ては、
一時記憶メモリTEMPを用いて行なわれ
る。すなわち、メモリTEMP内には、予
め各発音チヤンネルに対応する記憶エリア
が設けられている。そして、CPU6は、
いずれかのチヤンネルに発音を割り当てた
時は、そのチヤンネルに対応する記憶エリ
ア内に“1”を書き込み、後述する割り当
て解除の時には、その記憶エリアに“0”
を書き込む。次に、ステツプSK7へ進む
と、レジスタNKC内のキーコードKCを、
キーオンを示すキーオン信号および割り当
てチヤンネルを示すチヤンネルデータと共
にオーケストラ音形成回路31へ出力す
る。これにより、同発音チヤンネルにおい
て上記押下キーに対応する楽音信号の形成
が行なわれ、サウンドシステム5から発音
される。次に、ステツプSK8へ進むと、レ
ジスタNKC内のキーコードKCをレジスタ
KCREG内に書き込む。次に、ステツプ
SK9へ進むと、レジスタNKC内のキーコ
ードKCのノートを検出し、次いで、周波
数ナンバメモリFMEM(第6図)から、検
出したノートに対応する周波数ナンバFN
を読み出す。次に、ステツプSK10へ進む
と、レジスタNKC内のキーコードKCのオ
クターブを検出し、この検出結果に基づい
て上記周波数ナンバFNをシフトする(前
記[4]項参照)。次に、ステツプSK11へ
進むと、ステツプSK10のシフト処理によ
つて得られた周波数ナンバFNをFNレジ
スタ36(第3図)に転送して書き込み、
また、キーオンレジスタ34(第3図)に
“1”を転送して書き込む。そして、待機
状態に戻る。 次に、CPU6による上記の各処理が終
了した時点以後の楽音形成回路4の動作を
説明する。 まず、ステツプSK11の処理が終了した
時点で、モードレジスタ33内には“0”
が書き込まれている。またこの時、レピー
トレジスタ35内のデータが“0”である
とする。この場合、レジスタ33の出力信
号MD、レジスタ35の出力信号RPが共
に“0”となり、したがつて、インバータ
65,66の出力が共に“1”となる。ま
たこの時、比較回路46の出力信号EQは
“0”であり、したがつて、インバータ6
7の出力が“1”となつている。この結
果、アンドゲート68の出力が“1”とな
り、この“1”信号がオアゲート63を介
してゲート回路41へ供給され、これによ
り、ゲート回路41が開状態となる。次
に、FNレジスタ36に周波数ナンバFN
がセツトされ(ステツプSK11)、次いでキ
ーオンレジスタ34に“1”がセツトされ
ると、同レジスタ34の出力信号KONが
“1”信号に立ち上がる。これにより、オ
アゲート60、微分回路43およびオアゲ
ート61を介してアキユムレータ42がリ
セツトされ、また、エンベロープデータ
EDが「1」に立ち上がる。また、FNレジ
スタ36に周波数ナンバFNがセツトさ
れ、ゲート回路41を介してアキユムレー
タ42へ供給されると、以後、同ナンバ
FNがアキユムレータ42において逐次累
算され、この累算結果にレジスタ39内の
アドレスA1を示すデータが加算され、こ
の加算結果が楽音メモリGMのアドレス端
子ADへ供給される。これにより、楽音メ
モリGMからサンプリングデータが順次読
み出され、この読み出されたデータに、乗
算回路49においてエンベロープデータ
EDが乗算され、この乗算結果がD/A変
換回路50においてアナログ信号に変換さ
れ、このアナログ信号がミキシング回路5
1を介してサウンドシステム5へ供給され
てサンプリング音が発生する。 次に、加算回路45の出力が、エンドア
ドレスレジスタ40内のアドレスA2を示
すデータに一致すると、比較回路46から
信号EQ(“1”信号)が出力される。これ
により、インバータ67の出力が“0”信
号となり、したがつて、オアゲート63の
出力が“0”信号となる。この結果、ゲー
ト回路41が閉状態となり、その出力が
「0」となる。ゲート回路41の出力が
「0」になると、以後アキユムレータ42
の出力変化がなくなり、したがつて、楽音
メモリGM内のデータの読み出しが停止す
る。 次にレピートレジスタ35に“1”が設
定されていた場合は、アンドゲート69の
出力が、信号MDが“0”である限り連続
的に“1”となる。この結果、ゲート回路
41が連続的に開状態となり、FNレジス
タ36内の周波数ナンバFNが常時アキユ
ムレータ42へ供給される。また、キーオ
ンレジスタ34の出力信号KONが“1”
信号になると、アンドゲート71の出力が
“1”信号となり、この“1”信号がアン
ドゲート72へ供給され、アンドゲート7
2が開状態となる。この結果、楽音メモリ
GM内のデータが1通り読み出された時点
で、一致信号EQが出力されると、この一
致信号EQがアンドゲート72、オアゲー
ト61を介してアキユムレータ42のリセ
ツト端子Rへ供給され、これにより、アキ
ユムレータ42がリセツトされる。そし
て、以後、再びアキユムレータ42におい
て累算が行なわれ、これにより楽音メモリ
GM内のデータが再度読み出され、この過
程がキーオンの間繰り返される。 次に、操作者がキーを離すと、CPU6
がこれを検知し、第18図に示すキーオフ
イベント処理を行う。すなわち、まず、ス
テツプSO1へ進み、レジスタMODE内の
データが“0”か否かを判断する。この場
合、判断結果は「YES」であり、ステツ
プSO2へ進む。なお、このステツプSO1の
判断結果が「NO」の場合、すなわち、前
述したサンプリングモードの場合は、キー
オフの際何の処理も行なわれない。次に、
ステツプSOO2では、レジスタKB内のデ
ータが“1”か否かを判断する。この場
合、判断結果は「YES」であり(サンプ
リング音キーボードモード)、ステツプ
SO3へ進む。ステツプSO3では、オフとさ
れたキーのオーケストラ音のチヤンネル割
り当て解除を行う。次に、ステツプSO4へ
進むと、オフされたキーが割り当てられて
いるチヤンネルを示すチヤンネルデータお
よびキーオフを示すキーオフ信号を各々オ
ーケストラ音形成回路31へ出力する。こ
れにより、当該キーのオーケストラ音が減
衰状態に移行して発音が停止する。次に、
ステツプSO5へ進むと、オフとされたキー
のキーコードKCがレジスタKCREG内の
キーコードKCと同一が否かを判断する。
そして、この判断結果が「YES」の場合
はステツプSO6へ進み、キーオンレジスタ
34へ“0”を転送して書き込み、そし
て、待機状態に戻る。キーオンレジスタ3
4に“0”が書き込まれると、同レジスタ
34の出力信号KONが“0”となり、こ
の“0”信号がエンベロープ発生回路48
へ供給される。これにより、以後エンベロ
ープデータEDが徐々に少し、したがつて、
サンプリング音が徐々に減衰する。一方、
ステツプSO5の判断結果が「NO」の場合
は、ステツプSO6をジヤンプして待機状態
に戻る。なお、ステツプSO5の判断結果が
「NO」の場合の処理は次のことを意味す
る。すなわち、この実施例においては、サ
ンプリング音を、最も新しく押下されたキ
ーについてのみ発生するようになつてい。
また最も新しく押下されたキーのキーコー
ドKCは、レジスタKCREG内に格納され
る(第13図のステツプSK8)。したがつ
て、ステツプSO5の判断結果が「NO」の
場合とは、離鍵されたキーが最も新しく押
下されたキーでない場合であり、この場
合、サンプリング音のキーオフ処理は行な
われない。 b サンプリング音ベースモード この場合、操作者は、まずサンプリング
スイツチ12(第2図)によつてLED1
3を消燈してプレイモードとし、次いでス
イツチ18をゲートBASS側へ投入する。
これにより、レジスタMODEおよびモー
ドレジスタ33内に“0”が設定され、ま
た、レジスタKB(第6図)内に“1”が
設定される。次に、操作者は、サンプリン
グ音のピツチ設定を行い、次いでレピート
スイツチ15によつてレピート否発音を設
定する。 次に操作者は、リズムスイツチ23を操
作することにより、LED24を点灯させ
る。操作者が、リズムスイツチ24を押す
と、CPU6がこれを検知し、第19図の
リズムスイツチ・オンイベント処理を行
う。すなわち、まず、ステツプSZ1では、
レジスタRHY(第6図)内のデータ(1ビ
ツト)を反転する。次に、レジスタRHY
内のデータが“1”の時にはLED24の
点灯指令を、“0”の時は消燈指令を各々
操作パネル2へ出力する(ステツプSZ2〜
SZ4)。次いで、レジスタTPCTR(第6図)
内に“0”を書き込み、そして、待機状態
に戻る。ここで、レジスタRHY内に“1”
が設定された場合に、リズム音およびベー
ス音の発生指定される。 以上述べた各設定が終了した後、操作者
が楽音演奏を行う。 操作者によつて鍵盤キーが押下される
と、CPU6は、前述した第13図の処理
へ進み、ステツプSK1、SK2、SK5を介し
てステツプSK12へ進む。ステツプSK12で
は、ステツプSK1においてレジスタNKC
に書き込まれたキーコードKCが、F#3
のキーコードKCよりり小あるいは等しい
か否かを判断する。そして、この判断結果
が「NO」の場合、すなわち、押下された
キーが前述したメロデイ鍵域のキーであつ
た場合は、ステツプSK13へ進み、オーケ
ストラ音の発音割当処理を行い、次いでス
テツプSK14へ進み、レジスタNKC内のキ
ーコードKC、キーオン信号および割り当
てチヤンネルを示すデータをオーケストラ
音形成回路31へ出力する。これにより、
押下キーに対応するオーケストラ音が発生
する。なお、ステツプSK13、SK14の処理
は、前述したステツプSK6、SK7の処理と
同じである。一方、ステツプSK12の判断
結果が「NO」の場合、すなわち、レジス
タNKC内のキーコードKCが伴奏鍵域のキ
ーであつた場合は、ステツプSK15へ進む。
ステツプSK15では、その時伴奏鍵域にお
いてオン状態にあるキーの全てを検出し、
該キーのキーコードKCに基づいて、伴奏
者(和音)のコードタイプおよび根音を検
出し、検出したコードタイプおよび根音を
各々、レジスタTYPEおよびROOT(第6
図)内に書き込む。そして、待機状態に戻
る。 このように、伴奏鍵域のキーが押下され
ると、CPU6によつてレジスタTYPEお
よびROOTの書き込みが行なわれる。そ
して、以後、これらのレジスタTYPE、
ROOT内のデータに基づいて、サンプリ
ング音によるベース音が形成される。以
下、この過程を説明する。 まず、第1図に示すテンポクロツク発生
回路10は、一定周基のテンポクロツク
TCを、常時、CPU6へ出力する。CPU6
は、このテンポクロツクTCを受ける毎に、
第20図に示すテンポクロツク処理を行
う。すなわち、まず、ステツプST1へ進
み、レジスタRHY内のデータが“1”か
否かを判断する。そして、この判断結果が
「NO」の場合(リズム音の発音が指示さ
れていない場合)は、そのまま待機状態に
戻る。また、ステツプST1の判断結果が
「YES」の場合は、ステツプST2へ進む。
ステツプSTT2では、レジスタTPCTR
(テンポカウタ)内のデータをインクリメ
ントする。次に、ステツプST3へ進むと、
リズムパターンプロメモリ8a(第5図)
に記憶されている複数のリズムパターンの
内の、リズム選択スイツチ21(第2図)
によつて設定されているリズム種類に対応
するリズムパターンから、レジスタ
TPCTR内のデータが示す発音タイミング
に対応するパターンを読み出し、リズム音
形成回路32へ出力する。リズム音形成回
路32は、供給されたパターンに基づいて
リズム音源を駆動してリズム音信号を形成
し、ミキシング回路51を介してサウンド
システム5へ出力する。次に、CPU6は
ステツプST4へ進み、レジスタKB内のデ
ータが“0”か否かを判断する。そして、
この判断結果が「NO」の場合、すなわ
ち、サンプリング音ベースモードであい場
合は、待機状態に戻る。これにより、サン
プリング音キーボードモードにおいてもリ
ズム音を発生させることができる。一方、
ステツプST4の判断結果が「YES」の場
合は、ステツプST5へ進む。ステツプST5
では、ベースパターンメモリ8b(第5図)
に記憶されている複数のベースパターンの
内の、リズム選択スイツチ21によつて選
択されているリズム種類およびレジスタ
TYPE内に記憶されているコードタイプに
各々対応するベースパターンから、テンポ
カウンタTPCTR内のデータが示す発音タ
イミングに対応するパターンを読み出す。
次に、ステツプST6へ進むと、ステツプ
ST5において読み出したパターンに基づい
て、ベース音発音タイミングか否かを判断
する。そして、この判断結果が「NO」の
場合は待機状態に戻り、「YES」の場合は
ステツプST7へ進む。ステツプST7では、
レジスタROOT内に記憶されている根音
および読み出したベースパターンに基づい
て発音すべきベース音のキーコードKCを
求め、次いで、このキーコードKC前述し
た場合と同様にして周波数ナンバFNに変
換し(第13図のステツプSK9、SK10参
照)、この周波数ナンバFNをFNレジスタ
36(第3図)に転送して書き込む。次
に、ステツプST8へ進むと、キーオンレジ
スタ34をまずクリア(“0”を書き込み)
し、その直後に“1”を書き込み、そし
て、待機状態に戻る。レジスタ36および
34に各々周波数ナンバFNおよび“1”
が書き込まれると、以後、楽音形成回路4
において、前述した場合と同様にしてサン
プリング音(この場合、ベース音)が形成
され、サウンドシステム5から発音され
る。このようにして、テンポクロツク発生
回路10からテンポクロツクTCが出力さ
れる毎に、リズム音およびサンプリング音
(ベース音)の形成が行なわれる。 次に、このサンプリング音ベースモード
において、押下されていたキーが離鍵され
ると、CPU6がこれを検知し、第18図
の処理へ進む。この処理においては、ま
ず、ステツプSO1の判断結果が「YES」、
ステツプSO2の判断結果が「NO」となる
ことから、ステツプSO7へ進む。ステツプ
SO7では、離鍵されたキーのキーコード
KCがF#3音のキーコードより小あるいは
等しいか否かを判断する。そして、この判
断結果が「YES」の場合、すなわち、離
鍵されたキーが伴奏鍵域のキーであつた場
合は、ステツプSO8へ進む。ステツプSO8
では、まず、伴奏鍵域においてオン状態に
ある全てのキーを検出し、次いで、同キー
のキーコードKCに基づいてコードタイプ
および根音を検出し、検出したコードタイ
プおよび根音を各々レジスタTYPE、
ROOTに書き込む。そして、待機状態に
戻る。なお、ステツプSO8の処理は、伴断
鍵域のキーの離鍵により、和音が変化する
場合があることから行う処理である。一
方、ステツプSO7の判断結果が「NO」の
場合、すなわち、離鍵されたキーがメロデ
イ鍵域のキーであつた場合は、ステツプ
SO9へ進み、離鍵されたキーの発音(オー
ケストラ音)の割当て解除を行い、次いで
ステツプSO10へ進み、離鍵されたキーが
割り当てられているチヤンネルを示すデー
タおよびキーオフ信号をオーケストラ音形
成回路31(第3図)へ出力する。そし
て、待機状態に戻る。 以上がこの発明の一実施例の詳細であ
る。なお、スタートスイツチ14に代え
て、シンクロスタートスイツチを設け、こ
のスイツチを押した直後はサンプリングを
開始せず、待機状態とし、マイクロフオン
3からの信号入力を検出してサンプリング
を開始するようにしてもよい。また、上記
実施例においては、A/D変換回路47の
出力をそのまま楽音メモリGMに記憶させ
ているが、A/D変換回路47の出力を
DPCM、ADPCM等の方式によつて符号
変換して楽音メモリGMに記憶させ、読み
出した時に再びもとのデータに戻すように
してもよい。この場合メモリGMの容量を
減らすことができる。また、ピツチ調整
を、ピツチ変更スイツチ17U,17Dに
よつて行うようになつているが、これに代
えて、ダイヤル式等他の方式を採用しても
よい。また、上記実施例においては、ピツ
チ調整を約7.7センント単位で行うように
なつているが、これは何セト単位で行うよ
うにしてもよい。また、上記実施例はソフ
トウエアによつて制御するようになつてい
るが、専用のハードウエアによつて制御す
るようにしてもよい。また、上記実施例
は、オーケストラ音形成回路31へ押下キ
ーのキーコードを出力するようになつてい
るが、これに代えて、周波数ナンバFNを
出力するようにしてもよい。更に、上記実
施例はサンプリング方式の楽音形成部にこ
の発明を適用した場合であるが、この発明
は、サンプリング方式以外の方式による楽
音形成の場合にも適用可能である。 「発明の効果」 以上説明したように、この発明によれば、音高
指定手段により指定された音高に対応し、かつピ
ツチ変更量指定手段により指定されたピツチ変更
量に対応して楽音のピツチを設定するための周波
数情報を出力する際に、従来のように高速の乗算
器等を必要とせず、簡単な構成で、かつ短時間で
上記周波数情報を出力することができる効果があ
る。また、この発明によれば、ソフトウエアによ
つて上記周波数情報を出力する場合においても、
従来のものより短時間で処理することができ、こ
の結果、楽音の立ち上がりが遅れる恐れが全くな
い。さらに、この発明によれば、ピツチ変更量指
定手段により指定されたピツチ変更量に対応した
周波数情報を形成する際に、第1の記憶手段内の
周波数情報を読み出し、その読み出された周波数
情報を変換した後、第2の記憶手段に書き込むよ
うに構成しているので、ピツチ変更量に対応した
周波数情報を記憶する記憶手段の容量を大幅に削
減できる効果がある。
[Table] By the way, as mentioned above, for example,
= 14, the memory M(1) shown in FIG.
It is necessary to write the frequency number FN of the table M(1)+1 shifted upwards into the memory FMEM shown in FIG. Also, for example, PC
= -1, the frequency number of table M(12)-1, which is obtained by shifting memory M(12) downward once
It is necessary to write FN to memory FMEM. That is, the registers shown in Table 1
The data in FMN specifies which of memories M(0) to M(12) will be used when writing to memory FMEM, "SFT-7" indicates the number of shifts, and "SFT-7" indicates the number of shifts. Each sign indicates the direction of shift. From the above, CPU6 is
Following the processing of SH11, the following processing is performed. That is, when the process first proceeds to step SH12, it is determined whether the data in the register SFT is negative data or not. If the result of this judgment is "YES", the process advances to step SH13.
At step SH13, register SFT,
Set "0" and "12" respectively in FMN. Here, the negative data in register SFT means that the data in register PC is 104 or more. As mentioned above, in this embodiment, the PC
Since the maximum value of is set to 103, all cases of 104 or more are treated as PC=103. Step SH13 is this process. On the other hand, if the determination result at step SH12 is "NO", step SH13 is skipped and the process proceeds to step SH14. step
At SH14, the frequency numbers FN (12) in the memories M(0) to M(12) corresponding to the data in the register FMN are read out and written into the temporary memory TEMP (FIG. 6). Next, proceed to step SH15, and step
Temporary memory in SH14 processing
The frequency number FN stored in TEMP,
Perform a shift operation using the circuit and direction indicated by the value of "SFT-7". Here, "shift operation"
Of course, it is assumed that the above-mentioned double or 1/2 times operation is also included. Next, proceeding to step SH16, the result of the shift operation at step SH15 is written into the memory FMEM (FIG. 6). Then, it returns to the standby state. The above is the pitch change switch 17U, 1
This is the processing of the CPU 6 based on the operation of the 7D. When the above-described mode setting and pitch setting are completed, the operator next sets whether or not to cause repeat sound generation using the repeat switch 15. Here, repeat sound generation refers to repeatedly reading sampling data in the musical tone memory GM (FIG. 3) while a key is pressed to form a musical tone. When this repeat sound is not specified, regardless of the length of time the key is pressed,
Musical tone memory GM corresponding to key operations
The data within is read out only once, and musical tone formation is performed. When the operator presses the repeat switch 15, the CPU 6 detects this and performs the repeat switch on event process shown in FIG. 17. That is, first, in step SR1,
Invert the data (1 bit) in register RPT (Figure 6) and then
The data in repeat register 35 (third
(Fig.) and write it. Next, when the data in register RPT is “1”, LED1
6 is output to the operation panel 2, and when it is "0", a light off command is output to the operation panel 2 (step SR2).
~SR4)) and return to standby state. Here, when "1" is set in register RPT and repeat register 35, repeat sound generation is designated. After completing each of the above settings, the operator plays the keyboard. Hereinafter, circuit operations based on key operations will be explained. First, when a key is pressed, the CPU 6 detects this, proceeds to step SK1 in FIG. 13, and writes the key code KC of the pressed key into the register NKC. Next, step SK2
Proceeding to step , it is determined whether the data in the register MODE is "0" or not. In this case, the determination result at step SK2 is "YES" and the process advances to step SK5. At step SK5, it is determined whether the data in register KB (FIG. 6) is "1" or not. In this case, the determination result is ``YES'' (sampling sound keyboard mode), and the process therefore advances to step SK6. In step SK6, processing for assigning sounds to orchestral sounds is performed. That is, the orchestra sound forming circuit 31 (third
The sound of the pressed key is assigned to an empty channel among the plurality of sound sound channels provided in the figure). Note that this assignment is
This is done using temporary memory TEMP. That is, a storage area corresponding to each sound generation channel is provided in advance in the memory TEMP. And CPU6 is
When a sound is assigned to a channel, "1" is written in the memory area corresponding to that channel, and "0" is written in that memory area when canceling the assignment as described later.
Write. Next, when proceeding to step SK7, enter the key code KC in the register NKC,
It is output to the orchestra sound forming circuit 31 together with a key-on signal indicating key-on and channel data indicating an assigned channel. As a result, a musical tone signal corresponding to the pressed key is formed in the same sound channel, and the sound signal is generated from the sound system 5. Next, when proceeding to step SK8, the key code KC in register NKC is registered.
Write in KCREG. Next, step
When proceeding to SK9, the note with the key code KC in the register NKC is detected, and then the frequency number FN corresponding to the detected note is detected from the frequency number memory FMEM (Figure 6).
Read out. Next, proceeding to step SK10, the octave of the key code KC in the register NKC is detected, and the frequency number FN is shifted based on the detection result (see item [4] above). Next, proceeding to step SK11, the frequency number FN obtained by the shift process of step SK10 is transferred to the FN register 36 (Fig. 3) and written.
Furthermore, "1" is transferred and written to the key-on register 34 (FIG. 3). Then, it returns to the standby state. Next, the operation of the musical tone forming circuit 4 after the completion of each of the above-mentioned processes by the CPU 6 will be explained. First, when the process of step SK11 is completed, the mode register 33 is set to "0".
is written. Also, assume that the data in the repeat register 35 is "0" at this time. In this case, the output signal MD of the register 33 and the output signal RP of the register 35 both become "0", and therefore the outputs of the inverters 65 and 66 both become "1". Also, at this time, the output signal EQ of the comparison circuit 46 is "0", so the inverter 6
The output of 7 is "1". As a result, the output of the AND gate 68 becomes "1", and this "1" signal is supplied to the gate circuit 41 via the OR gate 63, thereby opening the gate circuit 41. Next, enter the frequency number FN in the FN register 36.
is set (step SK11), and then "1" is set in the key-on register 34, and the output signal KON of the register 34 rises to a "1" signal. As a result, the accumulator 42 is reset via the OR gate 60, the differentiating circuit 43, and the OR gate 61, and the envelope data
ED rises to "1". Furthermore, when the frequency number FN is set in the FN register 36 and supplied to the accumulator 42 via the gate circuit 41, the same number
FN is successively accumulated in the accumulator 42, data indicating the address A1 in the register 39 is added to this accumulation result, and this addition result is supplied to the address terminal AD of the musical tone memory GM. As a result, the sampling data is sequentially read from the musical tone memory GM, and the multiplication circuit 49 adds envelope data to the read data.
ED is multiplied, this multiplication result is converted into an analog signal in the D/A conversion circuit 50, and this analog signal is sent to the mixing circuit 5.
1 to a sound system 5 to generate sampled sounds. Next, when the output of the adder circuit 45 matches the data indicating the address A2 in the end address register 40, the comparison circuit 46 outputs a signal EQ (a "1" signal). As a result, the output of the inverter 67 becomes a "0" signal, and therefore the output of the OR gate 63 becomes a "0" signal. As a result, the gate circuit 41 becomes closed and its output becomes "0". When the output of the gate circuit 41 becomes "0", the accumulator 42
There is no longer any output change, and reading of data in the musical tone memory GM is therefore stopped. Next, when "1" is set in the repeat register 35, the output of the AND gate 69 becomes "1" continuously as long as the signal MD is "0". As a result, the gate circuit 41 is continuously opened, and the frequency number FN in the FN register 36 is constantly supplied to the accumulator 42. Also, the output signal KON of the key-on register 34 is “1”
When it becomes a signal, the output of the AND gate 71 becomes a "1" signal, and this "1" signal is supplied to the AND gate 72, and the AND gate 7
2 is in the open state. As a result, musical tone memory
When the coincidence signal EQ is output when one set of data in the GM has been read out, this coincidence signal EQ is supplied to the reset terminal R of the accumulator 42 via the AND gate 72 and the OR gate 61, and as a result, Accumulator 42 is reset. Thereafter, accumulation is performed again in the accumulator 42, and as a result, the musical tone memory
The data in the GM is read again and this process is repeated during key-on. Next, when the operator releases the key, CPU6
detects this and performs the key-off event processing shown in FIG. That is, first, the process proceeds to step SO1, and it is determined whether the data in the register MODE is "0" or not. In this case, the judgment result is "YES" and the process advances to step SO2. Incidentally, if the determination result at step SO1 is "NO", that is, in the case of the aforementioned sampling mode, no processing is performed when the key is turned off. next,
In step SOO2, it is determined whether the data in register KB is "1" or not. In this case, the judgment result is “YES” (sampled sound keyboard mode), and the step
Proceed to SO3. In step SO3, the channel assignment of the orchestral sound of the key that has been turned off is canceled. Next, in step SO4, channel data indicating the channel to which the turned-off key is assigned and a key-off signal indicating the key-off are output to the orchestra sound forming circuit 31, respectively. As a result, the orchestral sound of the key shifts to an attenuated state and the sound generation stops. next,
Proceeding to step SO5, it is determined whether the key code KC of the turned-off key is the same as the key code KC in the register KCREG.
If the result of this judgment is "YES", the process advances to step SO6, where "0" is transferred and written to the key-on register 34, and the process returns to the standby state. Key-on register 3
When "0" is written to the register 4, the output signal KON of the same register 34 becomes "0", and this "0" signal is sent to the envelope generating circuit 48.
supplied to As a result, from then on, the envelope data ED gradually becomes smaller, and therefore,
The sampled sound gradually decays. on the other hand,
If the determination result at step SO5 is "NO", step SO6 is jumped and the process returns to the standby state. Note that the processing when the determination result at step SO5 is "NO" means the following. That is, in this embodiment, the sampled sound is generated only for the most recently pressed key.
Furthermore, the key code KC of the most recently pressed key is stored in the register KCREG (step SK8 in FIG. 13). Therefore, if the determination result in step SO5 is "NO", this means that the released key is not the most recently pressed key, and in this case, the key-off process for the sampled sound is not performed. b Sampling sound base mode In this case, the operator first uses the sampling switch 12 (Fig. 2) to
Turn off the light at 3 to enter play mode, then turn switch 18 to the gate BASS side.
As a result, "0" is set in register MODE and mode register 33, and "1" is set in register KB (FIG. 6). Next, the operator sets the pitch of the sampled sound, and then uses the repeat switch 15 to set whether or not to repeat the sound. Next, the operator turns on the LED 24 by operating the rhythm switch 23. When the operator presses the rhythm switch 24, the CPU 6 detects this and performs the rhythm switch on event process shown in FIG. 19. That is, first, in step SZ1,
Invert the data (1 bit) in register RHY (Figure 6). Then register RHY
When the data in is "1", a command to turn on the LED 24 is output to the operation panel 2, and when it is "0", a command to turn off the light is output to the operation panel 2 (steps SZ2 to
SZ4). Next, register TPCTR (Figure 6)
Write "0" into the memory and return to the standby state. Here, “1” is written in register RHY.
When is set, the generation of rhythm and bass sounds is specified. After completing each of the settings described above, the operator plays a musical tone. When a keyboard key is pressed by the operator, the CPU 6 proceeds to the process shown in FIG. 13 described above, and proceeds to step SK12 via steps SK1, SK2, and SK5. At step SK12, register NKC is set at step SK1.
It is determined whether the key code KC written in is smaller than or equal to the key code KC of the F# 3 note. If the result of this judgment is "NO", that is, if the pressed key is a key in the melody range mentioned above, the process proceeds to step SK13, where the orchestral sound generation assignment process is performed, and then the process proceeds to step SK14. Then, the key code KC in the register NKC, the key-on signal, and the data indicating the assigned channel are output to the orchestral sound forming circuit 31. This results in
An orchestral sound corresponding to the pressed key is generated. Note that the processing at steps SK13 and SK14 is the same as the processing at steps SK6 and SK7 described above. On the other hand, if the determination result at step SK12 is "NO", that is, if the key code KC in the register NKC is a key in the accompaniment key range, the process advances to step SK15.
In step SK15, all the keys that are in the on state in the accompaniment key range at that time are detected,
Based on the key code KC of the key, the chord type and root note of the accompanist (chord) are detected, and the detected chord type and root note are stored in registers TYPE and ROOT (6th
Write in the figure). Then, it returns to the standby state. In this way, when a key in the accompaniment key area is pressed, the CPU 6 writes to the registers TYPE and ROOT. And hereafter these registers TYPE,
Based on the data in ROOT, a bass sound is created using sampled sounds. This process will be explained below. First, the tempo clock generating circuit 10 shown in FIG.
TC is always output to CPU6. CPU6
Every time this tempo clock TC is received,
The tempo clock processing shown in FIG. 20 is performed. That is, first, the process proceeds to step ST1, and it is determined whether the data in the register RHY is "1" or not. If the result of this determination is "NO" (no instruction has been given to produce rhythm sounds), the process returns to the standby state. Further, if the determination result in step ST1 is "YES", the process advances to step ST2.
At step STT2, register TPCTR
Increment the data in (tempo counter). Next, proceed to step ST3.
Rhythm pattern pro memory 8a (Figure 5)
Rhythm selection switch 21 (Figure 2) among multiple rhythm patterns stored in
register from the rhythm pattern corresponding to the rhythm type set by
A pattern corresponding to the sound generation timing indicated by the data in TPCTR is read out and output to the rhythm sound forming circuit 32. The rhythm sound forming circuit 32 drives a rhythm sound source based on the supplied pattern to form a rhythm sound signal, and outputs it to the sound system 5 via the mixing circuit 51. Next, the CPU 6 proceeds to step ST4 and determines whether the data in the register KB is "0" or not. and,
If the result of this judgment is "NO", that is, if the sampling sound base mode is valid, the process returns to the standby state. Thereby, rhythm sounds can be generated even in the sampling sound keyboard mode. on the other hand,
If the determination result in step ST4 is "YES", proceed to step ST5. Step ST5
Now, the base pattern memory 8b (Fig. 5)
The rhythm type and register selected by the rhythm selection switch 21 from among the plurality of bass patterns stored in the
A pattern corresponding to the sound timing indicated by the data in the tempo counter TPCTR is read out from the base patterns corresponding to each chord type stored in TYPE.
Next, when you proceed to step ST6,
Based on the pattern read in ST5, it is determined whether or not it is the bass sound generation timing. If the result of this judgment is "NO", the process returns to the standby state, and if the result is "YES", the process proceeds to step ST7. In step ST7,
The key code KC of the bass note to be produced is determined based on the root note stored in the register ROOT and the read bass pattern, and then this key code KC is converted into a frequency number FN in the same manner as in the case described above. (See steps SK9 and SK10 in FIG. 13), transfer this frequency number FN to the FN register 36 (FIG. 3) and write it. Next, when proceeding to step ST8, the key-on register 34 is first cleared (written "0").
Immediately after that, "1" is written, and the state returns to the standby state. Frequency number FN and “1” are stored in registers 36 and 34, respectively.
Once written, the musical tone forming circuit 4
In this step, a sampled sound (in this case, a bass sound) is formed in the same manner as in the case described above, and is produced by the sound system 5. In this way, each time the tempo clock TC is output from the tempo clock generating circuit 10, a rhythm sound and a sampling sound (bass sound) are formed. Next, in this sampling sound base mode, when the pressed key is released, the CPU 6 detects this and proceeds to the process shown in FIG. 18. In this process, first, the judgment result of step SO1 is "YES",
Since the judgment result at step SO2 is "NO", the process advances to step SO7. step
In SO7, the key code of the released key
Determine whether KC is less than or equal to the F# 3 note key code. If the result of this judgment is "YES", that is, if the released key is a key in the accompaniment key range, the process advances to step SO8. Step SO8
First, all keys in the on state are detected in the accompaniment key range, then the chord type and root note are detected based on the key code KC of the same key, and the detected chord type and root note are stored in the register TYPE. ,
Write to ROOT. Then, it returns to the standby state. Note that the process at step SO8 is performed because the chord may change due to the release of a key in the beat key range. On the other hand, if the judgment result at step SO7 is "NO", that is, if the released key is a key in the melody range, then step
Proceeding to step SO9, the assignment of the sound produced by the released key (orchestral sound) is canceled, and then proceeding to step SO10, data indicating the channel to which the released key is assigned and the key-off signal are sent to the orchestral sound forming circuit 31. (Figure 3). Then, it returns to the standby state. The details of one embodiment of the present invention have been described above. In addition, a synchro start switch is provided in place of the start switch 14, and sampling is not started immediately after this switch is pressed, but the system is in a standby state, and sampling is started when a signal input from the microphone 3 is detected. Good too. Further, in the above embodiment, the output of the A/D conversion circuit 47 is stored as is in the musical tone memory GM, but the output of the A/D conversion circuit 47 is
The code may be converted using a method such as DPCM or ADPCM, stored in the musical tone memory GM, and returned to the original data when read out. In this case, the memory GM capacity can be reduced. Furthermore, although pitch adjustment is performed using pitch change switches 17U and 17D, other methods such as a dial type may be used instead. Further, in the above embodiment, pitch adjustment is performed in units of approximately 7.7 cents, but this may be performed in units of any number of sets. Further, although the above embodiment is designed to be controlled by software, it may be controlled by dedicated hardware. Further, in the above embodiment, the key code of the pressed key is output to the orchestra sound forming circuit 31, but instead of this, the frequency number FN may be output. Further, although the above embodiment is a case in which the present invention is applied to a musical tone forming section using a sampling method, the present invention can also be applied to a case where musical tones are formed by a method other than the sampling method. "Effects of the Invention" As explained above, according to the present invention, musical tones are changed in accordance with the pitch specified by the pitch specifying means and in response to the pitch change amount specified by the pitch change amount specifying means. When outputting frequency information for setting the pitch, there is no need for a high-speed multiplier or the like as in the conventional case, and there is an effect that the frequency information can be outputted in a short time with a simple configuration. Further, according to the present invention, even when the frequency information is output by software,
It can be processed in a shorter time than conventional methods, and as a result, there is no risk of delay in the rise of musical tones. Further, according to the present invention, when forming frequency information corresponding to the pitch change amount designated by the pitch change amount designation means, the frequency information in the first storage means is read out, and the read frequency information Since the frequency information is converted and then written to the second storage means, it is possible to significantly reduce the capacity of the storage means for storing frequency information corresponding to the amount of pitch change.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図はこの発明の一実施例の全体構成を示す
ブロツク図、第2図は操作パネル2の構成例を示
す図、第3図は楽音形成回路4の構成例を示すブ
ロツク図、第4図はエンベロープデータEDの波
形を信号KONとの関係の上で示す図、第5図は
ROM8の記憶内容の一例を示す図、第6図は
RAM9の記憶内容の一例を示す図、第7図は楽
音メモリGMの基本読み出し/書き込み周波数を
示す図、第8図〜第11図は各々ピツチ変更の方
法を説明するための図、第12図〜第20図は
各々CPU6の処理を説明するためのフローチヤ
ートである。 1……鍵盤、2……操作パネル、4……楽音形
成回路、6……CPU、8……ROM、9……
RAM、GM……楽音メモリ。17U,17D…
…ピツチ変更スイツチ。
FIG. 1 is a block diagram showing the overall configuration of an embodiment of the present invention, FIG. 2 is a diagram showing an example of the configuration of the operation panel 2, FIG. 3 is a block diagram showing an example of the configuration of the musical tone forming circuit 4, and FIG. The figure shows the waveform of envelope data ED in relation to signal KON, and Figure 5 shows the waveform of envelope data ED in relation to signal KON.
Figure 6 is a diagram showing an example of the memory contents of ROM8.
FIG. 7 is a diagram showing an example of the memory contents of RAM 9. FIG. 7 is a diagram showing the basic read/write frequency of musical tone memory GM. FIGS. 8 to 11 are diagrams for explaining the pitch change method. FIG. 12 20 are flowcharts for explaining the processing of the CPU 6. 1...Keyboard, 2...Operation panel, 4...Tone forming circuit, 6...CPU, 8...ROM, 9...
RAM, GM...music memory. 17U, 17D...
...Pitch change switch.

Claims (1)

【特許請求の範囲】 1 (a) 発生すべき楽音の音高を指定する音高指
定手段と、 (b) 少なくとも12の各音名に対応して、楽音のピ
ツチを設定するための1組の周波数情報を、そ
れぞれ半音未満の所定のピツチ変更量に対応し
てM組(M≧1)記憶した第1の記憶手段と、 (c) N種類(N>M)のピツチ変更量を選択的に
指定するピツチ変更量指定手段と、 (d) 前記ピツチ変更量指定手段によつて指示され
たピツチ変更量に応じて、前記第1の記憶手段
内のM組の周波数情報のいずれかを選択する選
択手段と、 (e) 前記ピツチ変更量が前記選択手段によつて選
択された1組の周波数情報のピツチ変更量と一
致するときは、その1組の周波数情報をそのま
ま出力し、一致しないときは前記ピツチ変更量
に応じて前記1組の周波数情報を変換して出力
する変換手段と、 (f) 前記変換手段によつて変換された1組の周波
数情報を記憶する第2の記憶手段と、 (g) 前記第2の記憶手段内の、前記音高指定手段
で指定された音高に対応する周波数情報を読み
出す読出し手段と、 を具備し、前記読み出された周波数情報を用いて
発生すべき楽音のピツチを設定するよにしてなる
電子楽器の楽音ピツチ設定装置。
[Scope of Claims] 1. (a) Pitch specifying means for specifying the pitch of a musical tone to be generated; (b) A set for setting the pitch of a musical tone corresponding to each of at least 12 note names. (c) selecting N types (N>M) of pitch change amounts; (d) a pitch change amount designating means for specifying a pitch change amount in accordance with the pitch change amount designated by the pitch change amount designation means; (e) When the amount of pitch change matches the amount of pitch change of one set of frequency information selected by the selection means, outputting the one set of frequency information as is, and (f) a second memory for storing the set of frequency information converted by the converting means; (g) reading means for reading out frequency information corresponding to the pitch specified by the pitch specifying means in the second storage means, and using the read frequency information. A musical tone pitch setting device for an electronic musical instrument, which sets the pitch of a musical tone to be generated.
JP60229083A 1985-10-15 1985-10-15 Musical sound pitch setter for electronic musical apparatus Granted JPS6289095A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60229083A JPS6289095A (en) 1985-10-15 1985-10-15 Musical sound pitch setter for electronic musical apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60229083A JPS6289095A (en) 1985-10-15 1985-10-15 Musical sound pitch setter for electronic musical apparatus

Publications (2)

Publication Number Publication Date
JPS6289095A JPS6289095A (en) 1987-04-23
JPH0333279B2 true JPH0333279B2 (en) 1991-05-16

Family

ID=16886482

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60229083A Granted JPS6289095A (en) 1985-10-15 1985-10-15 Musical sound pitch setter for electronic musical apparatus

Country Status (1)

Country Link
JP (1) JPS6289095A (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2820052B2 (en) * 1995-02-02 1998-11-05 ヤマハ株式会社 Chorus effect imparting device

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60125892A (en) * 1983-12-10 1985-07-05 株式会社河合楽器製作所 Electronic musical instrument

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60125892A (en) * 1983-12-10 1985-07-05 株式会社河合楽器製作所 Electronic musical instrument

Also Published As

Publication number Publication date
JPS6289095A (en) 1987-04-23

Similar Documents

Publication Publication Date Title
US4882963A (en) Electronic musical instrument with editing of tone data
JP3372124B2 (en) Electronic musical instrument
JP2745865B2 (en) Music synthesizer
JPH0333279B2 (en)
JP2626307B2 (en) Electronic musical instrument
JPH0231395B2 (en)
US5298677A (en) Automatic playing apparatus having reduced memory requirements
JPH0333278B2 (en)
JP3169953B2 (en) Sound source device
JPH11202866A (en) Method and device for musical sound generation
JPH0631977B2 (en) Electronic musical instrument
JPS6335038B2 (en)
JPH0522918B2 (en)
JP3050779B2 (en) Signal processing device
JPS61248096A (en) Electronic musical instrument
JPH0677196B2 (en) Playing device
JP2642092B2 (en) Digital effect device
JPS6259320B2 (en)
JPH0468632B2 (en)
JP3508139B2 (en) Digital signal processor
JPS6333278Y2 (en)
JPS6145295A (en) Envelope control system
JPS644157Y2 (en)
JP2560276B2 (en) Digital effect device
JPH0138638Y2 (en)

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees