4.11 サウンドジェネレータ
4.11.7 サウンドジェネレータのI/Oメモリ
表4.11.7.1にサウンドジェネレータの制御ビットとそのアドレスを示します。
表4.11.7.1 サウンドジェネレータの制御ビット
アドレス 注 釈
D3 D2
レジスタ
D1 D0 Name Init ∗1 1 0
FF16H
MDCKE SGCKE SWCKE RTCKE R/W
MDCKE SGCKE SWCKE RTCKE
0 0 0 0
Enable Enable Enable Enable
Disable Disable Disable Disable
乗除算クロックイネーブル
サウンドジェネレータクロックイネーブル ストップウォッチタイマクロックイネーブル 計時タイマクロックイネーブル
FF44H
ENRTM ENRST ENON BZE
R/W W R/W
ENRTM ENRST∗3 ENON
BZE 0 Reset
0 0
1 sec Reset On Enable
0.5 sec Invalid Off Disable
エンベロープ減衰時間選択 エンベロープリセット(書き込み時) エンベロープOn/Off
BZ出力イネーブル
0 4096.0
1 3276.8
2 2730.7
3 2340.6 [BZFQ2~0]
周波数(Hz) 4 2048.0
5 1638.4
6 1365.3
7 1170.3 [BZFQ2~0]
周波数(Hz) FF46H
0 BZFQ2 BZFQ1 BZFQ0
R R/W
0 ∗3 BZFQ2 BZFQ1 BZFQ0
– ∗2 0 0 0
未使用 ブザー 周波数選択
FF47H
0 BDTY2 BDTY1 BDTY0
R R/W
0 ∗3 BDTY2 BDTY1 BDTY0
– ∗2 0 0 0
未使用
ブザー信号デューティ比選択 (本編参照)
FF45H
0 BZSTP BZSHT SHTPW
R W R/W
0 ∗3 BZSTP∗3
BZSHT
SHTPW – ∗2
0 0
0 Stop Trigger
Busy 125 msec
Invalid Invalid Ready 31.25 msec
未使用
1ショットブザーStop(書き込み時) 1ショットブザートリガ(書き込み時) 1ショットブザーステータス(読み出し時) 1ショットブザーパルス幅選択
*1 イニシャルリセット時の初期値
*2 回路上設定されない
*3 読み出し時は常時"0"
● SGCKE: サウンドジェネレータクロックイネーブル (FF16H・D2)
サウンドジェネレータへのクロックの供給を制御します。
"1"書き込み: ON
"0"書き込み: OFF 読み出し: 可能
SGCKEに"1"を書き込むことによって、サウンドジェネレータの動作クロックがクロックマネージャから供給 されます。計時タイマを動作させる必要がないときは、消費電流を低減させるためSGCKEを"0"に設定して クロック供給を停止してください。
イニシャルリセット時、このレジスタは"0"に設定されます。
● BZE: BZ出力イネーブルレジスタ (FF44H・D0)
ブザー出力を制御します。
"1"書き込み: ブザー出力ON
"0"書き込み: ブザー出力OFF 読み出し: 可能
BZEに"1"書き込むことによってP03(BZ)端子からBZ信号が出力されます。このとき、I/O制御レジスタ IOC03およびデータレジスタP03の設定は無効になります。BZEが"0"の場合、P03ポートは汎用のDC入出 力ポートとして機能します。
イニシャルリセット時、このレジスタは"0"に設定されます。
4 周辺回路と動作(サウンドジェネレータ)
● ENON: エンベロープON/OFF制御レジスタ (FF44H・D1)
ブザー信号へのエンベロープ付加を制御します。
"1"書き込み: ON
"0"書き込み: OFF 読み出し: 可能
ENONレジスタに"1"を書き込むことにより、ブザー信号出力時にエンベロープが付加されます。"0"を書き 込んだ場合、エンベロープは付加されません。
イニシャルリセット時、このレジスタは"0"が選択されます。
● ENRST: エンベロープリセット (FF44H・D2)
エンベロープをリセットします。
"1"書き込み: リセット
"0"書き込み: ノーオペレーション 読み出し: 常時"0"
ENRSTに"1"を書き込むことによりエンベロープがリセットされ、デューティ比が最大となります。エンベロー プが付加されていない場合(ENON = "0")、およびブザー信号の出力が行われていない場合のリセット は無効となります。また"0"の書き込みも無効です。
ENRSTは書き込み専用のため、読み出し時は常時"0"となります。
● ENRTM: エンベロープ減衰時間選択レジスタ (FF44H・D3)
ブザー信号に付加されたエンベロープの減衰時間を選択します。
"1"書き込み: 1.0sec (125msec×7 = 875msec)
"0"書き込み: 0.5sec (62.5msec×7 = 437.5msec)
読み出し: 可能
デジタルエンベロープの減衰時間はデューティ比の変化する時間で決められます。ENRTMに"1"を書き込 んだ場合は125msec(8Hz)単位、"0"を書き込んだ場合は62.5msec(16Hz)単位となります。
イニシャルリセット時、このレジスタは"0"に設定されます。
● SHTPW: 1ショットブザーパルス幅選択レジスタ (FF45H・D0)
1ショットブザーの出力時間を選択します。
"1"書き込み: 125msec
"0"書き込み: 31.25msec 読み出し: 可能
SHTPWレジスタに"1"を書き込むことにより1ショット出力時間が125msecに、"0"書き込みで31.25msecに設 定されます。通常のブザー出力には影響を与えません。
イニシャルリセット時、このレジスタは"0"に設定されます。
● BZSHT: 1ショットブザートリガ/ステータス (FF45H・D1)
1ショットブザー出力の制御を行います。
4 周辺回路と動作(サウンドジェネレータ)
• データ読み出し時
"1"読み出し: BUSY
"0"読み出し: READY
読み出し時は1ショット出力回路の動作状態を示します。1ショット出力中にBZSHTは"1"となり、出力がOFF すると"0"になります。
イニシャルリセット時、このビットは"0"に設定されます。
● BZSTP: 1ショットブザーSTOP (FF45H・D2)
1ショットブザー出力を停止させます。
"1"書き込み: STOP
"0"書き込み: ノーオペレーション 読み出し: 常時"0"
BZSTPに"1"を書き込むことにより、SHTPWによる設定時間が経過する前に1ショットブザー出力をOFFす ることができます。"0"書き込みおよび1ショット出力中以外の"1"書き込みは無効です。
BZSTPは書き込み専用のため、読み出し時は常時"0"となります。
● BZFQ0〜BZFQ2: ブザー周波数選択レジスタ (FF46H・D0〜D2)
ブザー信号の周波数を選択します。
表4.11.7.2 ブザー信号の周波数設定 ブザー周波数 (Hz)
4096.0 3276.8 2730.7 2340.6 2048.0 1638.4 1365.3 1170.3 BZFQ0
0 1 0 1 0 1 0 1 BZFQ1
0 0 1 1 0 0 1 1 BZFQ2
0 0 0 0 1 1 1 1
ブザー周波数は発振クロックを分周した上記8種類の中から選択します。
イニシャルリセット時、このレジスタは"0"に設定されます。
● BDTY0〜BDTY2: デューティ比選択レジスタ (FF47H・D0〜D2)
ブザー信号のデューティ比を表4.11.7.3のとおり選択します。
表4.11.7.3 デューティ比の設定
ブザー周波数 (Hz)によるデューティ比 BDTY0
0 1 0 1 0 1 0 1 BDTY1
0 0 1 1 0 0 1 1 BDTY2
0 0 0 0 1 1 1 1 レベル
レベル1(最大) レベル2 レベル3 レベル4 レベル5 レベル6 レベル7 レベル8(最小)
4096.0 2048.0 8/16 7/16 6/16 5/16 4/16 3/16 2/16 1/16
3276.8 1638.4 8/20 7/20 6/20 5/20 4/20 3/20 2/20 1/20
2730.7 1365.3 12/24 11/24 10/24 9/24 8/24 7/24 6/24 5/24
2340.6 1170.3 12/28 11/28 10/28 9/28 8/28 7/28 6/28 5/28 このデューティ比を選択することによりブザーの音量を設定することができます。
ただし、エンベロープをON(ENON="1")に設定している場合は、この設定は無効となります。
イニシャルリセット時、このレジスタは"0"に設定されます。
4 周辺回路と動作(サウンドジェネレータ)