lynxeyedの電音鍵盤

MBDとFPGAと車載で使うデバイスの備忘録

2009-01-01から1年間の記事一覧

アルミMacBookの内部

年末の大掃除と称して、2008年後期に発表されたMacBook(Proが付かない13インチMacBook)のオーバーホールをしました。 結構冷却ファン周りにホコリが付いていました。 100円ショップなどで売っている絵筆とかで簡単に掃除できるのでおすすめです。で、上の写…

SSM2301を使ってみた

CypressのPWM8に関するデータシートを見ると、3.3V駆動またはグローバルバスに出力する際はPWMに供給可能なクロックは最大12MHzのようです。 従ってPWM8の場合、キャリア周波数は40kHz強という事になります。 音声領域を取り扱うには厳しい物が有りますが、…

愕然

DAC9のAPIってアセンブラですでに書いてあったのね。 ソースコードの改良もあまり効果無さそう…やめたやめたorz PSoC DesignerがOSXに対応してくれると嬉しいんだけどな。 でもPSoC Creatorが対応してくれれば文句なし。

DAC9

今回製作中のADPCMプレーヤはPWMで音声を出力する際、キャリア周波数が30kHzほどなので可聴領域に近く、LPF2を使い音声を取り出すとなると厳しいものがあります。*1したがってPSoCワンチップでシステムを構築しようとするとDACに頼らざるを得ません。…が、こ…

PSoCの最終奥義

ダイレクト録音機能に対応しました。 イヤホン端子がそのままマイク端子になります。 PSoCはダイナミックリコンフィグレーション(以下DRC)という便利な機能があるので回路構成の動的変更にDRCを使いました。 録音フォーマットはraw PCM(8bit,12kHz,mono)です…

腕マイコン

土曜なのに仕事で、到着したこいつをハンダ付けしなきゃなと ADuC7020 手ハンダ難しそう…うちの会社計測機器開発が専門ということもありアナデバのMicroConverterが好きなんですよねぇ これをハンダしたら、USB-UARTつなげてシリアルダウンローダで…うわわわ…

PC側エンコーダの修正

エンコーダの一部を修正しました。 しかし変換ロジックは変えてないので再変換の必要はありません。 相変わらずコマンドラインなので、フロントエンドを作りたいと思うのですが…なかなかそこまで時間が取れないのが現実です。使い方は以前に書いたのですがそ…

PSoC1シリーズの新顔がリリース

ET2009ではARMブースでPSoC Creatorが盛り上がっていたようですが、PSoC1シリーズもラインナップが増えましたね。 CY8C28シリーズというのが出たようです。 サイプレスの記事 アナログ周辺が強化されたようです。 フラッシュは16K。SRAMが1K。 …ということは…

計画倒れの予感(前編)

秋月で200円で売っているPSoC、CY8C24123Aでダイナミックリコンフィグレーションしてみようと思いADPCMデコーダの内部構成を2パターン用意しました。 でも、実装は無理な予感 いままでのADPCM(ver0.01f)デコーダのコンパイル結果 ROM 66% full. 2675 out of…

割り算

PSoC1だと割り算はシフト命令多用するしかないのかぁ… なんかいい方法無いのかしら…せめて多ビットのシフト命令を1サイクルでやってくれると嬉しいのだけども。

立て続けに更新

会社帰りにふと思いついたことがあり、デコードパラメータを改良してみました。 今まではC言語で10個の増分パラメータの配列を記述していました。これはiMageCraft Cで12kHz,stereoの音声を発音するのに時間的に限界のパラメータ数だったからなのですが… M8C…

バグ修正

twitterでバグの指摘を頂いたので修正しました。 【修正内容】 ファイル位置クラスタをルートディレクトリエントリから取得する際、下位8bitからしか取得しておらず、再生の挙動が不定になるバグを修正 ダウンロードはコチラから(プロジェクト全部)バージョ…

それも手だ

RAMやCPU速度が比較的遅いマイコンを使ってSDカードにデータを書き込む際にはいくつか方法があると思います。 ガチでFATを考慮してRAMとCPUリソースを大量消費して長時間掛けつつだらだら書き込み ファイルシステム完全無視、シリアルEEPROMとして書き込み …

デコード関数を全てアセンブラ化

インラインアセンブラは便利ですが、コンパイラの変換ロジックが変更されてしまうとバグの原因となるだけでなく、ソースコード自体が見づらくなります。 そこで、ADPCMデコード関数を全てアセンブラで記述し、Cからも呼び出しができる様にしてみました。(ext…

iMageCraft向けにリリースしました

CY8C24123A向けのADPCMデコーダをリリースしました。 IMAGECRAFT CはHi-TECH Cに比べて処理が低速、容量が肥大しやすいので、 main関数以外の一部をインラインアセンブラで記述しています。 main関数内のソースコード変更は差し支えないですが、main以外のサ…

iMageCraft Cのフリー版をお使いの皆様へ

iMageCraft Cだと、現状のソースだと12kHz、ステレオの再生速度に追従できないようです。対処方法を以下に示します。(iMageCraft Cのみ) インクルードファイルadpcm_ima_dvi.c(main.cと同じフォルダにある)を開いて、28行目 dlevel =… をコメントアウト 29〜…

8pinのPSoCでもFAT

秋月で200円で売っているCY8C24123Aで簡易ADPCMプレーヤを制作しているわけですが、PSoCはCY8C29x66以外のデバイスはFATライブラリが用意されていないため、各自製作する必要があります。 結局FATライブラリーをフルスクラッチビルドで導入してみました。 と…

移植完了

無事dsPICの時に書いたコードの流用で移植成功。 しかもSDをSPIMでドライブさせる際、クロック周波数12MHzでもきちんと追従できているようです。 また3.3V動作する様にCPUクロックは12MHz。 再生可能なファイルフォーマットは独自ADPCM、ステレオ12kHz 音声…

困った

29466以外のPSoCでSDカードを動かす時は自分でドライバを組む必要があります。 本ブログでは当初からR8CやMSP430などでSDをドライブさせていた訳なので問題ないはずですが…今までどうやってSDカードドライブさせてたっけ?すっかり忘れてソースコード見ても…

8ピンでも立派なSoC

言われた仕事をこなしにお茶の水へ その帰り、閉店20分前の秋月で買い物 PSoC CY8C24123 PSoC CY8C27143 I2C EEPROM(1Mbit) AT24C1024B 種類の違う8ピンPSoCを買いました。 本命はCY8C24123(値段が安い&2.4Vから駆動可能)。でもブロック数がえらく少ない…

銀河鉄道

999ですなぁ 2009/09/09 Appleが新型iPod touch出すとか出さないとか。 タッチパネルPC出すとか出さないとか。林檎への 興味は尽きません。

また散財

PIC

買ってしまいました。 dsPIC基板で始めるディジタル信号処理dsPIC基板で始めるディジタル信号処理―パソコンとこの1冊で実体験! (ディジタル信号処理シリーズ)作者: 岩田利王出版社/メーカー: CQ出版発売日: 2009/07メディア: 単行本 クリック: 5回この商品を…

京大のサマーキャンプが何やら楽しそうな事を…

2回生向けエレクトロニクスサマーキャンプ Programmable System-on-Chipを使って音の出るものを作ろうすごく面白そうです。 ワンチップマイコンは各社からさまざまなチップが発売されていますが、Cypress社のProgrammable System-on-Chip (PSoC)は、 アナロ…

sourceforge.jp

sourceforge.jpにUPしてみました。 まだまだ「玄人志向」になってる*1ので、これから充実させる予定です。 PSoCのM8コア向けですが、ARM,8086互換PSoCへの対応もしていくと思*2。 何か要望やお気づきの点がが御座いましたらメールください。http://psocvoice…

どうでもいいけれども

メインPCがMacBookになりました。 なんとも微妙なタイミングで購入したので(WWDC開催の半月前)アルミボディーのノーマルMacBookです。これからアルミボディーMacBookはProのみとなるようです。 で、PSoC DesignerがDarWineとMikuinstallerどちらを使っても動…

なんでだろ

firestorage.jpでファイルをUPしているのですがすぐ(1,2ヶ月)消されてしまいますね。 一応再アップしてみました。 今回はダウンロードが500回行われると終了になるらしいです。 どこか、おすすめの無料オンラインストレージってありませんか? 教えてくださ…

IMAGECRAFTで再スタート

リリースされて即DLしたもののコンパイルは週末に。 感想としては…無料版でここまでやったのはえらい(RAM配置がうまい) ただHi-TECHのフリー版より圧縮率はやはり悪い 今までのIMAGECRAFTとあまり変わらずといってところでしょうか。 有料版が気になりますが…

くだらないボヤキ

最近PSoCで気づいたことがあります。 自分の手元にあるコンパイラは次の2つです IMAGECRAFT C(PSoCトレーニングキット同梱のもの) Hi-TECH C lite(PD5.0 SP3aまで同梱されていたフリーコンパイラ) ご存知の通り、Hi-TECH C Liteの方がコードの圧縮は優秀です…

ADPCMデコーダ

解析ソフトとオシロスコープを使ってパラメータを調整してみました。 結構難しいですね…。 割り込みを使用すると再生スピードが追いつかないので使用していませんが、これは音程がぶれる大きな原因のようです。 デコードの過程で音声データ次第ではタイミン…

ADPCMエンコーダ、デコーダバグ修正

【PSoC側の修正】 ステレオ用のPSoC ADPCMデコーダ向けに書き直しました。アナロググラウンドを廃止し、全てグラウンドはVss共通になっております。 なお、ソースはIMAGECRAFTコンパイラ用です。Hi-Tech C Liteでもコンパイル可能ですが、再生速度が遅くなり…