JPH0640268B2 - 電子楽器の周波数制御装置 - Google Patents
電子楽器の周波数制御装置Info
- Publication number
- JPH0640268B2 JPH0640268B2 JP59072040A JP7204084A JPH0640268B2 JP H0640268 B2 JPH0640268 B2 JP H0640268B2 JP 59072040 A JP59072040 A JP 59072040A JP 7204084 A JP7204084 A JP 7204084A JP H0640268 B2 JPH0640268 B2 JP H0640268B2
- Authority
- JP
- Japan
- Prior art keywords
- code
- storage means
- stored
- register
- value
- 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
Links
Landscapes
- Electrophonic Musical Instruments (AREA)
Description
【発明の詳細な説明】 〔発明の技術分野〕 本発明は、デジタル技術を用いて楽音の周波数を逐次変
化させるようにした電子楽器の周波数制御装置に関す
る。
化させるようにした電子楽器の周波数制御装置に関す
る。
近年、デジタル技術を用いて電子楽器を構成することが
さかんにおこなわれている。ところで、このような電子
楽器において、楽音の周波数を逐次変化させる技術例え
ばポルタメント効果を得る技術を開示したものとして特
開昭50−146321号がある。この先行技術におい
ては、周波数制御はすべて周波数ナンバーと称するデー
タを逐次変化させて行っているが、この種のデータは周
波数に比例するためそれを使用すると多ビットの演算処
理を行わねばならぬ欠点があり、また周波数変化はヘル
ツ単位で行われるという問題があった。
さかんにおこなわれている。ところで、このような電子
楽器において、楽音の周波数を逐次変化させる技術例え
ばポルタメント効果を得る技術を開示したものとして特
開昭50−146321号がある。この先行技術におい
ては、周波数制御はすべて周波数ナンバーと称するデー
タを逐次変化させて行っているが、この種のデータは周
波数に比例するためそれを使用すると多ビットの演算処
理を行わねばならぬ欠点があり、また周波数変化はヘル
ツ単位で行われるという問題があった。
このような周波数変化をセント単位で行わせるようにし
たものとして特開昭58−199392号がある。しか
るに、この先行技術においては、ポルタメントの変化ス
ピードは、変化すべき音高幅によらず一定であって、そ
のためポルタメント演奏の時間が音高幅が大きくなれば
長くなるというように一定時間とならないという欠点が
あった。
たものとして特開昭58−199392号がある。しか
るに、この先行技術においては、ポルタメントの変化ス
ピードは、変化すべき音高幅によらず一定であって、そ
のためポルタメント演奏の時間が音高幅が大きくなれば
長くなるというように一定時間とならないという欠点が
あった。
このポルタメント演奏の時間を音高幅に依存せずに一定
とするためには、ポルタメント演奏の時間は一定とし、
音高幅が小さいときは一定時間毎の音高変化幅を小さく
し、音高幅が大きいときはこの音高変化幅を大きくする
方法(例えば特開昭53−132326号)、あるいは
この音高変化幅を一定として変化するタイミングの周期
を、音高幅が大きいときは大きくし、音高幅が小さいと
きは小さくする方法(例えば特開昭55−70893
号)が考えられる。これらの方法によれば、ポルタメン
ト演奏時間は演奏幅が変化してもそれに依存せずに一定
となる。
とするためには、ポルタメント演奏の時間は一定とし、
音高幅が小さいときは一定時間毎の音高変化幅を小さく
し、音高幅が大きいときはこの音高変化幅を大きくする
方法(例えば特開昭53−132326号)、あるいは
この音高変化幅を一定として変化するタイミングの周期
を、音高幅が大きいときは大きくし、音高幅が小さいと
きは小さくする方法(例えば特開昭55−70893
号)が考えられる。これらの方法によれば、ポルタメン
ト演奏時間は演奏幅が変化してもそれに依存せずに一定
となる。
しかしながら、このポルタメント演奏時間は音高幅に依
存せずに一定となるのはよいが、例えば演奏速度が速い
場合などポルタメント演奏時間が終了しないうちにまた
新たな音高が入力されることになり、ポルタメント効果
がはっきりと聞き取れないという問題がある。
存せずに一定となるのはよいが、例えば演奏速度が速い
場合などポルタメント演奏時間が終了しないうちにまた
新たな音高が入力されることになり、ポルタメント効果
がはっきりと聞き取れないという問題がある。
この問題を解決するにはポルタメント演奏時間を、演奏
者が外部より自由に設定できるようにすることが考えら
れる。このときももちろんポルタメント演奏時間がいか
なる値に設定されたとしても、従来のように音高幅の変
化によっては変更しないようにしなければならない。
者が外部より自由に設定できるようにすることが考えら
れる。このときももちろんポルタメント演奏時間がいか
なる値に設定されたとしても、従来のように音高幅の変
化によっては変更しないようにしなければならない。
しかしながら、従来のように単に音高幅に応じて一定時
間毎の音高変化幅を可変したり、逆に音高変化幅を一定
として変化するタイミングを可変させただけでは、設定
されたポルタメント演奏時間だけ音高を滑らかに変化さ
せることはできなかった。
間毎の音高変化幅を可変したり、逆に音高変化幅を一定
として変化するタイミングを可変させただけでは、設定
されたポルタメント演奏時間だけ音高を滑らかに変化さ
せることはできなかった。
本発明は、ポルタメント演奏時間が外部より自由に設定
することができるとともに、この設定されたポルタメン
ト演奏時間が音高幅に依存して変化しないようにしたポ
ルタメント効果を付与することのできる電子楽器の周波
数制御装置を提供することを目的とする。
することができるとともに、この設定されたポルタメン
ト演奏時間が音高幅に依存して変化しないようにしたポ
ルタメント効果を付与することのできる電子楽器の周波
数制御装置を提供することを目的とする。
本発明の要点は、前回操作された演奏操作子のコードと
今回操作された演奏操作子のコードとの差のコードを演
算し、この差のコードを外部より設定記憶された音高変
化幅に対する微小コードで除算してやることにより累算
回数を演算するとともに、この累算回数で外部より設定
記憶されたポルタメント演奏時間に対応する値を除算す
ることにより累算タイミング信号の発生周期を演算し、
この発生周期に対応して微小コードを累算していき、こ
の累算出力コードが上記差のコードに一致又は超過する
まで累算を継続し、この累算出力コードと前回操作され
た演奏操作子のコードから得られるコードに従って周波
数制御を行うようにしたことである。
今回操作された演奏操作子のコードとの差のコードを演
算し、この差のコードを外部より設定記憶された音高変
化幅に対する微小コードで除算してやることにより累算
回数を演算するとともに、この累算回数で外部より設定
記憶されたポルタメント演奏時間に対応する値を除算す
ることにより累算タイミング信号の発生周期を演算し、
この発生周期に対応して微小コードを累算していき、こ
の累算出力コードが上記差のコードに一致又は超過する
まで累算を継続し、この累算出力コードと前回操作され
た演奏操作子のコードから得られるコードに従って周波
数制御を行うようにしたことである。
以下図面に示す第1実施例につき説明する。第1図は、
実施例のブロック回路を示すもので、図中1は、演奏操
作子としてのキーボードであり、複数の鍵を有する。い
ま、その鍵は、音高C1から音高C6までの61個の鍵
を有するものとする。このキーボード1の鍵操作信号は
スキャンニングの結果CPU2に供給される。このCP
U2は、マイクロプロセッサ等から成るものであり、後
述する各種処理の制御を行う。このCPU2には、更に
ポルタメント(グリッサンド)の速度を変化させるボリ
ューム3からの出力が与えられる。
実施例のブロック回路を示すもので、図中1は、演奏操
作子としてのキーボードであり、複数の鍵を有する。い
ま、その鍵は、音高C1から音高C6までの61個の鍵
を有するものとする。このキーボード1の鍵操作信号は
スキャンニングの結果CPU2に供給される。このCP
U2は、マイクロプロセッサ等から成るものであり、後
述する各種処理の制御を行う。このCPU2には、更に
ポルタメント(グリッサンド)の速度を変化させるボリ
ューム3からの出力が与えられる。
具体的には、ボリューム3は、ポルタメントの期間、つ
まり前回のキーコードから今回のキーコードへ変化する
までの時間を決定するものであり、またボリューム21
は、1回の演算で変更するキーコードの幅(セント単
位)つまりΔPITCHを決定するもので、このボリュ
ーム21の操作はCPU2にて検知されて、レジスタ2
3にΔPITCHとしてストアされる。そしてCPU2
は、キーボード1及びボリューム3からの出力に従って
レジスタ4〜11に各種データを生成し供給すると共
に、これらのレジスタ4〜11の内容に従って、演算処
理を行う。
まり前回のキーコードから今回のキーコードへ変化する
までの時間を決定するものであり、またボリューム21
は、1回の演算で変更するキーコードの幅(セント単
位)つまりΔPITCHを決定するもので、このボリュ
ーム21の操作はCPU2にて検知されて、レジスタ2
3にΔPITCHとしてストアされる。そしてCPU2
は、キーボード1及びボリューム3からの出力に従って
レジスタ4〜11に各種データを生成し供給すると共
に、これらのレジスタ4〜11の内容に従って、演算処
理を行う。
即ち、レジスタ4は前回の鍵操作に従ったキーコードを
ストアするもので、ポリフォニックの発音数分の個数分
(例えばn=0〜7までの8個)のエリアを有する。い
ま図面ではOSC(old scale code)と示してある。
ストアするもので、ポリフォニックの発音数分の個数分
(例えばn=0〜7までの8個)のエリアを有する。い
ま図面ではOSC(old scale code)と示してある。
レジスタ5は、今回の鍵操作に従ったキーコードをスト
アするもので、ポリフォニックの発音数分の個数(上記
同様にn=0〜7までの8個)分のエリアを有する。図
面ではNSC(new scale code)と示してある。
アするもので、ポリフォニックの発音数分の個数(上記
同様にn=0〜7までの8個)分のエリアを有する。図
面ではNSC(new scale code)と示してある。
なお、第2図に示すように、各鍵は、バイナリコードで
表現されたキーコードを有している。なお、各鍵のキー
コードは16進表現で0〜3Cまでの値をとる。
表現されたキーコードを有している。なお、各鍵のキー
コードは16進表現で0〜3Cまでの値をとる。
レジスタ6は、前回のキーコード(OSC)から今回の
キーコード(NSC)を引いた値のコードがストアされ
る。このレジスタ6も、ポリフォニックの発音数分の個
数(n=0〜7の8個)のエリアを有する。図面ではV
ALUEと示してある。そして、このレジスタ6ととも
に使用されるのがレジスタ7であって、前回のキーコー
ド(OSC)から今回のキーコード(NSC)を減算し
た結果が正であるか負であるのかを示す符号又はを
発音数分(n=0〜7の8個)記憶する。図面ではSI
GNと示してある。
キーコード(NSC)を引いた値のコードがストアされ
る。このレジスタ6も、ポリフォニックの発音数分の個
数(n=0〜7の8個)のエリアを有する。図面ではV
ALUEと示してある。そして、このレジスタ6ととも
に使用されるのがレジスタ7であって、前回のキーコー
ド(OSC)から今回のキーコード(NSC)を減算し
た結果が正であるか負であるのかを示す符号又はを
発音数分(n=0〜7の8個)記憶する。図面ではSI
GNと示してある。
レジスタ24は、演算周期(タイミング)を決定するデ
ータtnを記憶するもので、次式による。
ータtnを記憶するもので、次式による。
Δt=PSF/|OSC−NSC|/ΔPITCH なおこの式のPSFはレジスタ10に記憶される値で、
Portament Speed Factorを示し、ポルタメントのスピー
ドを決定する値である。
Portament Speed Factorを示し、ポルタメントのスピー
ドを決定する値である。
このレジスタ24もポリフォニックの発音数分の個数
(n=0〜7の8個)のエリアを有する。
(n=0〜7の8個)のエリアを有する。
そしてこのΔtnのタイミング毎にレジスタ23のΔP
ITCHは累算されて、レジスタ9に記憶される。この
レジスタ9もポリフォニックの発音数分の個数(n=0
〜7の8個)のエリアを有し、図面では、PITCH▽
と示してある。
ITCHは累算されて、レジスタ9に記憶される。この
レジスタ9もポリフォニックの発音数分の個数(n=0
〜7の8個)のエリアを有し、図面では、PITCH▽
と示してある。
更に、第1図中符号12は、タイマーであり発音数分の
個数(n=0〜7の8個)有し、説明の便宜上TIME
Rと示す。このタイマー12に対しCPU2は、タイマ
ー駆動時間Δtを示すデータをプリセットし、その時間
が経過すると、インタラプト信号INTをCPU2に与
える。
個数(n=0〜7の8個)有し、説明の便宜上TIME
Rと示す。このタイマー12に対しCPU2は、タイマ
ー駆動時間Δtを示すデータをプリセットし、その時間
が経過すると、インタラプト信号INTをCPU2に与
える。
CPU2は、上述したレジスタ4〜11、タイマー12
の出力信号に応じて逐次変化するキーコード信号KCD
を、ポリフォニックの発音数分(n=0〜7)だけ発生
し、周波数データ変換部13に送出する。即ち、上記キ
ーコード信号KCDは、セント比例するコードを示すも
ので、それを周波数データ変換部13はヘルツ単位で動
作するトーンジェネレータ群14へ変換して送出する。
この変換された周波数データを図面ではnと示してあ
る。
の出力信号に応じて逐次変化するキーコード信号KCD
を、ポリフォニックの発音数分(n=0〜7)だけ発生
し、周波数データ変換部13に送出する。即ち、上記キ
ーコード信号KCDは、セント比例するコードを示すも
ので、それを周波数データ変換部13はヘルツ単位で動
作するトーンジェネレータ群14へ変換して送出する。
この変換された周波数データを図面ではnと示してあ
る。
トーンジェネレータ群14は、ポリフォニックの発音数
分(n=0〜7)の発音回路を有する。それは、個別の
回路構成をとるものであっても、時分割処理により複数
音の楽音生成をなし得る回路構成を有するものであって
もよい。
分(n=0〜7)の発音回路を有する。それは、個別の
回路構成をとるものであっても、時分割処理により複数
音の楽音生成をなし得る回路構成を有するものであって
もよい。
次に第3図乃至第7図を参照して、本実施例の動作につ
き詳述する。第3図は、CPU2の処理を示すフローチ
ャートであり、ステップR1では、レジスタ10のPS
Fの値を決定する。このPSFの値は、ボリューム3の
操作によって変化する。そして、PSFが1のとき最も
ゆっくりポルタメントがかかり、PSFが3F(16進
表現)のとき最もはやくポルタメントがかかる。そして
ボリューム21の操作位置に従ってレジスタ23の値Δ
PITCHを決定し入力する。
き詳述する。第3図は、CPU2の処理を示すフローチ
ャートであり、ステップR1では、レジスタ10のPS
Fの値を決定する。このPSFの値は、ボリューム3の
操作によって変化する。そして、PSFが1のとき最も
ゆっくりポルタメントがかかり、PSFが3F(16進
表現)のとき最もはやくポルタメントがかかる。そして
ボリューム21の操作位置に従ってレジスタ23の値Δ
PITCHを決定し入力する。
ステップR2、R3はCPU2がキーボード1に対しキ
ーコモン信号を出力し、その結果得られるキーデータ信
号を入力するものであり、キーボード1の操作状態を検
出する。そしてステップR4に進み、もし新たにキーオ
フされたものがあればステップR5にてキーオフ処理を
行う。即ち、CPU2は、発音中の楽音を消音すべくト
ーンジェネレータ群14の特定のトーンジェネレータT
Gnにキーオフ指令を図示しない信号線を介して与え
る。
ーコモン信号を出力し、その結果得られるキーデータ信
号を入力するものであり、キーボード1の操作状態を検
出する。そしてステップR4に進み、もし新たにキーオ
フされたものがあればステップR5にてキーオフ処理を
行う。即ち、CPU2は、発音中の楽音を消音すべくト
ーンジェネレータ群14の特定のトーンジェネレータT
Gnにキーオフ指令を図示しない信号線を介して与え
る。
更に、CPU2は、ステップR4にてNOの判断がなさ
れるとステップR5に進行することなくステップR6へ
移る。またステップR5の実行後もステップR6へ移
る。
れるとステップR5に進行することなくステップR6へ
移る。またステップR5の実行後もステップR6へ移
る。
ステップR6では、ステップR2、R3にて検出動作が
なされた結果新たに押圧操作された鍵があるか否か判別
し、もしNOの判断がなされると、ステップR6に続け
てステップR2へ進行し、YESの判断がなされるとス
テップR7へ進行する。ステップR7では、レジスタ5
に記憶されていたNSCnをレジスタ4にOSCnとし
て転送する。そして、ステップR8に進行し新たに操作
された鍵に対応するキーコードをレジスタ5のNSCn
としてストアする。
なされた結果新たに押圧操作された鍵があるか否か判別
し、もしNOの判断がなされると、ステップR6に続け
てステップR2へ進行し、YESの判断がなされるとス
テップR7へ進行する。ステップR7では、レジスタ5
に記憶されていたNSCnをレジスタ4にOSCnとし
て転送する。そして、ステップR8に進行し新たに操作
された鍵に対応するキーコードをレジスタ5のNSCn
としてストアする。
なお、この実施例にあっては、8個のレジスタのうちい
ずれのレジスタに割当てるかは、nの値が小さいものか
ら順に行うことで決定され、例えば1つの鍵が押鍵さ
れ、その後その鍵が離鍵され、更にその後新たな鍵が押
鍵された場合は、n=0の同一のレジスタに次々と割当
てられるようになる。又、例えば同時に3鍵押圧されれ
ばn=0〜2の各レジスタに夫々のキーコードを割当
て、離鍵後異なる3鍵が押鍵されると、前の3鍵と同じ
n=0〜2の各レジスタにその新たな押鍵によるキーコ
ードを割当てるようになっている。
ずれのレジスタに割当てるかは、nの値が小さいものか
ら順に行うことで決定され、例えば1つの鍵が押鍵さ
れ、その後その鍵が離鍵され、更にその後新たな鍵が押
鍵された場合は、n=0の同一のレジスタに次々と割当
てられるようになる。又、例えば同時に3鍵押圧されれ
ばn=0〜2の各レジスタに夫々のキーコードを割当
て、離鍵後異なる3鍵が押鍵されると、前の3鍵と同じ
n=0〜2の各レジスタにその新たな押鍵によるキーコ
ードを割当てるようになっている。
そして、ステップR9において、レジスタ5の内容NS
Cnとレジスタ4の内容OSCnとの大小判断を検出
し、YESの判断がなされるとステップR10に進行し、
NSCn−OSCnの値をレジスタ6にVALUEnと
してストアさせ、ステップR11にて符号がであること
を示すデータをレジスタ7にSIGNnとしてストアさ
せる。
Cnとレジスタ4の内容OSCnとの大小判断を検出
し、YESの判断がなされるとステップR10に進行し、
NSCn−OSCnの値をレジスタ6にVALUEnと
してストアさせ、ステップR11にて符号がであること
を示すデータをレジスタ7にSIGNnとしてストアさ
せる。
従って後述するようにこの場合は今回のキーコード(N
SCn)が前回のキーコード(OSCn)より大である
から音高が上昇するようなポルタメント効果が得られ
る。
SCn)が前回のキーコード(OSCn)より大である
から音高が上昇するようなポルタメント効果が得られ
る。
逆にステップR9にてNOの判断がなされると、ステッ
プR9に続けてステップR12へ進行し、レジスタ4の内
容OSCnからレジスタ5の内容NSCnを減算した
値、即ちOSCn−NSCnの値をレジスタ6のVAL
UEnにストアさせ、ステップR13にて符号がである
ことを示すデータをレジスタ7のSIGNnにストアさ
せる。
プR9に続けてステップR12へ進行し、レジスタ4の内
容OSCnからレジスタ5の内容NSCnを減算した
値、即ちOSCn−NSCnの値をレジスタ6のVAL
UEnにストアさせ、ステップR13にて符号がである
ことを示すデータをレジスタ7のSIGNnにストアさ
せる。
従って、後述するようにこの場合に今回のキーコード
(NSCn)が前回のキーコード(OSCn)より小で
あるから音高が下降するようなポルタメント効果が得ら
れる。
(NSCn)が前回のキーコード(OSCn)より小で
あるから音高が下降するようなポルタメント効果が得ら
れる。
そして上記ステップR11またはステップR13の処理の後
ステップR14に進行する。
ステップR14に進行する。
そして次のステップR14では、上述したタイミングを決
定するデータΔtnを得るもので、レジスタ10のPS
Fのデータと、レジスタ6のVALUEnと、レジスタ
23のΔPITCHとから、 Δtn=PSF/VALUEn/ΔPITCH の計算式に従って算出する。
定するデータΔtnを得るもので、レジスタ10のPS
Fのデータと、レジスタ6のVALUEnと、レジスタ
23のΔPITCHとから、 Δtn=PSF/VALUEn/ΔPITCH の計算式に従って算出する。
即ち、例えば、PSFを8secとしたとき、ΔPITC
Hが0.0625、OSCが0、NSCが1のとき、 Δtn=8/|1−0|/0.0625 =0.5sec となり、同様にPSFが8secとしたとき、ΔPITC
Hが0.0625、OSCが0、NSCが3C(16進
表現)では、 Δtn=8/|3C−0|/0.0625 =8.3msec となる。つまり、前回と今回の押鍵の音高幅が広けれ
ば、タイマーインタラプトが短い期間でかかるように
し、上記音高幅が狭ければ、タイマーインタラプトは長
い期間毎にかかるようになる。
Hが0.0625、OSCが0、NSCが1のとき、 Δtn=8/|1−0|/0.0625 =0.5sec となり、同様にPSFが8secとしたとき、ΔPITC
Hが0.0625、OSCが0、NSCが3C(16進
表現)では、 Δtn=8/|3C−0|/0.0625 =8.3msec となる。つまり、前回と今回の押鍵の音高幅が広けれ
ば、タイマーインタラプトが短い期間でかかるように
し、上記音高幅が狭ければ、タイマーインタラプトは長
い期間毎にかかるようになる。
また、この実施例では、ΔPITCHを1とする、つま
り100セント毎の音高変化をとらせてグリッサンド効
果を得るようにすることも可能であって、例えばPSF
を2secとしOSCが0で、NSCがC(16進表現)
のとき、 tn=|C−0|/1 =166.6msec 同様に、ΔPITCHを1とし、PSFを2secとし、
OSCを0、NSCを3C(16進表現)では、 tn=2/|3C−0|/1 =33.3msec となる。
り100セント毎の音高変化をとらせてグリッサンド効
果を得るようにすることも可能であって、例えばPSF
を2secとしOSCが0で、NSCがC(16進表現)
のとき、 tn=|C−0|/1 =166.6msec 同様に、ΔPITCHを1とし、PSFを2secとし、
OSCを0、NSCを3C(16進表現)では、 tn=2/|3C−0|/1 =33.3msec となる。
そして、このステップR14に続けてステップR15に進行
し、微小コードを累算するレジスタ9の対応するエリア
の内容PITCH▽nをクリアする。
し、微小コードを累算するレジスタ9の対応するエリア
の内容PITCH▽nをクリアする。
次にステップR16にて、レジスタ4の対応するエリアの
内容、つまり前回操作された鍵のキーコードOSCnを
CPU2は読み出し、キーコード信号KCDnとして周
波数データ変換部13に与え、対応する周波数データ
nをトーンジェネレータ群14の対応するトーンジェネ
レータTGnに供給する。そして次のステップR17にて
CPU2はトーンジェネレータ群14の当該トーンジェ
ネレータTGnに図示しない制御ラインを介してキーオ
ン指令信号を与え発音を開始させる。
内容、つまり前回操作された鍵のキーコードOSCnを
CPU2は読み出し、キーコード信号KCDnとして周
波数データ変換部13に与え、対応する周波数データ
nをトーンジェネレータ群14の対応するトーンジェネ
レータTGnに供給する。そして次のステップR17にて
CPU2はトーンジェネレータ群14の当該トーンジェ
ネレータTGnに図示しない制御ラインを介してキーオ
ン指令信号を与え発音を開始させる。
そして次のステップR18にてタイマー12のなかの当該
タイマー(TIMERn)に、Δtnに相当する情報を
与え、ステップR19にてそのタイター(TIMERn)
を起動せしめる。そして次にステップR2にもどり、上
記同様の処理が実行される。
タイマー(TIMERn)に、Δtnに相当する情報を
与え、ステップR19にてそのタイター(TIMERn)
を起動せしめる。そして次にステップR2にもどり、上
記同様の処理が実行される。
従って、いまの場合第4図に示すようにトーンジェネレ
ータTGnは、キーコードOSCnに対応する周波数の
楽音を生成するようになる。
ータTGnは、キーコードOSCnに対応する周波数の
楽音を生成するようになる。
そして、タイマー12の夫々のタイマー(TIME
Rn)がΔtnを計数すると、インタラプト信号INT
nをCPU2に与え、CPU2は第3図のステップR20
を実行する。即ち、ステップR20ではレジスタ23に記
憶されているΔPITCHnをCPU2は読み出し、そ
れをレジスタ9に記憶されているPITCH▽nと加算
し、再びレジスタ9の当該エリアに再格納する。そして
次のステップR21にてレジスタ9の内容PITCH▽n
が、レジスタ6の当該エリアに記憶されている内容VA
LUEnを越えたか否かジャッジする。まだPITCH
▽nがVALUEnより小であれば、ステップR22に移
行する。そしてレジスタ7に記憶されている符号データ
SIGNnに従って、ジャッジされてステップR23又は
ステップR24に進行する。
Rn)がΔtnを計数すると、インタラプト信号INT
nをCPU2に与え、CPU2は第3図のステップR20
を実行する。即ち、ステップR20ではレジスタ23に記
憶されているΔPITCHnをCPU2は読み出し、そ
れをレジスタ9に記憶されているPITCH▽nと加算
し、再びレジスタ9の当該エリアに再格納する。そして
次のステップR21にてレジスタ9の内容PITCH▽n
が、レジスタ6の当該エリアに記憶されている内容VA
LUEnを越えたか否かジャッジする。まだPITCH
▽nがVALUEnより小であれば、ステップR22に移
行する。そしてレジスタ7に記憶されている符号データ
SIGNnに従って、ジャッジされてステップR23又は
ステップR24に進行する。
即ち、符号SIGNnがであるときは、ステップR23
にて、レジスタ4に記憶されているOSCnと、レジス
タ9に記憶されているPITCH▽nを加算の上、CP
U2はキーコードKCDnとして周波数データ変換部1
3に送り、周波数を上昇変化させる。
にて、レジスタ4に記憶されているOSCnと、レジス
タ9に記憶されているPITCH▽nを加算の上、CP
U2はキーコードKCDnとして周波数データ変換部1
3に送り、周波数を上昇変化させる。
逆に符号SIGNnがであるときは、ステップR24に
て、レジスタ4に記憶されているOSCnからレジスタ
9に記憶されているPITCH▽nを減算の上、CPU
2はキーコードKCDnとして周波数データ変換部13
に送り、周波数を下降変化させる。
て、レジスタ4に記憶されているOSCnからレジスタ
9に記憶されているPITCH▽nを減算の上、CPU
2はキーコードKCDnとして周波数データ変換部13
に送り、周波数を下降変化させる。
このようにしてインタラプト処理が終了すると通常の処
理にもどる。従って、第4図に示されているように、Δ
tn毎に、キーコード信号KCDnは、OSCnの値か
らNSCnの値へと、微小コード分ΔPITCHn分だ
け増、減されて変化してゆき、発生楽音もそれにつれて
均一のセント比例した周波数変化をもって発生される。
理にもどる。従って、第4図に示されているように、Δ
tn毎に、キーコード信号KCDnは、OSCnの値か
らNSCnの値へと、微小コード分ΔPITCHn分だ
け増、減されて変化してゆき、発生楽音もそれにつれて
均一のセント比例した周波数変化をもって発生される。
そして、最終段階では、インタラプト処理中のステップ
R21にてYesの判断がなされ、ステップR25を実行す
る。即ち、微小コードの累算結果がOSCnとNSCn
との差のコード即ちVALUEnを越えたときは、レジ
スタ9のPITCH▽nをレジスタ6に記憶されていた
コードVALUEnとする。そして、次のステップR26
にてタイマー12の当該タイマー(TIMERn)の動
作をストップする。従って、以降はこの差のコードVA
LUEnとOSCnのコードを加減算して得られるコー
ド、即ち新たな押鍵にともなうキーコードNSCnに相
当する周波数の楽音が継続して発生することになり、タ
イマーインタラプト処理は実行しないことになる。
R21にてYesの判断がなされ、ステップR25を実行す
る。即ち、微小コードの累算結果がOSCnとNSCn
との差のコード即ちVALUEnを越えたときは、レジ
スタ9のPITCH▽nをレジスタ6に記憶されていた
コードVALUEnとする。そして、次のステップR26
にてタイマー12の当該タイマー(TIMERn)の動
作をストップする。従って、以降はこの差のコードVA
LUEnとOSCnのコードを加減算して得られるコー
ド、即ち新たな押鍵にともなうキーコードNSCnに相
当する周波数の楽音が継続して発生することになり、タ
イマーインタラプト処理は実行しないことになる。
従って、この実施例によれば、第4図に示すような音高
変化がなされる。即ち、前回の押鍵に係るキーコードO
SCnから、今回の押鍵に係るキーコードNSCnま
で、ΔPITCHの微小幅をもって逐次変更してゆくの
であって、その変更タイミングΔtnが、VALUEn
の大きさに依存して変化する。
変化がなされる。即ち、前回の押鍵に係るキーコードO
SCnから、今回の押鍵に係るキーコードNSCnま
で、ΔPITCHの微小幅をもって逐次変更してゆくの
であって、その変更タイミングΔtnが、VALUEn
の大きさに依存して変化する。
その様子は第5図と第6図を比較すれば容易に理解され
るもので、ポルタメントの期間Tと微小コードΔPIT
CHとは一定であるから、音高を変更する演算周期Δt
が、前回と今回の押鍵の音高幅によって変化するように
なる。
るもので、ポルタメントの期間Tと微小コードΔPIT
CHとは一定であるから、音高を変更する演算周期Δt
が、前回と今回の押鍵の音高幅によって変化するように
なる。
第7図及び第8図は、音高が上昇するポルタメントと、
音高が下降するポルタメントとを示している。
音高が下降するポルタメントとを示している。
このように、この実施例にあっては、どのような鍵操作
の変化があったとしても等しい時間のポルタメント効果
(グリッサンド効果)を得ることができ、その場合の周
波数変化も所定セントを単位として行うもので、音楽上
好ましいものとなる。
の変化があったとしても等しい時間のポルタメント効果
(グリッサンド効果)を得ることができ、その場合の周
波数変化も所定セントを単位として行うもので、音楽上
好ましいものとなる。
また、この実施例にあっては、一回の音高の変化幅ΔP
ITCHを明確に指定出来るため、半音(100セン
ト)単位のグリッサンド効果も容易に得られるものであ
る。
ITCHを明確に指定出来るため、半音(100セン
ト)単位のグリッサンド効果も容易に得られるものであ
る。
〔発明の効果〕 本発明は以上詳述したように、演奏操作子を指定するコ
ードを処理することによりポルタメント効果(グラッサ
ンド効果)を得るようにしたから、小ビットの演算処理
で周波数制御を実現できるという利点がある。
ードを処理することによりポルタメント効果(グラッサ
ンド効果)を得るようにしたから、小ビットの演算処理
で周波数制御を実現できるという利点がある。
また、前回の演奏操作子の操作と今回操作とで指定され
る演奏操作子の音高差に無関係に、予め設定されたポル
タメント演奏時間で周波数変化がなされるため、音楽的
に好ましいポルタメント効果が実現できるという利点が
ある。このため、演奏者の演奏速度に合わせたポルタメ
ント演奏時間をもったポルタメント効果が付与でき、演
奏速度が変化してもポルタメント効果をはつきりと聞取
れることができる。
る演奏操作子の音高差に無関係に、予め設定されたポル
タメント演奏時間で周波数変化がなされるため、音楽的
に好ましいポルタメント効果が実現できるという利点が
ある。このため、演奏者の演奏速度に合わせたポルタメ
ント演奏時間をもったポルタメント効果が付与でき、演
奏速度が変化してもポルタメント効果をはつきりと聞取
れることができる。
さらにポルタメント演奏時間及び及び音高変化幅が外部
より可変でき、しかも音高が変化する周期は従来のよう
に音高差ばかりでなく、このポルタメント演奏時間及び
音高変化幅に基づいて演奏されるため、これらの条件の
もとで周波数の変化が階段状に不自然に変化せずに、滑
らかに変化するための最適の周波数変化周期が自動的に
得られる、という利点がある。
より可変でき、しかも音高が変化する周期は従来のよう
に音高差ばかりでなく、このポルタメント演奏時間及び
音高変化幅に基づいて演奏されるため、これらの条件の
もとで周波数の変化が階段状に不自然に変化せずに、滑
らかに変化するための最適の周波数変化周期が自動的に
得られる、という利点がある。
第1図は、本発明の実施例の回路構成図、第2図はキー
コードを示す図、第3図はその処理を示すフローチャー
ト図、第4図乃至第8図はその動作状態を示す図であ
る。 1……キーボード、 2……CPU、 3……ボリューム、 4〜7,9,11……レジスタ、 12……タイマー、 13……周波数データ変換部、 21……ボリューム、 22……CPU、 23,24……レジスタ。
コードを示す図、第3図はその処理を示すフローチャー
ト図、第4図乃至第8図はその動作状態を示す図であ
る。 1……キーボード、 2……CPU、 3……ボリューム、 4〜7,9,11……レジスタ、 12……タイマー、 13……周波数データ変換部、 21……ボリューム、 22……CPU、 23,24……レジスタ。
Claims (2)
- 【請求項1】前回操作された演奏操作子を示すコードを
記憶する第1の記憶手段と、 今回操作された演奏操作子を示すコードを記憶する第2
の記憶手段と、 上記第1の記憶手段に記憶されたコードと上記第2の記
憶手段に記憶されたコードとの差を示すコードを得る第
1の演算手段と、 所定値の微小コードを記憶する第3の記憶手段と、 この第3の記憶手段に記憶された微小コードの値を可変
する第1の可変手段と、 ポルタメント時間に対応する所定値を記憶する第4の記
憶手段と、 この第4の記憶手段に記憶された所定値を可変する第2
の可変手段と、 上記第1の演算手段にて得られた差を示すコードの値を
上記第3の記憶手段に記憶された微小コードの値で除算
することにより累算回数を演算するとともに、上記第4
の記憶手段に記憶されたポルタメント時間に対応する値
をこの累算回数で除算することにより累算タイミング周
期を演算する第2の演算手段と、 この第2の演算手段にて得られた累算タイミング周期で
上記微小コードを累算する累算手段と、 この累算手段の累算出力コードと上記第1の演算手段に
て得られた差を示すコードとを比較し、該累算出力コー
ドが上記差を示すコードを超えたとき上記累算手段の累
算動作を停止する停止手段と、 上記累算出力コードと上記第1の記憶手段に記憶された
コードとを加減算して得られるコードにて周波数制御を
行う周波数制御手段と、 を有することを特徴とする電子楽器の周波数制御装置。 - 【請求項2】上記第1の演算手段は、上記第1の記憶手
段に記憶されたコードと上記第2の記憶手段に記憶され
たコードとの大小の比較を行い、その比較結果に応じて
上記周波数制御手段では上記累算出力コードと上記第1
の記憶手段に記憶されたコードとを加算するか減算する
かが決定されることを特徴とする特許請求の範囲第1項
記載の電子楽器の周波数制御装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP59072040A JPH0640268B2 (ja) | 1984-04-11 | 1984-04-11 | 電子楽器の周波数制御装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP59072040A JPH0640268B2 (ja) | 1984-04-11 | 1984-04-11 | 電子楽器の周波数制御装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS60214395A JPS60214395A (ja) | 1985-10-26 |
| JPH0640268B2 true JPH0640268B2 (ja) | 1994-05-25 |
Family
ID=13477885
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP59072040A Expired - Lifetime JPH0640268B2 (ja) | 1984-04-11 | 1984-04-11 | 電子楽器の周波数制御装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0640268B2 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2007298790A (ja) * | 2006-05-01 | 2007-11-15 | Casio Comput Co Ltd | 演奏装置および演奏処理のプログラム |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH087593B2 (ja) * | 1986-11-26 | 1996-01-29 | クラリオン株式会社 | 電子サイレン |
| JP2880720B2 (ja) * | 1988-12-27 | 1999-04-12 | 株式会社河合楽器製作所 | 楽音波形読出装置 |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4198892A (en) * | 1978-11-16 | 1980-04-22 | Norlin Industries, Inc. | Tone generator for electronic musical instrument with digital glissando, portamento and vibrato |
| JPS5674298A (en) * | 1979-11-21 | 1981-06-19 | Nippon Musical Instruments Mfg | Electronic musical instrument |
| JPS5742877A (en) * | 1980-08-28 | 1982-03-10 | Seiko Epson Corp | Electromechanical device |
| JPS58226U (ja) * | 1981-06-26 | 1983-01-05 | ミサワホ−ム株式会社 | 簡易換気、採光装置 |
-
1984
- 1984-04-11 JP JP59072040A patent/JPH0640268B2/ja not_active Expired - Lifetime
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2007298790A (ja) * | 2006-05-01 | 2007-11-15 | Casio Comput Co Ltd | 演奏装置および演奏処理のプログラム |
Also Published As
| Publication number | Publication date |
|---|---|
| JPS60214395A (ja) | 1985-10-26 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4489636A (en) | Electronic musical instruments having supplemental tone generating function | |
| JPH067323B2 (ja) | 電子楽器 | |
| JPH0823746B2 (ja) | 自動楽音発生装置 | |
| JPH0634170B2 (ja) | 電子楽器の自動伴奏装置 | |
| JPH0640268B2 (ja) | 電子楽器の周波数制御装置 | |
| JP2583809B2 (ja) | 電子楽器 | |
| JP2768233B2 (ja) | 電子楽器 | |
| JPH0626958Y2 (ja) | 電子楽器 | |
| JPH0769698B2 (ja) | 自動伴奏装置 | |
| JPH0631964B2 (ja) | 電子楽器 | |
| JPH0573058A (ja) | 電子楽器 | |
| JP2611467B2 (ja) | 電子鍵盤楽器 | |
| JP3385691B2 (ja) | 和音検出装置 | |
| JPH0313594B2 (ja) | ||
| JP2504260B2 (ja) | 楽音周波数情報発生装置 | |
| JPH09114461A (ja) | 電子楽器 | |
| JP3658633B2 (ja) | 自動伴奏装置 | |
| JP3097382B2 (ja) | 和音検出装置 | |
| JP3099388B2 (ja) | 自動伴奏装置 | |
| JP2737405B2 (ja) | 電子楽器 | |
| JPS6266297A (ja) | 自動伴奏音作成装置 | |
| JP2995771B2 (ja) | 楽曲パート生成装置 | |
| JPH0518437B2 (ja) | ||
| JP3343956B2 (ja) | 楽音制御装置 | |
| JPH01214899A (ja) | 効果付与装置 |