JP3139063B2 - Envelope generator - Google Patents

Envelope generator

Info

Publication number
JP3139063B2
JP3139063B2 JP03190853A JP19085391A JP3139063B2 JP 3139063 B2 JP3139063 B2 JP 3139063B2 JP 03190853 A JP03190853 A JP 03190853A JP 19085391 A JP19085391 A JP 19085391A JP 3139063 B2 JP3139063 B2 JP 3139063B2
Authority
JP
Japan
Prior art keywords
envelope
data
value
output
level
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 - Fee Related
Application number
JP03190853A
Other languages
Japanese (ja)
Other versions
JPH0511760A (en
Inventor
広 岩瀬
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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP03190853A priority Critical patent/JP3139063B2/en
Publication of JPH0511760A publication Critical patent/JPH0511760A/en
Application granted granted Critical
Publication of JP3139063B2 publication Critical patent/JP3139063B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】本発明は、鍵盤等の演奏操作子の
操作に伴って電子楽器等から発生する楽音の音量や音質
を制御するエンベロープ発生装置に関し、さらに詳しく
は発生する楽音にトレモロやアフタータッチに応じた変
調を加えることを可能にしたエンベロープ発生装置に関
する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an envelope generator for controlling the volume and sound quality of musical tones generated from an electronic musical instrument or the like in response to the operation of performance operators such as a keyboard. The present invention relates to an envelope generation device capable of applying modulation according to aftertouch.

【0002】[0002]

【従来の技術】従来、電子楽器等に用いられているエン
ベロープ発生装置においては図16に示した波形に対応
する楽音を発生させ得るものが知られている。この波形
は、押鍵してからレベルが最大値になるまでのアタック
と、この最大値から持続音のレベルに至るまでディケイ
と、前記持続音のレベルであるサステイン、及び離鍵し
てからレベル0に至るまでのリリースとからなるエンベ
ロープを基本とし、このエンベロープのサステインの部
分Sを周期的に変動させたものである。したがって、こ
の波形に基づいて音源を駆動すると、前記持続音が周期
的に変動して、該持続音に微妙なゆれがある楽音が発生
する。つまり、自然楽器、例えばピアノの楽音はキーの
押し込み状態に応じて、キーオン後、キーオフさせるま
での間、発生楽音に微妙なゆれが生ずる。したがって、
電子楽器においてはエンベロープのサステイン部分Sを
周期的に変動させることにより、自然楽器と同様にアフ
タータッチの強さに応じて持続音にゆれを発生させた
り、トレモロ効果を発生させることができる。
2. Description of the Related Art Heretofore, there has been known an envelope generating apparatus used in an electronic musical instrument or the like capable of generating a musical tone corresponding to the waveform shown in FIG. This waveform shows the attack from pressing the key until the level reaches the maximum value, the decay from this maximum value to the level of the sustained sound, the sustain that is the level of the sustained sound, and the level after the key is released. This is based on an envelope composed of releases up to zero, and the sustain portion S of this envelope is periodically fluctuated. Therefore, when the sound source is driven based on this waveform, the continuous sound fluctuates periodically, and a musical tone having a slight fluctuation in the continuous sound is generated. In other words, the musical tone of a natural musical instrument, for example, a piano, has a slight fluctuation in the generated musical tone from key-on to key-off according to the pressed state of the key. Therefore,
In an electronic musical instrument, by oscillating the sustain portion S of the envelope periodically, it is possible to generate a fluctuation in a sustained sound or to generate a tremolo effect according to the strength of aftertouch, as in a natural musical instrument.

【0003】前記サステイン部分Sを周期的に変動させ
た波形を得るための従来装置としては、図17に示した
ものが知られている。この装置はエンベロープ発生器3
0、LFO31(又はタッチセンサ)、加算回路32、
及び補間回路33から構成されており、前記エンベロー
プ発生器30から出力されたエンベロープ出力値に、前
記LFO31からの出力値を加算回路32にて加算す
る。このとき、LFO31からの出力は離散的であるこ
とから、補間回路33によって各離散値間を補間するこ
とにより、その出力として図示したようにエンベロープ
のサステイン部分Sが周期的に変動した波形を得ること
ができるものである。
FIG. 17 shows a conventional apparatus for obtaining a waveform in which the sustain portion S is periodically changed. This device is an envelope generator 3
0, LFO 31 (or touch sensor), addition circuit 32,
And an interpolation circuit 33. The output value from the LFO 31 is added to an envelope output value output from the envelope generator 30 by an addition circuit 32. At this time, since the output from the LFO 31 is discrete, the interpolation circuit 33 interpolates between the discrete values to obtain a waveform in which the sustain portion S of the envelope fluctuates periodically as shown in the figure. Is what you can do.

【0004】[0004]

【発明が解決しようとする課題】しかしながら、図17
に示した従来装置にあっては、エンベロープ発生器30
のみならず、加算回路32や補間回路33等を必要とす
ることからハード的に構成が複雑となっしまう。このた
め、マイコンのみを用いてソフトウェアにより、エンベ
ロープを形成するとともに、サステイン部分Sに周期的
な変動を発生させる装置も実用化されるに至っている。
しかし、ソフトウェアのみよって前記サステイン部分に
周期的な変動を発生させようとした場合、マイコンの処
理速度に限界があることから、速い周期でサステイン部
分Sを変動させることは不可能であって、自然楽器から
発生した楽音のゆれに近似するような、速い周期にて変
動するトレモロを発生させることは不可能なものであっ
た。
However, FIG.
In the conventional device shown in FIG.
In addition, since the addition circuit 32 and the interpolation circuit 33 are required, the configuration becomes complicated in hardware. For this reason, a device that forms an envelope by software using only a microcomputer and generates a periodic variation in the sustain portion S has been put to practical use.
However, if it is attempted to generate a periodic variation in the sustain portion using only software, it is impossible to vary the sustain portion S at a fast cycle because the processing speed of the microcomputer is limited. It has been impossible to generate a tremolo that fluctuates at a fast cycle, which approximates the fluctuation of a musical tone generated from a musical instrument.

【0005】本発明は、このような従来の課題に鑑みて
なされたものであり、ハード構成的には簡単であって、
かつ、マイコンのソフトウェアに負担をかけることなく
周期の速いトレモロを発生させることができるエンベロ
ープ発生装置を提供することを目的とするものである。
The present invention has been made in view of such a conventional problem, and has a simple hardware configuration.
It is another object of the present invention to provide an envelope generating device capable of generating a tremolo having a fast cycle without imposing a load on software of a microcomputer.

【0006】[0006]

【課題を解決するための手段】前記課題を解決するため
に本発明にあっては、エンベロープ波形を形成する連続
した各ステップの目標値であるレベルデータと変化速度
を示すレートデータとを予め定められた順序にて記憶し
た記憶手段と、該記憶手段から各ステップのレベルデー
タとレートデータとを前記順序に従って出力する出力手
段と、該出力手段から出力されたステップのレートデー
タに基づき一定間隔にて累算を実行し、その累算値を各
ステップに対応するエンベロープ波形を形成するための
エンベロープ出力値として出力するとともに、前記累算
値が当該ステップのレベルデータを超えたとき次のステ
ップのレベルデータとレートデータの出力を前記出力手
段に指示するエンベロープ出力手段と、周期的に変動す
る変調データを出力する変調データ出力手段と、前記
ンベロープ出力手段において累算値がレベルデータを超
えたときに、その累算に用いられたレートデータと前記
レベルデータのステップが特定のステップか否かを検出
する検出手段と、該検出手段により前記特定のステップ
であると検出されたとき、次のステップのレベルデータ
を出力させずに、当該ステップのレベルデータの値に前
記変調データの値を加算して、前記目標値可変設定す
る可変設定手段とを設けてある。
In order to solve the above-mentioned problems, according to the present invention, level data which is a target value of each successive step for forming an envelope waveform and rate data which indicates a change speed are predetermined. Storage means for storing the level data and the rate data of each step from the storage means in accordance with the order, and at regular intervals based on the rate data of the steps output from the output means. Accumulation, and outputs the accumulated value as an envelope output value for forming an envelope waveform corresponding to each step. When the accumulated value exceeds the level data of the step, the next step is executed. An envelope output means for instructing the output means to output level data and rate data; A modulation data output means for, the d
Accumulated value exceeds level data in envelope output means
The rate data used for the accumulation and the
Detecting means for detecting whether or not the step of the level data is a specific step;
When it is detected that is, level data of the next step
And a variable setting unit for variably setting the target value by adding the value of the modulation data to the value of the level data in the step without outputting the target value.

【0007】また、前記変調データ出力手段は、一定周
期の信号に対応する値を前記変調データとして出力する
LFO発生手段であり、あるいは演奏操作子操作時のア
フタータッチを検出するアフタータッチ検出手段をさら
に設け、前記変調データ出力手段は、前記アフタータッ
チ検出手段により検出されたアフタータッチに応じた値
を前記変調データに加算して出力するように構成されて
いる。また、前記検出手段は、前記特定のステップとし
て、エンベロープのサステインに対応するステップを検
出することが好ましい。
Further, the modulation data output means is an LFO generation means for outputting a value corresponding to a signal of a fixed period as the modulation data, or an after touch detection means for detecting an after touch when operating a performance operator. Further, the modulation data output means is configured to add a value corresponding to the after touch detected by the after touch detection means to the modulation data and output the result. Further, it is preferable that the detecting means detects a step corresponding to sustain of the envelope as the specific step.

【0008】[0008]

【作用】前記構成において、前記出力手段から例えばエ
ンベロープ波形のアタック部分に対応するステップのレ
ベルデータとレートデータとが出力されると、該レート
データに基づき一定間隔で累算が行われるとともに、そ
の累算値がエンベロープ出力値として出力され、該エン
ベロープ出力値によりエンベロープ波形のアタック部分
が形成される。また、このアタック部分を形成している
エンベロープ出力値としての前記累算値が前記ステップ
のレベルデータの値を超えると、次のステップ、つまり
ディケイ部分に対応するステップのレートデータが前記
出力手段から出力され、前述と同様にしてエンベロープ
波形のディケイ部分が形成される。
In the above construction, when the output means outputs, for example, level data and rate data of a step corresponding to an attack portion of an envelope waveform, accumulation is performed at regular intervals based on the rate data. The accumulated value is output as an envelope output value, and an attack portion of the envelope waveform is formed by the envelope output value. Further, when the accumulated value as the envelope output value forming the attack portion exceeds the level data value of the step, the next step, that is, the rate data of the step corresponding to the decay portion is output from the output means. Is output and a decay portion of the envelope waveform is formed in the same manner as described above.

【0009】そして、前記検出手段により特定のステッ
プ、例えば前記サステインに対応するステップである
とが検出されると、前記可変設定手段は、次のステップ
のレベルデータを出力させずに当該ステップのレベルデ
ータに変調データの値を加算して当該ステップの目標値
を可変設定する。したがって、特定のステップにおいて
は、レートデータに基づき累算を行って、累算値が目標
値に到達する度に、この目標値が変化することにより、
引き続き変化した目標値までの累算を続行する。したが
って、目標値の変化とこの変化した目標値までの累算と
が繰り返され、このとき累算値がエンベロープ波形を形
成するためのエンベロープ出力値として出力されること
により、前記エンベロープ波形のサステイン部分は前記
変調データの変化に応じて周期的に変動する。
[0009] Then, specific steps by said detecting means, for example, and this <br/> a step corresponding to the sustain is detected, the variable setting means, the next step
Level data by adding the value of the modulation data to the level data of the step without outputting a target value of those said step variably setting. Therefore, in certain steps
Performs the accumulation based on the rate data, every time the accumulated value reaches the target value, by which the target value is changed,
Continue accumulation up to the changed target value. Therefore, the change of the target value and the accumulation up to the changed target value are repeated. At this time, the accumulated value is output as an envelope output value for forming an envelope waveform, whereby the sustain portion of the envelope waveform is output. Varies periodically according to the change in the modulation data.

【0010】[0010]

【実施例】以下、本発明を電子楽器に適用した場合の一
実施例を図面に従って説明する。すなわち図1は、本実
施例の全体的な回路構成を示すものであり、ROM2に
はマイコン1を動作させるプログラムとともに、図2に
示したLEVEL(0)〜LEVEL(5)までのレベ
ルデータ、RATE(0)〜RATE(5)までのレイ
トデータ、LFOの変化速度を決定するLFO−RAT
E、LFOの深度を決定するLFO−DEPTH、及び
アフタータッチのきき具合を決定するAFTER−DE
PTHが記憶されている。前記レベルデータとレートデ
ータとは、図3に示したエンベロープ波形に対応する値
であって、LEVEL(0)はA点の値、LEVEL
(1)はB点の値、LEVEL(2)C点の値、LEV
EL(3)はD点の値であって、該D点の値は“0”で
ある。また、RATE(0)はキーオンからA点までの
変化率つまり変化速度、RATE(1)はA点からB点
の変化速度、RATE(2)はB点からC点の変化速
度、RATE(3)はC点からD点までの変化速度が各
々記憶されている。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS One embodiment in which the present invention is applied to an electronic musical instrument will be described below with reference to the drawings. That is, FIG. 1 shows the overall circuit configuration of the present embodiment. The ROM 2 includes a program for operating the microcomputer 1 and the level data from LEVEL (0) to LEVEL (5) shown in FIG. Rate data from RATE (0) to RATE (5), LFO-RAT for determining LFO change rate
E, LFO-DEPTH for determining the depth of LFO, and AFTER-DE for determining the degree of aftertouch
PTH is stored. The level data and the rate data are values corresponding to the envelope waveform shown in FIG. 3, and LEVEL (0) is the value at point A, and LEVEL
(1) Value at point B, LEVEL (2) Value at point C, LEVEL
EL (3) is the value at point D, and the value at point D is "0". RATE (0) is the rate of change from key-on to point A, that is, the rate of change, RATE (1) is the rate of change from point A to point B, RATE (2) is the rate of change from point B to point C, and RATE (3). ) Stores the change speed from point C to point D.

【0011】RAM3はマイコン1のワーク用であっ
て、図4に示したように、汎用のレジスタA Regと
B Reg、STEPレジスタ、LFOCOUNTレジ
スタ、LFOレジスタ、AFTERレジスタが用意され
ている。前記STEPレジスタには、図3に示したエン
ベロープ波形に対応して設けられ0〜5までのSTEP
の値が格納されるとともに、前記レジスタA−Regに
はこのSTEPレジスタに格納されたSTEPに対応す
るレベルデータの番号(0)〜(3)が格納され、B
Regには前記ステップに対応するレイトデータの番号
(0)〜(3)が格納される。
The RAM 3 is used for the work of the microcomputer 1, and as shown in FIG. 4, general-purpose registers A Reg and B Reg, STEP registers, LFOCOUNT registers, LFO registers, and AFTER registers are prepared. The STEP register is provided corresponding to the envelope waveform shown in FIG.
And the register A-Reg stores the level data numbers (0) to (3) corresponding to STEP stored in the STEP register.
In Reg, late data numbers (0) to (3) corresponding to the above steps are stored.

【0012】また、前記マイコン1の入力端及び出力端
において、ARVにはエンベロープ出力値がレベルデー
タの値に達したことを示す信号がエンベロープ発生器5
から入力され、WTからはエンベロープ発生器5、RA
M3、及び音源回路6への書き込み信号が出力される。
また、RDからはエンベロープ発生器5、操作子群4、
RAM3、及びROM2に読み出し信号が出力され、A
によりRAM3とROM2にアドレスデータの転送が行
われるとともに、DによりROM2、RAM3、エンベ
ロープ発生器5、音源回路6に各々必要となるデータの
転送が行われる。前記操作子群4には、鍵盤やアフター
タッチを検出するアフタータッチセンサー、さらにはこ
の電子鍵盤楽器において必要となる各種スイッチが含ま
れている。そして、前記鍵盤からはキーオン、キーオフ
及びキーデータ(音高)が読み込まれ、前記音源回路6
は転送されたキーデータとエンベロープ出力値に基づき
楽音信号を生成し、該楽音信号はアンプ及びスピーカ等
により構成される発音回路7を介して外部に放音され
る。
At the input terminal and the output terminal of the microcomputer 1, a signal indicating that the envelope output value has reached the level data value is output to the ARV.
From the WT, the envelope generator 5, RA
M3 and a write signal to the tone generator 6 are output.
From the RD, the envelope generator 5, the operator group 4,
A read signal is output to the RAM3 and the ROM2, and A
, The address data is transferred to the RAM 3 and the ROM 2, and the data necessary for the ROM 2, the RAM 3, the envelope generator 5, and the tone generator 6 are transferred by the D. The operator group 4 includes a keyboard and an aftertouch sensor for detecting an aftertouch, and various switches required for the electronic keyboard instrument. Then, key-on, key-off and key data (pitch) are read from the keyboard, and
Generates a tone signal based on the transferred key data and the envelope output value, and the tone signal is emitted to the outside via a tone generation circuit 7 including an amplifier and a speaker.

【0013】図5は、前記エンベロープ発生器5の構成
を示す回路図であって、第1RAM9はWT=0で書き
込み可能となり、このときに前記マイコン1から入力端
Iに入力される1ステップ分のレートデータ及びレベル
データを記憶する。この第1RAM9に書き込まれたレ
ベルデータは、出力端01から第1比較器10の入力端
Bに与えられるとともに、第2比較器11の入力端Bに
与えられ、さらにスイッチ12の接点bに与えられる。
FIG. 5 is a circuit diagram showing the configuration of the envelope generator 5. The first RAM 9 becomes writable when WT = 0. At this time, one step corresponding to one step input from the microcomputer 1 to the input terminal I is obtained. Is stored. The level data written in the first RAM 9 is supplied from the output terminal 01 to the input terminal B of the first comparator 10, the input terminal B of the second comparator 11, and further supplied to the contact b of the switch 12. Can be

【0014】一方、第2RAM13は入力端WTに入力
される信号が“0”のとき書き込み可能な状態となっ
て、入力端Iに入力されたデータを書き込む。前記第2
RAM13の入力端WTには、NOT回路15を介して
クロックパルスCK1が一定時間ごとに入力され、ま
た、この第2RAM13の出力端Oからは、前記第1比
較器10の入力端Aと加減算器14の入力端Aにデータ
が出力される。前記第1比較器10は、各入力端A,B
からの入力がA=Bであるとき“1”を出力する出力端
EQと、A>Bであるとき“1”を出力する出力端A>
Bとを有し、前記出力端EQからの出力は、第1OR回
路16の一方の入力として与えられる。また、前記出力
端A>Bの出力は、前記加減算器14の入力端SUB
と、第1AND回路17及び第2AND回路18の一方
の入力端に与えられる。前記加減算器14は、入力端S
UBへの入力が“1”のとき減算器として機能する一
方、“0”のとき加算器として機能し、入力端Bには前
記第1RAM9の出力端02から前記レートデータが入
力される。さらに、加減算器14の出力端Oからは、前
記第2比較器11の入力端Aと前記スイッチ12の他方
の端子bに加算結果あるいは減算結果が入力される。
On the other hand, the second RAM 13 is in a writable state when the signal input to the input terminal WT is "0", and writes the data input to the input terminal I. The second
The clock pulse CK1 is input to the input terminal WT of the RAM 13 via the NOT circuit 15 at regular intervals, and the output terminal O of the second RAM 13 receives the input terminal A of the first comparator 10 and the adder / subtractor. Data is output to 14 input terminals A. The first comparator 10 has input terminals A, B
An output terminal EQ that outputs “1” when the input from A = B, and an output terminal A that outputs “1” when A> B
B, and an output from the output terminal EQ is provided as one input of the first OR circuit 16. The output of the output terminal A> B is input to the input terminal SUB of the adder / subtractor 14.
And one of the input terminals of the first AND circuit 17 and the second AND circuit 18. The adder / subtractor 14 has an input terminal S
When the input to the UB is "1", it functions as a subtractor, while when it is "0", it functions as an adder. The input terminal B receives the rate data from the output terminal 02 of the first RAM 9. Further, from the output terminal O of the adder / subtractor 14, an addition result or a subtraction result is input to the input terminal A of the second comparator 11 and the other terminal b of the switch 12.

【0015】前記第2比較器11は、入力端A,Bから
の入力がA>Bであるとき“1”を出力する出力端A>
Bと、B>Aであるとき“1”を出力する出力端B>A
とを有し、前記出力端A>Bの出力は前記第2AND回
路18に、また、出力端B>Aの出力は前記第1AND
回路17に与えられる。この両AND回路17,18の
出力は、第2OR回路19に与えられ、該第2OR回路
19の出力は前記第1OR回路16に与えられる。そし
て、該第1OR回路16の出力はマイコン1のARVに
入力されるとともに、この出力により前記スイッチ12
は駆動される。つまり、第1OR回路16の出力が
“0”である場合には、スイッチ12は図示した接点a
側と導通した状態を維持し、よって加減算器14の出力
がスイッチ12を介して前記第2RAM13の入力端I
に与えられる。また、前記第1OR回路16の出力が
“1”となった場合には、スイッチ12が接点b側に切
り換え動作し、よって、第1RAM9の出力端01から
のレベルデータがスイッチ12を介して、前記第2RA
M13の入力端Iに与えられる。
The second comparator 11 has an output terminal A> that outputs "1" when the input from the input terminals A and B is A> B.
B and an output terminal B> A that outputs “1” when B> A
The output of the output terminal A> B is supplied to the second AND circuit 18, and the output of the output terminal B> A is supplied to the first AND circuit.
Circuit 17 is provided. The outputs of the AND circuits 17 and 18 are provided to a second OR circuit 19, and the output of the second OR circuit 19 is provided to the first OR circuit 16. The output of the first OR circuit 16 is input to the ARV of the microcomputer 1, and the output of the
Is driven. That is, when the output of the first OR circuit 16 is “0”, the switch 12
Side, and the output of the adder / subtractor 14 is connected to the input terminal I of the second RAM 13 via the switch 12.
Given to. Further, when the output of the first OR circuit 16 becomes “1”, the switch 12 switches to the contact “b”, so that the level data from the output terminal 01 of the first RAM 9 passes through the switch 12, The second RA
It is provided to the input terminal I of M13.

【0016】次に、以上の構成にかかる本実施例の動作
について、図6以下に示したマイコン1によって実行さ
れるフローチャートにしたがって説明する。すなわち、
図6はメインルーチンであって、前記操作子群4に設け
られている図示しない電源スイッチを投入することによ
り開始され、先ずイニシャライズ処理を実行し(SA
1)、これにより前述した各種レジスタはクリアされ
る。引き続き操作子群制御を実行した後(SA2)、エ
ンベロープ制御を実行し(SA3)、前記電源スイッチ
がオン状態に維持されいている間、このSA2とSA3
のループを繰り返す。
Next, the operation of this embodiment according to the above configuration will be described with reference to the flowchart shown in FIG. That is,
FIG. 6 shows a main routine, which is started by turning on a power switch (not shown) provided in the operator group 4, and first executes an initialization process (SA
1) As a result, the various registers described above are cleared. Subsequently, the control of the operator group is executed (SA2), and then the envelope control is executed (SA3). While the power switch is maintained in the ON state, the SA2 and SA3 are controlled.
Repeat the loop.

【0017】また、このメインルーチンに対しては、図
7に示したタイマー割り込みルーチンが一定時間ごとに
割り込んで実行され、LFO制御を実行する(SB
1)。このLFO制御は、図8に示したフローチャート
に従って実行され、LFO COUNTレジスタ(図4
参照)に、LFO COUNT+LFO RATEを格納
する(SC1)。ここで、LFO COUNTは、図7
に示したように鋸歯状波に変化するLFOの現時点の値
であり、LFO RATEは、図2をもって説明したよ
うに前記ROM2に記憶されているLFOの変化速度を
示す値である。
The main routine is interrupted by a timer interrupt routine shown in FIG. 7 at regular time intervals and executed to execute LFO control (SB).
1). This LFO control is executed according to the flowchart shown in FIG. 8, and the LFO COUNT register (FIG. 4)
LFO COUNT + LFO RATE is stored (SC1). Here, LFO COUNT is shown in FIG.
Is the current value of the LFO changing to a sawtooth wave, and LFO RATE is a value indicating the changing speed of the LFO stored in the ROM 2 as described with reference to FIG.

【0018】引き続き、LFOレジスタ(図4参照)に
SIN(LFO COUNT)を格納する(SC2)。
これにより、レジスタLFOには、図9にLFOとして
示したサイン波形の現時点における値が格納される。し
たがって、図7に示したタイマー割り込みルーチンが、
一定時間ごとに実行されることにより、前記LFOCO
UNTレジスタには、割り込み時点におけるLFO C
OUNT+LFO RATEとが格納され、LFOレジ
スタには割り込み時点におけるSIN(LFOCOUN
T)の値が格納される。
Subsequently, SIN (LFO COUNT) is stored in the LFO register (see FIG. 4) (SC2).
Accordingly, the current value of the sine waveform shown as LFO in FIG. 9 is stored in the register LFO. Therefore, the timer interrupt routine shown in FIG.
By being executed at regular intervals, the LFOCO
The UNT register contains the LFO C at the time of the interrupt.
OUT + LFO RATE is stored in the LFO register, and the SIN (LFOCOUNT) at the time of interruption is stored in the LFO register.
T) is stored.

【0019】一方、前記メインルーチンのSA2にて行
われる操作子群制御は、図10に示したフローチャート
に従って実行され、先ず前記操作子群4に含まれている
鍵盤においてオンされた鍵があるか否かを判別する(S
D1)。この判別がYESであってオンされた鍵がある
場合にはキーオン処理を実行し(SD2)、さらにオフ
された鍵はあるか否かを判別する(SD3)。この判別
がYESであって、オフされた鍵が存在する場合には、
キーオフ処理を実行した後(SD4)、アフター処理を
実行する(SD5)。このアフター処理は、図11に示
したフローチャートにしたがって実行され、前記操作子
群4に含まれているアフターセンサーにより検出された
アフタータッチのデータを、一旦A Regにセットす
る(SE1)。しかる後に図4に示したAFTERレジ
スタに前記A Regにセットしたデータを格納し(S
E2)、よって、アフターセンサーにより検出されたア
フタータッチの強さを示すデータは、アフター処理の終
了時点においてはAFTERレジスタに格納されてい
る。
On the other hand, the control of the operator group performed in SA2 of the main routine is executed according to the flowchart shown in FIG. 10, and firstly, is there any key turned on on the keyboard included in the operator group 4? Is determined (S
D1). If this determination is YES and there is a key that has been turned on, key-on processing is executed (SD2), and it is further determined whether there is a key that has been turned off (SD3). If this determination is YES and there is a key that has been turned off,
After the key-off process is performed (SD4), the after-process is performed (SD5). This after-processing is executed according to the flowchart shown in FIG. 11, and after-touch data detected by the after-sensor included in the operation element group 4 is temporarily set to A Reg (SE1). Thereafter, the data set in the A Reg is stored in the AFTER register shown in FIG.
E2) Therefore, the data indicating the aftertouch intensity detected by the aftersensor is stored in the AFTER register at the end of the after-processing.

【0020】また、前記キーオン処理(図10のSD
2)は、図12に示したフローチャートにしたがって実
行され、先ず前記STEPレジスタに“1”を格納する
とともに、A RegにLEVEL(0)を格納し、か
つ、B RegにRATE(0)を格納する(SF
1)。つまり、図3に示したエンベロープのアタック部
分に対応するSTEP=1の目標値Aは、図2に示した
ようにLEVEL(0)で示されることから、この目標
値Aを示すLEVEL(0)をA Regに格納すると
ともに、前記STEP=1の変化速度であるRATE
(0)をB Regに格納し、引き続きエンベロープ発
生器制御(SF2)を行う。
The key-on processing (SD in FIG. 10)
2) is executed in accordance with the flowchart shown in FIG. 12. First, "1" is stored in the STEP register, LEVEL (0) is stored in A Reg, and RATE (0) is stored in B Reg. (SF
1). That is, since the target value A of STEP = 1 corresponding to the attack portion of the envelope shown in FIG. 3 is indicated by LEVEL (0) as shown in FIG. 2, LEVEL (0) indicating this target value A Is stored in A Reg, and RATE which is the change speed of STEP = 1 is stored.
(0) is stored in B Reg and envelope generator control (SF2) is subsequently performed.

【0021】このエンベロープ発生器制御(SF2)
は、図13に示したフローチャートに従って実行され、
先ず、前述した図8のSC2によりLFOレジスタ(図
4)に格納されている値LFOに、ROM2に記憶され
いるLFO DEPTHを乗じ、その値をA Regに格
納されているレベルデータの値に加算し、この加算した
値をA Regに格納する(SG1)。さらに、前述し
た図11のSE2にてAFTERレジスタに格納されて
いるアフタータッチの強さを示す値に、ROM2に記憶
されているAFTER DEPTHを乗じ、しかる後に
その値に前記SG1にてA Regに格納されている値
に加算し、この加算した値を再度A Regに格納する
(SG2)。したがって、この時点においてA Reg
には、図12のSF1にて格納されたLEVEL(0)
に、(LFO×LFO DEPTH)と(AFTER×
AFTER DEPTH)とが加算された値が格納され
ているとともに、B Regの値は変更されることなく
RATE(0)が格納されている。
This envelope generator control (SF2)
Is executed according to the flowchart shown in FIG.
First, the value LFO stored in the LFO register (FIG. 4) is multiplied by the LFO DEPTH stored in the ROM 2 by SC2 in FIG. 8 described above, and the value is added to the value of the level data stored in A Reg. Then, the added value is stored in A Reg (SG1). Further, the value indicating the aftertouch strength stored in the AFTER register in SE2 of FIG. 11 described above is multiplied by AFTER DEPTH stored in ROM2, and then the value is applied to A Reg in SG1. The value is added to the stored value, and the added value is stored in A Reg again (SG2). Therefore, at this point, A Reg
LEVEL (0) stored in SF1 of FIG.
In addition, (LFO × LFO DEPTH) and (AFTER ×
AFTER DEPTH) is stored, and RATE (0) is stored without changing the value of B Reg.

【0022】次に、A RegとB Regの内容をエン
ベロープ発生器5に送った後(SG3)、WTから
“0”を出力し(SG4)、これにより第1RAM9は
書き込み可能な状態となる。したがって、前記SG3で
A Regに格納されたレベルデータ(目標値)とB R
egに格納されているレイトデータとがとが図5に示し
たエンベロープ発生器5の第1RAM9に書き込まれ
る。この第1RAM9に書き込まれたレベルデータは出
力端01から第1比較器10の入力端Bと第2比較器1
1の入力端B、及びスイッチ12の一方の端子bに与え
られ、レイトデータは出力端02から加減算器14の入
力端Bに与えられる。このとき、第2RAM13は後述
するようにエンベロープの現在値を保持しており、この
現在値は第1比較器10の入力端Aに与えられている。
したがって、RATEが+であるSTEP=1の処理を
行っている場合のように、現在値より目標値が大きい場
合には、第1比較器10において入力端A,Bの関係
は、B>Aであることから、この第1比較器10の両出
力端EQ,A>Bは共に“0”となる。
Next, after the contents of A Reg and B Reg are sent to the envelope generator 5 (SG3), "0" is output from the WT (SG4), whereby the first RAM 9 is in a writable state. Therefore, the level data (target value) stored in A Reg in SG3 and BR
The late data stored in the eg is written into the first RAM 9 of the envelope generator 5 shown in FIG. The level data written in the first RAM 9 is transmitted from the output terminal 01 to the input terminal B of the first comparator 10 and the second comparator 1
1 and one terminal b of the switch 12, and the late data is supplied from the output terminal 02 to the input terminal B of the adder / subtractor 14. At this time, the second RAM 13 holds the current value of the envelope as described later, and this current value is given to the input terminal A of the first comparator 10.
Therefore, when the target value is larger than the current value, as in the case where the processing in STEP = 1 where RATE is +, the relationship between the input terminals A and B in the first comparator 10 is B> A. Therefore, both output terminals EQ, A> B of the first comparator 10 are both "0".

【0023】よって、加減算器14のSUB入力は
“0”となって、該加減算器14は加算器として機能す
る。このため、加減算器14においては第2RAM13
から入力端Aに入力される現在値に、入力端Bに入力さ
れたレイトデータに基づき加算を行って、この加算結果
を第2比較器11の入力端Aとスイッチ12の端子aに
出力する。すると、第2比較器11においては、入力端
Aに入力された前記加算結果と入力端Bに入力された今
実行されているステップの目標値とを比較し、加算結果
が目標値(LEVEL)に上昇到達していなければ、出
力端B>Aから“1”を第1AND回路17に出力す
る。しかし、第1AND回路17の他方の入力は“0”
であることから、該第1AND回路17の出力は“0”
である。また、第2AND回路18の出力は“0”であ
ることから、第2OR回路19及び第1OR回路16の
出力も“0”となり、その結果、スイッチ12は接点a
と接触した状態を維持する。
Therefore, the SUB input of the adder / subtractor 14 becomes "0", and the adder / subtracter 14 functions as an adder. Therefore, in the adder / subtractor 14, the second RAM 13
Is added to the current value input from the input terminal A to the input terminal A based on the late data input to the input terminal B, and the addition result is output to the input terminal A of the second comparator 11 and the terminal a of the switch 12. . Then, the second comparator 11 compares the addition result input to the input terminal A with the target value of the currently executed step input to the input terminal B, and determines the addition result as the target value (LEVEL). , The output end B> A outputs “1” to the first AND circuit 17. However, the other input of the first AND circuit 17 is “0”.
Therefore, the output of the first AND circuit 17 is “0”
It is. Further, since the output of the second AND circuit 18 is “0”, the outputs of the second OR circuit 19 and the first OR circuit 16 also become “0”, and as a result, the switch 12
Keep in contact with.

【0024】つまり、スイッチ12が接点aと接触して
いる状態においては、加減算器14の出力が、スイッチ
12を介して第2RAM13に入力されるとともに、マ
イコン1の入力端Dに入力される。そして、第2RAM
13においては、加減算器14の出力をCK1のタイミ
ングで現在値として書き込むとともに、この現在値を第
1比較器10の入力端Aと加減算器14の入力端Aとに
出力する。したがって、RATEが+である値をステッ
プの処理を行っている場合において、目標値(LEVE
L)>現在値の状態が続く限り、スイッチ12を介して
第2RAM13には加減算器14の加算結果である現在
値が入力される。
That is, when the switch 12 is in contact with the contact a, the output of the adder / subtractor 14 is input to the second RAM 13 via the switch 12 and to the input terminal D of the microcomputer 1. And the second RAM
In 13, the output of the adder / subtractor 14 is written as the current value at the timing of CK1, and this current value is output to the input terminal A of the first comparator 10 and the input terminal A of the adder / subtractor 14. Therefore, when the value of RATE is +, the target value (LEVE
L)> As long as the state of the current value continues, the current value as the addition result of the adder / subtractor 14 is input to the second RAM 13 via the switch 12.

【0025】そして、現在値が目標値(LEVEL)に
到達すると、第1比較器10においてA=Bとなり、該
第1比較器10の出力端EQから“1”が出力される。
すると、第1OR回路16の出力が“1”となって、ス
イッチ12が接点bと導通し、第2RAM13には今回
のレベルデータが書き込まれ、また、ARV=1とな
る。また、A=Bとなることなく加減算器14の加算し
過ぎにより、現在値が目標値をオーバーした場合には、
第2比較器11においてA>Bとなることから、第2A
ND回路18の出力が“1”となって、第1、第2各O
R回路16,19の出力が“1”となり、前述と同様に
スイッチ12が接点bと接触し、第2RAM13には今
回のLEVELが書き込まれ、また、ARV=1とな
る。
When the current value reaches the target value (LEVEL), A = B in the first comparator 10, and "1" is output from the output terminal EQ of the first comparator 10.
Then, the output of the first OR circuit 16 becomes “1”, the switch 12 becomes conductive with the contact “b”, the current level data is written in the second RAM 13, and ARV = 1. If the current value exceeds the target value due to excessive addition by the adder / subtractor 14 without A = B,
Since A> B in the second comparator 11, the second comparator A
The output of the ND circuit 18 becomes “1”, and the first and second O
The outputs of the R circuits 16 and 19 become "1", the switch 12 comes into contact with the contact "b" in the same manner as described above, the current LEVEL is written in the second RAM 13, and ARV = 1.

【0026】他方、図6のメインルーチンにおいて行わ
れるエンベロープ制御(SA3)は、図14に示したフ
ローチャートにしたがって実行され、先ずARV=1と
なったか否かを判別し(SH1)、前述のように目標値
に達していなければARV=0であることからリターン
し、また、目標値に達していればARV=1であること
から、この目標値に達したSTEPが0〜5のいずれで
あるかを判別する(SH2)。この判別において、現在
のステップがSTEP=0であれば、既にアタックから
リリースまでのエンベロープ波形の出力は終了している
ことから、そのままリターンする。また、前記判別がS
TEP=1であればSTEPレジスタ(図4)に、次の
STEPの値である“2”を格納して(SH3)、A
RegにSTEP=2のレベルデータであるLEVEL
(1)を格納するとともにB RegにSTEP=2の
レイトデータであるRATE(1)を格納し(SH
4)、しかる後に前述した図13のフローチャートした
がってエンベロープ発生器制御を実行する(SH5)。
On the other hand, the envelope control (SA3) performed in the main routine of FIG. 6 is executed according to the flowchart shown in FIG. 14, and it is first determined whether or not ARV = 1 (SH1). If the target value has not been reached, the process returns because ARV = 0, and if the target value has been reached, ARV = 1, and the STEP that has reached the target value is any of 0-5. Is determined (SH2). In this determination, if the current step is STEP = 0, the output returns immediately since the output of the envelope waveform from attack to release has already been completed. In addition, if the determination is S
If TEP = 1, the next STEP value "2" is stored in the STEP register (FIG. 4) (SH3), and A
REG, which is level data of STEP = 2,
(1) and RATE (1), which is the late data of STEP = 2, are stored in B Reg (SH
4) Then, the envelope generator control is executed according to the flowchart of FIG. 13 described above (SH5).

【0027】また、SH2の判別において、STEP=
2であった場合には、STEPレジスタに、次のSTE
Pの値である“3”を格納して(SH6)、ARegに
STEP=3のレベルデータであるLEVEL(2)を
格納するとともにB RegにSTEP=2のレイトデ
ータであるRATE(2)を格納した後(SH7)、エ
ンベロープ発生器制御を実行する(SH5)。さらに、
SH2の判別において、STEP=3であった場合に
は、STEPレジスタに、次のSTEPの値である
“4”を格納する(SH8)。また、A RegにST
EP=4のレベルデータであるLEVEL(2)を格納
し、ここで、このSTEP=4は図3に示したようにサ
ステインに対応するSTEPであることから、B Re
gにはレイトデータとしてSUS RATE(定数)を
格納した後(SH9)、エンベロープ発生器制御を実行
する(SH5)。
In the determination of SH2, STEP =
If it is 2, the next STE is stored in the STEP register.
"3" which is the value of P is stored (SH6), LEVEL (2) which is STEP = 3 level data is stored in AReg, and RATE (2) which is late data of STEP = 2 is stored in B Reg. After storing (SH7), the envelope generator control is executed (SH5). further,
In the determination of SH2, if STEP = 3, the value of the next STEP, "4", is stored in the STEP register (SH8). Also, ST to A Reg
LEVEL (2) which is level data of EP = 4 is stored. Here, since STEP = 4 is a STEP corresponding to the sustain as shown in FIG.
After storing SUS RATE (constant) as rate data in g (SH9), the envelope generator control is executed (SH5).

【0028】また、SH2の判別において、STEP=
4であった場合には、次のSTEPに進むことなく、S
TEP=4の状態を保持したままSH9とSH5とを実
行してリターンする。すなわち、STEP=4からST
EP=5に進み得るのは、前述した図10のSD3の判
別YESとなってSD4のキーオフ処理が実行され、後
述する図15に示したSI1が処理された場合である。
つまりキーオフがSTEP=4からSTEP=5に進み
得る条件であって、キーオンの状態が続く限りこの間A
RV=1となっても、STEP=4の状態が維持される
とともに、ARV=1となる度に(目標値に達する度
に)図14のSH9とSH5とが実行されて、該SH5
において図13に示したSG1からSG4までのエンベ
ロープ発生器制御が実行される。
In the determination of SH2, STEP =
If the answer is 4, the program proceeds to step S
SH9 and SH5 are executed while maintaining the state of TEP = 4, and the process returns. That is, from STEP = 4 to ST
It is possible to proceed to EP = 5 when the above-mentioned determination of SD3 in FIG. 10 is YES and the key-off process of SD4 is executed, and SI1 shown in FIG. 15 described later is processed.
In other words, this is a condition under which the key-off can proceed from STEP = 4 to STEP = 5.
Even if RV = 1, the state of STEP = 4 is maintained, and SH9 and SH5 of FIG. 14 are executed each time ARV = 1 (each time the target value is reached), and the SH5 is executed.
In, the envelope generator controls SG1 to SG4 shown in FIG. 13 are executed.

【0029】このとき、図13のSG1において、A
RegにはA Reg+(LFO×LFO DEPTH)
が格納され、LFO の値は図9に示したようにサイン
波形をもって周期的に変化しており、よって、前記SG
1においてA Regに格納されるA Reg+(LFO
×LFODEPTH)の値は周期的に変動する。したが
って、この周期的に変動する値が図13のSG3におい
てA Regの内容としてエンベロープ発生器5に送ら
れ、該エンベロープ発生器5はこの送られたARegの
値を目標値として、この目標値に達した時点でARV=
1を出力する。
At this time, in SG1 of FIG.
A Reg + (LFO × LFO DEPTH) for Reg
Is stored, and the value of LFO changes periodically with a sine waveform as shown in FIG.
1, A Reg + stored in A Reg + (LFO
X LFODEPTH) fluctuates periodically. Therefore, this periodically fluctuating value is sent to the envelope generator 5 as the content of A Reg in SG3 of FIG. 13, and the envelope generator 5 sets the sent AReg value as a target value, and ARV =
Outputs 1.

【0030】つまり、STEP=1〜3までが終了する
とキーオンの状態が継続する限りSTEP=4の状態が
維持され、AV=1となった時点で目標値をエンベロー
プ発生器5に送る動作と、エンベロープ出力値が目標値
に達した時点で、エンベロープ発生器5からAV=1を
出力する動作とが繰り返される。このとき、目標値は前
述のように図9に示したサイン波形にしたがって周期的
に変動していることから、この周期的に変動している目
標値に達するエンベロープ出力値の繰り返しにより、図
16に示したと同様にエンベロープのサステイン部分S
は周期的に変動する特性となる。しかも、この目標値
は、図13のSG1とSG2にてLFODEPTHが乗
ぜられた値とAFTER DEPTHが乗ぜられた値と
が加算されていることから、前記サステイン部分Sに
は、LFO DEPTHに応じた深度のLFOによる変
調と、AFTER DEPTHに応じたアフタータッチ
による変調とがかかる。よって、このエンベロープ波形
にしたがって発音回路7から楽音を発生させた場合、楽
音はキーオンが継続している間アフタータッチの強さに
応じて周期的に変動してゆれが生じ、自然楽器からの発
生楽音に近似した楽音を発生させることができる。
That is, when STEP = 1 to 3 is completed, the state of STEP = 4 is maintained as long as the key-on state is continued, and when AV = 1, the target value is sent to the envelope generator 5; When the envelope output value reaches the target value, the operation of outputting AV = 1 from the envelope generator 5 is repeated. At this time, since the target value periodically fluctuates according to the sine waveform shown in FIG. 9 as described above, the envelope output value that reaches the periodically fluctuating target value is repeated as shown in FIG. The sustain portion S of the envelope as shown in
Has periodically varying characteristics. Moreover, since the target value is obtained by adding the value multiplied by LFODEPTH and the value multiplied by AFTER DEPTTH in SG1 and SG2 in FIG. The modulation by the LFO of the depth and the modulation by the aftertouch according to AFTER DEPTTH are applied. Therefore, when a tone is generated from the tone generation circuit 7 in accordance with the envelope waveform, the tone periodically fluctuates according to the strength of the after touch while the key-on is continued, causing a fluctuation, and the tone generated from the natural musical instrument. A tone similar to a tone can be generated.

【0031】そして、離鍵を行うと図10に示したフロ
ーチャートのSD3の判別がYESとなってキーオフ処
理が行われ(SD4)、該キーオフ処理は図15に示し
たフローチャートにしたがって実行される。すなわち、
先ず前記STEPレジスタに“5”を格納するととも
に、A RegにLEVEL(3)を格納し、かつ、B
RegにRATE(3)を格納する(SI1)。つま
り、図3に示したエンベロープのリリース部分に対応す
るSTEP=5の目標値D(=0)は、図2に示したよ
うにLEVEL(3)で示されることから、この目標値
Dを示すLEVEL(3)をA Regに格納するとと
もに、前記STEP=5の変化速度であるRATE
(3)をB Regに格納し、引き続きエンベロープ発
生器制御(SI2)を行う。そして、このエンベロープ
発生器制御を行うことにより、エンベロープ出力値が目
標値に到達すると、ARV=1となって図14に示した
SH1の判別がYESとなり、このときSTEP=5の
状態にあることから、SH2からSH10に進み、ST
EPレジスタに“0”が格納され、キーオン前の待機状
態となるのである。
When the key is released, the determination of SD3 in the flowchart shown in FIG. 10 becomes YES, and the key-off process is performed (SD4), and the key-off process is executed according to the flowchart shown in FIG. That is,
First, "5" is stored in the STEP register, LEVEL (3) is stored in A Reg, and B
RATE (3) is stored in Reg (SI1). That is, the target value D (= 0) of STEP = 5 corresponding to the release part of the envelope shown in FIG. 3 is indicated by LEVEL (3) as shown in FIG. LEVEL (3) is stored in A Reg and RATE which is the change speed of STEP = 5 is used.
(3) is stored in B Reg, and envelope generator control (SI2) is subsequently performed. By performing the envelope generator control, when the envelope output value reaches the target value, ARV = 1 and the determination of SH1 shown in FIG. 14 becomes YES. At this time, the state of STEP = 5 is established. From, proceed from SH2 to SH10, ST
"0" is stored in the EP register, and the apparatus enters a standby state before key-on.

【0032】[0032]

【発明の効果】以上説明したように本発明によれば、周
期的に変動する変調データを加算することによりレベル
データを周期的に可変設定し、この可変設定されるレベ
ルデータを目標値として、エンベロープ出力手段が一定
時間毎の累算を実行して、その累算値をエンベロープ出
力値として出力するようにした。よって、補間回路を必
要とする従来の装置のようにハード的な構成が複雑とな
ることなく、周期の早いトレモロを発生させることがで
きる。また、ソフト的にはエンベロープ出力値が目標値
であるレベルデータに達する度に、目標値を可変設定し
て前記エンベロープ出力手段へ与える処理を行えばよい
ことから、マイコンの負担が少なく、その処理速度に左
右されずに、速い周期の変動をエンベロープの特定部分
に形成することが可能となる。
As described above, according to the present invention, level data is periodically variably set by adding periodically varying modulation data, and the variably set level data is set as a target value. The envelope output means performs accumulation at regular time intervals, and outputs the accumulated value as an envelope output value. Therefore, a tremolo having a short cycle can be generated without complicating a hardware configuration unlike a conventional apparatus requiring an interpolation circuit. Further, in terms of software, every time the envelope output value reaches the level data which is the target value, the target value may be variably set and given to the envelope output means. It is possible to form a fast-period variation in a specific portion of the envelope regardless of the speed.

【0033】また、本発明におけるエンベロープ発生装
置を電子楽器に応用して前記変調データに操作子のアフ
タータッチに応じた値を加算するようにし、あるいはエ
ンベロープのサステイン部分に対応するステップにて、
前記目標値を可変設定するようにすれば、アフタータッ
チの強さに応じて発生楽音のサステイン部分にゆれを発
生させることができ、これによりより自然楽器からの発
生楽音に近似した楽音の発生が可能となる。
Further, the envelope generating device according to the present invention is applied to an electronic musical instrument so that a value corresponding to the after-touch of an operator is added to the modulation data, or in a step corresponding to a sustain portion of the envelope,
If the target value is variably set, it is possible to generate fluctuations in the sustain portion of the generated musical tone in accordance with the strength of the after touch, thereby generating a musical tone more similar to a musical tone generated from a natural musical instrument. It becomes possible.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の一実施例の全体構造を示すブロック図
である。
FIG. 1 is a block diagram showing the overall structure of an embodiment of the present invention.

【図2】同実施例のROMに記憶されたデータの内容を
示す模式図である。
FIG. 2 is a schematic diagram showing contents of data stored in a ROM of the embodiment.

【図3】同実施例のエンベロープ波形と各STEPとの
関係を示す説明図である。
FIG. 3 is an explanatory diagram showing a relationship between an envelope waveform and each STEP of the embodiment.

【図4】同実施例のRAMに用意されたレジスタを示す
模式図である。
FIG. 4 is a schematic diagram showing registers prepared in a RAM of the embodiment.

【図5】同実施例において用いられたエンベロープ発生
器の回路図である。
FIG. 5 is a circuit diagram of an envelope generator used in the embodiment.

【図6】同実施例のメインルーチンを示すフローチャー
トである。
FIG. 6 is a flowchart showing a main routine of the embodiment.

【図7】同実施例のタイマー割り込みルーチンを示すフ
ローチャートである。
FIG. 7 is a flowchart showing a timer interrupt routine of the embodiment.

【図8】同タイマー割り込みルーチンにおけるLFO制
御の内容を示すフローチャートである。
FIG. 8 is a flowchart showing the contents of LFO control in the timer interrupt routine.

【図9】同実施例のLFO COUNTとLFOの関係
を示す波形図である。
FIG. 9 is a waveform chart showing a relationship between LFO COUNT and LFO of the embodiment.

【図10】同実施例のメインルーチンで実行される操作
子群制御の内容を示すフローチャートである。
FIG. 10 is a flowchart showing the contents of an operator group control executed in a main routine of the embodiment.

【図11】図10のSD5において実行されるアフター
処理の内容を示すフローチャートである。
FIG. 11 is a flowchart showing the contents of an after process executed in SD5 of FIG. 10;

【図12】図10のSD2において実行されるキーオン
処理の内容を示すフローチャートである。
FIG. 12 is a flowchart showing the contents of a key-on process executed in SD2 of FIG. 10;

【図13】同実施例のエンベロープ発生器制御の内容を
示すフローチャートである。
FIG. 13 is a flowchart showing the contents of envelope generator control of the embodiment.

【図14】図6のSA3において実行されるエンベロー
プ制御の内容を示すフローチャートである。
FIG. 14 is a flowchart showing the contents of envelope control executed in SA3 of FIG. 6;

【図15】図10のSD4において実行されるキーオフ
処理の内容を示すフローチャートである。
FIG. 15 is a flowchart showing the contents of a key-off process executed in SD4 of FIG. 10;

【図16】サステイン部分が周期的に変動しているエン
ベロープの波形図である。
FIG. 16 is a waveform diagram of an envelope in which a sustain portion periodically fluctuates.

【図17】図16の示した波形からなるエンベロープを
発生する従来装置のブロック回路図である。
17 is a block circuit diagram of a conventional device for generating an envelope having the waveform shown in FIG.

【符号の説明】[Explanation of symbols]

1 マイコン 2 ROM 3 RAM 4 操作子群 5 エンベロープ発生器 9 第1RAM 10 第1比較器 11 第2比較器 13 第2RAM 14 加減算器 DESCRIPTION OF SYMBOLS 1 Microcomputer 2 ROM 3 RAM 4 Operator group 5 Envelope generator 9 1st RAM 10 1st comparator 11 2nd comparator 13 2nd RAM 14 Adder / subtracter

フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G10H 1/057 G10H 1/053 Continuation of the front page (58) Field surveyed (Int.Cl. 7 , DB name) G10H 1/057 G10H 1/053

Claims (4)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 エンベロープ波形を形成する連続した各
ステップの目標値であるレベルデータと変化速度を示す
レートデータとを予め定められた順序にて記憶した記憶
手段と、 該記憶手段から各ステップのレベルデータとレートデー
タとを前記順序に従って出力する出力手段と、 該出力手段から出力されたステップのレートデータに基
づき一定間隔にて累算を実行し、その累算値を各ステッ
プに対応するエンベロープ波形を形成するためのエンベ
ロープ出力値として出力するとともに、前記累算値が当
該ステップのレベルデータを超えたとき次のステップの
レベルデータとレートデータの出力を前記出力手段に指
示するエンベロープ出力手段と、 周期的に変動する変調データを出力する変調データ出力
手段と、 前記エンベロープ出力手段において累算値がレベルデー
タを超えたときに、その累算に用いられたレートデータ
と前記レベルデータのステップが特定のステップか否か
を検出する検出手段と、 該検出手段により前記特定のステップであると検出され
たとき、次のステップのレベルデータを出力させずに、
当該ステップのレベルデータの値に前記変調データの値
を加算して、前記目標値可変設定する可変設定手段
と、 を設けたことを特徴とするエンベロープ発生装置。
1. A storage means for storing, in a predetermined order, level data, which is a target value of each successive step for forming an envelope waveform, and rate data indicating a rate of change, from the storage means. Output means for outputting the level data and the rate data in accordance with the order; accumulating at a constant interval based on the rate data of the step outputted from the output means; and applying the accumulated value to an envelope corresponding to each step. Envelope output means for outputting as an envelope output value for forming a waveform, and instructing the output means to output the level data and rate data of the next step when the accumulated value exceeds the level data of the step. , the modulation data output means for outputting the modulated data that varies periodically, said envelope output means It had accumulated value to the level Day
Rate data used for the accumulation when data exceeds
Detection means for detecting whether or not the step of the level data is a specific step ; and when the detection means detects that the step is the specific step , the level data of the next step is not output. To
Variable setting means for variably setting the target value by adding the value of the modulation data to the level data value of the step.
【請求項2】 前記変調データ出力手段は、一定周期の
波形に対応する値を前記変調データとして出力するLF
O発生手段であることを特徴とする請求項1記載のエン
ベロープ発生装置。
2. The modulation data output means outputs a value corresponding to a waveform of a fixed period as the modulation data.
2. The envelope generator according to claim 1, wherein the envelope generator is an O generator.
【請求項3】 演奏操作子と、この演奏操作子の操作時
のアフタータッチを検出するアフタータッチ検出手段を
さらに設け、前記変調データ出力手段は、前記アフター
タッチ検出手段により検出されたアフタータッチに応じ
た値を前記変調データに加算して出力することを特徴と
する請求項1記載のエンベロープ発生装置。
3. A performance control, and aftertouch detection means for detecting aftertouch when the performance control is operated, wherein the modulation data output means detects an aftertouch detected by the aftertouch detection means. 2. The envelope generator according to claim 1, wherein a value corresponding to the added value is added to the modulation data and output.
【請求項4】 前記検出手段は、前記特定のステップと
して、エンベロープのサステインに対応するステップを
検出することを特徴とする請求項1記載のエンベロープ
発生装置。
4. The envelope generating apparatus according to claim 1, wherein said detecting means detects a step corresponding to the sustain of the envelope as said specific step.
JP03190853A 1991-07-05 1991-07-05 Envelope generator Expired - Fee Related JP3139063B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP03190853A JP3139063B2 (en) 1991-07-05 1991-07-05 Envelope generator

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP03190853A JP3139063B2 (en) 1991-07-05 1991-07-05 Envelope generator

Publications (2)

Publication Number Publication Date
JPH0511760A JPH0511760A (en) 1993-01-22
JP3139063B2 true JP3139063B2 (en) 2001-02-26

Family

ID=16264865

Family Applications (1)

Application Number Title Priority Date Filing Date
JP03190853A Expired - Fee Related JP3139063B2 (en) 1991-07-05 1991-07-05 Envelope generator

Country Status (1)

Country Link
JP (1) JP3139063B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2768213B2 (en) * 1993-06-07 1998-06-25 ヤマハ株式会社 Coefficient interpolation circuit and coefficient interpolation method
JP6044728B2 (en) * 2016-01-22 2016-12-14 ヤマハ株式会社 Electronic keyboard instrument

Also Published As

Publication number Publication date
JPH0511760A (en) 1993-01-22

Similar Documents

Publication Publication Date Title
JP3139063B2 (en) Envelope generator
JPH0298A (en) Frequency controller
US5998723A (en) Apparatus for forming musical tones using impulse response signals and method of generating musical tones
US20020046639A1 (en) Method and apparatus for waveform reproduction
JP2579231Y2 (en) Electronic musical instrument
JP3346710B2 (en) Pronunciation instruction processing method and pronunciation instruction processing device
JP3583575B2 (en) Electronic musical instrument
JP3394626B2 (en) Electronic musical instrument
JP3090383B2 (en) Tone assigning device and tone generating device
US5559300A (en) Delay time modulation effecting apparatus for processing musical tone signal
JPH0413193A (en) Musical sound generating device
JPH0640268B2 (en) Frequency control device for electronic musical instruments
JP3123132B2 (en) Envelope generator
JP2853588B2 (en) Electronic musical instrument
JP3090382B2 (en) Tone assigning device and tone generating device
JPH02300797A (en) Musical sound generator of electronic musical instrument
JP2689763B2 (en) How to read waveform data
JPH056179A (en) Musical note channel allocating device
JP2939098B2 (en) Electronic musical instrument
JP2705422B2 (en) Electronic musical instrument
JP3344983B2 (en) Apparatus and method for generating fluctuation waveform of electroacoustic apparatus
JP2611610B2 (en) Envelope generator
JP3170013B2 (en) Automatic performance device
JPH11305775A (en) Key-on delay effect adding device for electronic musical instrument
JPH10133663A (en) Electronic musical instrument

Legal Events

Date Code Title Description
FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071215

Year of fee payment: 7

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081215

Year of fee payment: 8

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081215

Year of fee payment: 8

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091215

Year of fee payment: 9

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101215

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees