8枚の基板が何重にもラップにくるまれて出てきた。いやいや、これから忙しくなるぞ。今度の懸案は、新しいフォンジャックである。とるものもとりあえず沢山買って来てある現物をつけてみる。いや、端子がカーブしているからだ。ペンチで少し戻して慎重に入れていく。位置決め用のホールもピッタリだ。他はすべて前の部品なので今度の基板はこれで大丈夫だ。組み立てに必要なリソースはすべて揃った。残る懸案は、これが予定したとおりケースに収まるかどうかである。間違えていた(1/23/10)早速、組み立てにかかる。今度の基板は、表裏をひっくりかえし、LCDパネルのある表側はハンダ面である。電池フォルダーを新設したので高さを確保するためだ。ケースがスケルトンなのにハンダ面が上に来て、折角のパーツが表から見えなくなって少しさびしいが、これまでの、ケースに電池接点基板を接着剤で固定する方法は、位置決め、接着の確認に時間がかかる上、とても神経を遣う。プレーヤーの量産のためには眼をつぶるしかない。それに高さが生まれたので低音増強のための200μFの大型パスコンが入れられる。例によって表面実装部品からハンダ付けしていく。LCDは裏側につくのでピンの位置も逆になっている。タクトスイッチも逆だが、これは左右対称なのでスイッチの順番を変えただけで問題ない。充電中を表示するLEDもハンダ面につける。LCDをつけようとピンを確認した時、とんでもない誤りに気がついた。裏につけるためLCDのピンアサインは逆にしたが、ピンヘッダーの位置は替えていない。あ、あ、もしかしてLCDの位置がおかしいか。LCDモジュールのピン位置は基板に対して左右対称でない。逆につけられたLCDはケースから横にはみ出してしまった。発注する前から、基板を裏返しにした時の対応に何か抜けているのがあるかどうかどうも不安だった。これではケースに入らない。同じ基板が8枚もある。頭から血が引いていく。これからどうしたら良いか。気を取り直して、状況を調べる。はみ出した幅は、数ミリだ。液晶部分までは行っていない。LCDの基板部分を切り取れば入るかもしれない。おおお、はみ出ている部分は、このLCDモジュールで使っていないバックライトの配線部分だ。何やら横にチップ抵抗が乗っているが、そもそもバックライトがないのでこれを切り取っても本体に影響しない。サーキュラーソーを買ったので、基板を数ミリ幅で切り出すことはそう難しくない。これはなんとかなりそうだぞ。粉がかからないように液晶面をビニールでラップし、慎重にセットする。刃は基板切り出し用のダイヤモンド研磨刃である。あっというまの作業である。液晶部分についた削り粉を刷毛で慎重に除去する。切り口もきれいで、何の問題もない。問題なくケースに入る。勢い込んで、手持ちのLCD全部を一緒に切り取る。いやいや俺もついている男である。液晶が載っている基板の横を数ミリ幅で切り取るなど、手でやることはほぼ不可能に近い。やすりで根気良く削れば出来るかもしれないが、削っているうちに部品を壊してしまう恐れが強い。サーキュラーソーを買っておいて本当に良かった。何事もなく動いた(1/25/10)プリント基板のハンダ付けはいつもながら楽しい。プラモデルのように眼に見えて形になっていくのでつい夢中になる。号機は日曜半日の作業で完成した。ケースの加工をミニルーターで手早くすませてケースに入れてみる。これまで使っていたタクトスイッチの背が高すぎるのでこれは買い直す必要があるが、あとは順調だ。LRCKのジャンパーは最初に済ませてある。待ちきれなくなって、スイッチ部分も仮配線し、通電する。あれ、ボリュームが逆だ。ここにもバグがあった。配線図を見たが、このボリュームは逆配線が出来ないことがわかった(2連抵抗の一方がコモンになっている)。このボリュームは部品面におかないと通常の左->小、右->大の状態にはならない。それほど致命的なミスではない。仕事の帰り、久しぶりに秋葉の千石によって適当な高さのタクトスイッチを調達する。ついでに秋月で、不足している3.3Vのレギュレーターを補充した。今度のプレーヤーは50mA程度しか消費しない。秋月で新しく出た、150mAの低ドロップ型のレギュレーターをこの先の量産用に入手した。いつもの500mAに較べれば半額だ。帰宅して最後の作業である。用心して小さい穴をまず明けておき、カッターで広げる。ぴったりの穴が空いた。養生のテープをはがして、LCDの保護フィルムもとり、すべてを組み立てて、試聴する。ハンダ面のスケルトンも、まあこれはこれで趣のある感じがする。1台目が完成して、残りの生産の見通しが立った。2号機のような作業面での難しさはない。単純な作業の組み合わせで出来るはずである。別のプロジェクトを立てる余裕が出てきた。フォトフレームかなあ。液晶フォトフレームが安売りされているのを発見して少しがっくりしているところだ。ここに、ハードでLRCKをトグルするバージョンV41のソースコードと、EAGLEの基板、回路ファイルをzipにかためたものを置きます。EAGLEのファイルは、上記の問題を解決したデータになっていますが、動作確認はしておりません。そのおつもりでお使いください。ソースコードはAVRstudioの形で、プロジェクトファイル名が前と変わっていないので注意してください。WMPで作成したWAVファイルも再生するバージョンをV42として置きます。以下のV41,V42版は、LRがpauseや再生中止のあと逆転するバグがあります。最近の記事にアップロードしたV43をお使い下さい(3/17/2013)「mLPCM328V41.zip」をダウンロード「mLPCM328V42.zip」をダウンロード要望があったので、パラレルLCDを使った1号機のソースコードを下に置きます。形式はこれまでと同じAVRstudioのプロジェクトファイルです(2/6/10)。下のV42も上のV42と同じです。「AVR」カテゴリの記事ソフトI2Cはクロックストレッチまで手を出してあえなく沈没(2017.09.02)オシロのテストどころかソフト開発で大はまり(2017.07.26)超音波方式の人感センサーI2C化と新しいオシロ(2017.06.29)motionの動体検知はRaspi3の電源が安定しない(2017.04.16)赤外線学習リモコンはデータ再現で挫折したまま進まず(2016.07.21)コメントがた老さん、どうもです。SDのアクセスは、奥が深いです。MCUが高機能でもSPIの場合は、大丈夫とは言えない場合が多々あります(SDIOでも色々あるようで、ねむいさんが苦労されておられます)。実際、mbedで経験しましたが、SPI(SSP)のクロックは、48MHzまで上げられますが、手持ちの☆ボードオレンジカードのSDですと、残念ながら12MHzが限界でした。それ以上のクロックですと、SDの認識をしなくなりました。12MHzでも、メディアによっては、アンダーフローを起こしました(44.1kHz/16bit/stereoのwav音源で)。実際のところ、高速のMCUを使用するときは、SDとマイコンとの配線は極力短くする。プルアップ(ダウン)抵抗をきっちりと入れる。SDの電源には、コイルを入れる(これは、バッファアンダーフローとは、直接関係ないですけど)等の工夫も必要です。それでも、最終的にはメディア自体の底力になると思います。蛇足ですが、ベンチマークをすると、SDによって、かなりの差があることが判ります。00時13分こんばんは、がた老です。n_piezoさん、度々のご報告ありがとうございます。shuji009さん、補足説明ありがとうございました。クロック20MhzのAVRでなく、クロック72MhzあたりのSTM32を使えば、バッファーのアンダーランを心配する必要はなく安いSDカードでも使えそうですね。23時17分shuji009さんコメントありがとうございます。実はノイズが出るのはTDK製で、その後、追加で買ってノイズがないのが東芝製で、正にご指摘どおりです。いずれもクラス4で、¥600〜¥800程度の安物です。TDKのノイズは20〜30秒毎に発生しているように思えます。23時06分n_piezoさん、はじめまして。ところどころでブツ、ボソッという感じ>でランダムにノイズが出ます。曲の同じところで発生>することと、別のカードでは改善することから、>SDカードの欠損と思われます。ブツ、ボソッという音の原因は、バッファ・アンダーフローによるものと思われます。SDの個体差によって、読む速度が遅くて発生します。SDカードを選んで、速い速度の物にする必要があります。(SDカードの欠損だと読込みエラーが出ますので、パソコンでコピーしてみれば判断できます。ものが速いのですが、保証はできません。SDカードのフォーマットは、専用ソフトを使う方が良いようです。パソコンの標準フォーマットをしない方がいいです。00時42分がた老様n_piezoです。LR逆転の件についてはありがとうございました。あれから3号機を据え置きタイプとして検討しており、かなりの結果が得られましたので報告します。この3号機の開発コンセプトであるジッタレスのワードデータはかなりの音質ポテンシャルがあることが証明できたと思います。1.音オーケストラを聴きますと、いままで気がつかなかった音が聴こえ、別の楽器がかぶせているのも分かります。弦楽器でもコントラバスやチェロの低音域の分離も明確になり、各パートの奥行感や音色というのかツヤが感じられます。3号機の特徴は、やはりその分解能ではないでしょうか!また大音量のときのエネルギー密度はすごいです。歪が無いせいか、音が大きくても耳障り感がなく、少し古い録音のソフトも聴きやすくなります。SDカードによるものか、ところどころでブツ、ボソッという感じでランダムにノイズが出ます。曲の同じところで発生することと、別のカードでは改善することから、SDカードの欠損と思われます。2.改造概要DAコンバータにはバーブラウンのPCM1795を使用しました。アップサンプリングしています。サンプルレートコンバータは、シーラスロジックのCS8421を使用しました。PCM1795、CS8421いずれもシステムクロックが必要となるので、ジッタレスのLRCKから512fsのシステムCLK(SCK)をシーラスロジックのCS2300CPというPLL_ICにより作成しました。変化しないので低ジッタになっていると思います。PCM1795以降のアナログ部は、かなり音に影響しますが電流帰還アンプをディスクリートで作製しています。今回のバグ対策をしていただき、おかげさまで毎日至福の音楽を聞くことができるようになりました。させていただきました。アップいただいたソースでLR逆転が修正されていたことは言うまでもありません。対応いただき本当にありがとうございました。最新記事を読ませていただき、申し訳ないと思いましたのは、ソフト確認用に音源データまで作成いただいていたことです。私自身も動作確認する際、チェック用の音源データをリッピングしており、更にTrack毎の動作を短時間に確認するための編集データまで作成していました。先のコメントの際にも、これらのデータを送付を申し出たほうが良いかとも思いましたが、それは逆に修正を強要することにもなると思い留めました。結果的に、がた老様のデバックに手間を掛けさせてしまった事をお許しください。先のコメントにも記述しましたが、この3号機をベースに性能向上を検討中です。何らかの成果が得られましたら連絡させていただきたいと思います。ありがとうございました。22時36分>n_piezoさん、出だしの逆転もやっぱりソフトが原因でした。最新記事(3/17/2013)に顛末とバグを修正したソースをアップしました。ご参考にしてください。n_piezoさんの指摘で、ソフトの質が高くなっていきます。ありがとうございました。>そらさん、いつもコメントありがとうございます。記事にありますようにごまかしました(笑)。17時04分タイマ0割込み処理の139行目の判定はLRCKの状態を判定してLRデータを振り分けている処理ではないですね。すると、LRCKは一時停止や曲ごとに直前の状態から始まるからLRが入れ替わることがありそうですね。コメント先を間違えたかもしれません。間違っている方のコメントを消しておいて下さい。