アクセスランキング
ホーム   »  
 | 

ヨドバシで万引き・・・


今思い出してみると、とても怪しいことを言ってたなぁと思います。
→全文を読む


第85回 ル・マン24時間レース


うーん、トヨタ残念な結果でした…。
→全文を読む


桜(ソメイヨシノ)と樒(シキミ)の挿し木


家の桜が100歳くらいの老木なので、挿し木で株を増やそうと思います。
10年くらいたって花が咲いたら感動です!
あと仕事柄シキミも必要なので増やしてみます。
→全文を読む


スピコンケーブルの修理中


PAの仕事があり機材チェックをしているとコネクタがもげてるケーブルがあったので修理中です。
→全文を読む


2017年インディ500 佐藤琢磨優勝!!


すごい! 何度見ても興奮!! 5周よく守り切ったよー!!! 
見てるだけで心臓ドキドキ手汗すごいわ。でも・・・
→全文を読む


R8C/M12Aでファミコン音源の実装



ルネサスのマイコン「R8C/M12A」でファミコン音源の実装を試みました。

「ファミコンなんて昔の8bitコンピュータだから余裕っしょ」

と考えていたら甘かった。。
ファミコンすごいわ。

最初はDDS(Direct Digital Synthesizer)を作り出したけれどフィルターがうまくいかなくてファミコンってどんなフィルター持ってるんだろうと調べたらフィルター持ってないことが分かりどーやってあんなに色んな音色を作り出しているのか気になって作ることになりました。

y[i] = y[i-1] + m * (x[i] - y[i-1])
この簡単なローパス・フィルタをうまく動かせないー

アナログシンセを作るにあたって自分が一番めんどいなーと思うのはオシレータのチューニング。なのでJUNO-106にならいオシレータはデジタルでDCOにすればいいかとR8C/M12Aでやってみたら意外に簡単にできたのでじゃあ1チップシンセにしてしまえーとやりだしたら三角関数が使えないわ小数使えないわで壁にぶち当たってます。

カットオフとレゾナンスは必須っす。

話は戻りファミコン音源。サンプル周波数32kHzでパルス派2個、三角波1個、ノイズ1個の計4個波形を生成しようと試みたけれど、クロックが20MHzの場合割り込み間隔が625クロックしかなくて生成が間に合わず(多分…)、16kHzに変更。でもそうするとPWMの幅を決める値がアバウトになりすぎてかなーり音痴になってしまう。じつは32kHzでも気にすれば気になるくらいのずれがあった。16kHzにして処理が間に合っても音痴では使いものにならない。

とゆーわけで考えた仕様がこれ。
MIDIノート69、鍵盤番号A4、周波数440Hzの場合、割り込み回数は32.363636…となって、0.363636…の部分が音痴の原因となる。
ので1周期は32回、2周期は64回、3周期は108回 + 1.090909…回となるので3周期したら割り込み1回スルーして0.090909…を誤差とするようにした。これで大分音痴は改善された。

今回は単体でスーパーマリオを演奏するようにしたけれどやっぱりMIDI機能つけたいなー。まぁこれはまた今度。
→全文を読む






ランキング
SNS RSS
follow us in feedly


FC2カウンター