FC2ブログ

名張市つつじが丘おもちゃ病院

三重県名張市つつじが丘でおもちゃの病院を開院しています。年中無休で修理は無料、部品代のみ実費です。おもちゃの修理依頼は tutuji@cb4.so-net.ne.jp へメールにてご連絡下さい。なお、宅配便での受け付けは行っておりません。このブログにはおもちゃ等の修理事例やツール製作などを載せていきます。故障診断や修理方法の改善等、ご意見をお寄せ下さい。

PIC電子オルゴールVer5_7でオルゴール演奏終了時のポップノイズ抑止をサポート

おもちゃのキーボードへの応用で、オルゴール演奏中断時のポップノイズが目立ったため、それを抑止する改善を施した。

【背景】
PIC電子オルゴールをキーボードおもちゃに応用する場合、オルゴール演奏の開始と中断を頻繁に実行することになる。鍵盤の押下で該当する音高の音符を演奏開始し、鍵盤を放すと演奏を中断させるからだ。

演奏開始時は音源波形とエンベロープ波形でポップノイズを抑止できるが、中断時はいきなり出力値が0になり、鍵盤を放す都度ポップノイズが発生するので耳障りになる。

【改善】
演奏中断後は、最終の出力値をランプ下降させる。
このような処理は音声再生では既に実施していて、今回、オルゴール演奏にも同様の処理を入れた。

【アプリケーション(固有部)への影響】
今回の改善ではアプリケーション(固有部)への影響があるので、バージョンを5_7に上げた。

PIC電子オルゴールVer5_6では音声再生のポップノイズ対策として、ランプ下降処理タイミングのプリスケール値を VOICE_POP_PS で宣言していたが、今回はオルゴール演奏と共通にするため POP_PS で宣言することとした。

このため、 VOICE_POP_PS は無効になり、ソースコードから削除するのが望ましい。代わりに、 POP_PS を新たに宣言する必要がある。値は従前の VOICE_POP_PS の設定値でよい。

エンジン側で読み替えることも可能なのだが、しがらみを引きずりたくないのでキッパリと切り替えて欲しい。

変更例は以下のとおり。

VOICE_POP_PS equ 50  の行を削除し、
POP_PS equ 50 を追加する。

【ダウンロード】
PIC電子オルゴールVer5_7の開発プロジェクトは ここから ダウンロードできる。
関連記事
スポンサーサイト
  1. 2018/03/18(日) 10:13:18|
  2. 電子オルゴール+音声
  3. | コメント:2
<<PIC電子オルゴールVer5_7で(糸魚川)Dr.渡辺氏の曲目を追加 | ホーム | 伊賀おもちゃ病院の開院日程>>

コメント

Re: タイトルなし

昨年5月29日 の製作記事は記述に誤りがありました。

デフォルトのリンカースクリプトが使えないデバイスは

16F1579
16F1705
16F1709
16F1827
16F1828
12F1840

上記のものです。これらのデバイスでメモリをフルに使う場合は、ダウンロードファイルにあるリンカースクリプトを使う必要があります。

16F18325、16F18326 はデフォルトのリンカースクリプトでメモリをフルに使えます。

該当のブログ記事は修正しました。

ご指摘いただき、有難う御座いました。
  1. 2018/03/19(月) 21:52:42 |
  2. URL |
  3. 大泉茂幸 #-
  4. [ 編集 ]

久々のバージョンアップ公開、敬意を表すとともに感謝申し上げます。誠にありがとうございます。
先日から、新デバイスの16F18326を使っておりますが、非常にコストパフォーマンスが良いように思います。今後、オルゴール+音声再生のプロジェクトの勉強を進めたいと存じます。
そこで基本的な質問で恐縮ですが、リンカースクリプトはデフォルトのままでも差し支えないでしょうか。
最新バージョンにおいても、下記のリンカースクリプトに関する記述は同様でしょうか? 

※昨年5月29日 の製作記事より抜粋
「~デフォルトのリンカースクリプトではプログラムメモリのセグメントが分断されているので、PIC電子オルゴール向けに1セグメントにしたものを用意している。~16F18325、16F18326」
  1. 2018/03/19(月) 20:35:49 |
  2. URL |
  3. Dr.わたなべ.M #-
  4. [ 編集 ]

コメントの投稿


管理者にだけ表示を許可する

プロフィール

大泉茂幸

Author:大泉茂幸
名張市つつじが丘おもちゃ病院
名張市つつじが丘南3番町129
tutuji@cb4.so-net.ne.jp
090-5534-6494
連絡は上記のメール、またはSMSでお願いします。

子どもの頃から趣味は電子工作一筋でやってきました。理科離れが進む中で科学技術に興味を持つ子どもが少しでも増えて行くことを願って、子ども達に電子工作の活動の場を提供しています。

1981年からおもちゃ病院の活動を始め、2014年に三重県名張市への移住を機に「つつじが丘おもちゃ病院」を開院しました。自分でおもちゃを設計し製作する【おもちゃ工房】と、マイコンを応用した電子工作を楽しむ【マイコンクラブ】も併設しています。新規参加メンバーを募集しています。

当ブログで公開している技術情報や成果物のご利用および再配布はフリーです。読者様の技術活動のお役に立てば幸いです。ご利用いただいた結果や感想等を記事へのコメントやメールでフィードバックしていただけると有難いです。なお、公開ファイルは最新版を載せているので、古い記事の内容から変わっている場合があります。

カテゴリ

おもちゃ修理技術 (87)
¦ ・電子オルゴール+音声 (32)
¦ ・音声再生・録音再生 (4)
¦ ・2.4GHzラジコン (29)
¦ ・レガシーラジコン (12)
¦ ・赤外線リモコン (4)
¦ ・RFID (3)
¦ ・タッチセンス (3)
ツール製作 (24)
¦ ・プログラマー (17)
¦ ・USB-シリアル変換 (3)
¦ ・その他のツール (4)
修理事例 (150)
¦ ・マイコン換装 (70)
¦ ・電子・電気修理 (58)
¦ ・メカ修理 (22)
製作記事 (4)
PIC開発 (4)
おもちゃ病院 (9)
ドクター研修会 (2)
未分類 (0)

最新記事

最新コメント

月別アーカイブ

訪問者数

検索フォーム

RSSリンクの表示

リンク

このブログをリンクに追加する

ブロとも申請フォーム

この人とブロともになる

QRコード

QR