Mp3デコーダ モスキート音の解消方法 [ds-DCCデコーダ]
DCC電子工作連合の中で、MP3デコーダV5を改造しようとしたら、Mp3デコーダからモスキート音がするという話があり、そういえばうちの子供も電車が停止時にピーって言っているよと言っていたので、オシロで見てみました。(もちろんそんな音、中年の私には聞こえません)
EL102スケッチ(EL102bスケッチも多分一緒)の時です。
1メモリ10usですが、確かに60us周期のノイズが出ています。
で、どうしようか、寝ないで考えました。(嘘です)
今までPWMの搬送波をサンプリング周波数と一緒の16kHz(62.5us)にしていたのですが、16kHzは若者に不快な音として聞こえてしまうとのことで、PWMの搬送波を倍の32kHzにしました。具体的には、割り込み周期を32kHzにして、2回に一回だけ、PWMの値を変更することで、再生は16KHzのままです。こうすると、停止時のノイズも32kHzで、若者の耳も20kHz程度までしか聞こえないので、うちの若者(7歳?)に聞かせてみましたが、ピー音聞こえないとのことでOKでした。
その時の停止時のPWM波形です。
30usぐらいの周期の波形ですから32KHzの高周波が出ているはずですが、人間には痛くもかゆくもありません。たぶん。
スケッチはこちら。
EL102スケッチ(EL102bスケッチも多分一緒)の時です。
1メモリ10usですが、確かに60us周期のノイズが出ています。
で、どうしようか、寝ないで考えました。(嘘です)
今までPWMの搬送波をサンプリング周波数と一緒の16kHz(62.5us)にしていたのですが、16kHzは若者に不快な音として聞こえてしまうとのことで、PWMの搬送波を倍の32kHzにしました。具体的には、割り込み周期を32kHzにして、2回に一回だけ、PWMの値を変更することで、再生は16KHzのままです。こうすると、停止時のノイズも32kHzで、若者の耳も20kHz程度までしか聞こえないので、うちの若者(7歳?)に聞かせてみましたが、ピー音聞こえないとのことでOKでした。
その時の停止時のPWM波形です。
30usぐらいの周期の波形ですから32KHzの高周波が出ているはずですが、人間には痛くもかゆくもありません。たぶん。
スケッチはこちら。