忍者ブログ
カレンダー
03 2024/04 05
S M T W T F S
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
プロフィール
HN:
[-_-;] (みかん)
性別:
男性
趣味:
プログラミング、XOPS
自己紹介:
中部地方在住です。
最新コメント
[11/30 NONAME]
[11/22 NONAME]
[09/24 NONAME]
[06/10 NONAME]
[01/29 NONAME]
XOPS関連サイト「みかん箱」の運営や、OpenXOPSの開発などを行う[-_-;](みかん)のブログ。近状報告や独り言などを書きます。
Prev Month123456789101112131415161718192021222324252627282930Next Month
[PR]
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

category :
PR
音を鳴らす その2
とうとう学校が始まります。
長期休みで時間が無限大に近くあった日々とおさらばです。色々やばいですね。

久しぶりにXopsAddonCreatorに触りました。
ポイントの説明文編集機能と追加小物の表示機能を付けました。後者はかなり良い感じ。
あと、ステータスバーの制御部分の改良もしようとしましたが、面倒だったので諦めました。


前回に予告したDAコンバータで音を鳴らす件で、進展があったので書いておきます。
一応、2011年6月に書いた「音を鳴らす」の続編です。

今年2月24日にFPGAからPWMでローパスフィルタ越しに音を出せないかやっていましたが、
色々と現実的ではないようなので諦めました。
元はPSoC3のDACで音を出そうと思っていたのですが、使いものにならず(実際は後述の
通り自分が悪かった)、FPGAで力ずくでやろうとしましたが、これも駄目でした。

PSoC3のDACに再挑戦することにしたのですが、PSoC3~スピーカー(またはヘッドフォン)
の間にあるアナログ回路を確認すると、問題が見つかりました。
先にあった「電子ボリューム」の制御がコケており、音量調整がボロボロになっていたのです。
早速制御を書き直し試してみると、今までのノイズが嘘のように消え、ある程度聞いていら
れる音が再生されました。
電圧レベルをコンバートした直後に暴れますが、40KHz超えの領域ですので、後のローパス
フィルタで十分抑え込めます。
2011年の時のように別途汎用DAコンバーターを付けなくても、PSoC3 1個に集約出来ました。
マイコンなので他にも色々任せられます。さすが、Programmable SoC。恐れ入りました。
そしてPSoCさん(特にDACさん)、ゴミ扱いしてごめんなさい。


ここまでの話を淡々と読んでいると「お前、何作ってんだよ」って思うと思いますが、
まぁ・・・ね (逃げ
そんなこんなで仕上げた作品を、前夜にでっち上げた適当な資料と共に後輩に見せて
みましたが、なかなか良い反応でした。
人に見せて「おー おー」言ってもらうと、果たして自分の作ったものが無意味だったのか
考え直してしまいます。
category : 電子工作 comment [0]
SDカードの高速通信に挑戦しようかと
VC++を叩いてXopsAddonCreatorの開発をやっていたら、年を越してしまいました。
NHKの紅白歌合戦とゆく年くる年を見ながら、プログラミングをやって年越しをするのが風物詩に
なってます (え


今や1年以上前から やるとかやらないとか言っているSDカード高速通信ですが、再挑戦しようと
思っています。
作ってきたプリント基板にはSDカードスロットを搭載しているのですが、そのSDカード部の動作
テストに入ったのと、2011年8月に書いた通りSPIモード接続だと遅いからです。

現状ストレージ(記憶装置)の読み込み速度が間に合わない場合の対処法として、以下のような
ものがあります。
  1、圧縮などで通信量を削減する
  2、通信、転送速度を高速化する
  3、ストレージ自体を増やして並列化する
1が最も理想ですが、今の自分にはデータは欠落・改変が発生する不可逆圧縮のような切り捨て
しかできず、圧縮などの情報削減技術は身に付いていません。
3については個別に同期さえ取れれば簡単ですが、必要とする表面積や体積が増えコスト的にも
不利になることが多いです。
選択肢として2しか残っていませんが、幸い、基板は従来のSPIモードに限らず高速転送にも対応
できるパターン配線にしておきました。

解説資料が圧倒的に少ないこと  などを理由に、同年10月に一度諦めました。
再度調べてみると、日本語で解説してくださってる非公式ページが増えていることに加え、後は自分
の経験で補充すればなんとかなる気がします。

ただ、1つどうしても避けられない問題があります。 「使用ライセンス」です。
低速なSPIモードの接続は実質ライセンスフリーですが、高速接続はSDアソシエーションへの
ライセンス登録(有償)が必要との情報がボチボチあります。
「ロゴを使わず個人利用なら問題ない」とか「公式の細部仕様書を入手しないなら不要」とか色々
説があって良く分かりません。
えぇ、どうしましょ。。 誰か詳しい方教えてください。
category : 電子工作 comment [0]
PSoCとは何か (解説)
ついに年末です。

ここにちょくちょく書いている電子工作として、まれに「PSoC(ピーソック)」というICを使っていますが
そもそも「PSoCとは?」というのを説明していなかったので、簡単に説明したいと思います。

その前に、「マイコン」というものを説明します。
マイコンとはマイクロコントローラの略で、ICチップのような小さいコンピュータです。
電化製品・携帯電話・自動車などコンピュータが使われている製品に入っています。
そのマイコンにも、色々なメーカーが色々な物を作っています。単にメーカーや名前が違うだけでなく、
開発コンセプトや「~用」「~向け」といったターゲット市場が違ったりします。
 (色々な製薬メーカーが色々な薬を作っているようなものです)
一般的なマイコンの中身は、大きく分けると2つになります。
「MPU」と呼ばれているCPU・RAM(メインメモリー)・ROM(PCでいうHDD・SSD)という基本的な物を
構成している部分と、「周辺機能」と呼ばれるシリアル通信関係(UART・SPI・I2Cなど)やADC、DAC、
タイマー、カウンタ、っと言った機能・部分です。
後者の周辺機能は、特定の機能と数が特定の接続(バス)で固定されているのが一般的です。

PSoCとは、米・サイプレスセミコンダクタ(CYPRESS)が開発したマイコンです。
MPU部は一般的な他のマイコンと同じです。最大の特徴は「周辺機能」の柔軟性にあります。
PSoCは周辺機能を「ユーザーモジュール」という概念で取り扱っており、ユーザー(開発者)側で
自由に構成できます。アナログ信号やデジタル信号を特別な外付け回路なしに使用できるのです。
 (アナログ機能はオペアンプなどが集積されており、フィルタ回路なども搭載できます)
また、それらユーザーモジュールと呼ばれている周辺機能を、開発中のコンパイル時に限らず
動作中に機能・回路を切り替えることも可能なようです。 (私はやったことはありません)
その他の特徴として柔軟なIOポートが上げられます。
他のマイコンには「~機能を使うならココのポートのみ」っという制約があるものが多いのですが、
PSoCでは一部の例外を除いた全てのIOポートにデジタル機能を割り当てられます。
動作モードもプルアップ・プルダウン・オープンドレイン・ハイ-インピーダンスといった物から
自由に選択できます。
作成する回路に合わせて、ある程度自由にポートを決めて配線を取り回せるわけです。
category : 電子工作 comment [1]
SCCBが動かない
学校が実質連休に入りました。
やりたいことが沢山あるのですが、やらないといけないことに先に手を付けます。

学校の都合(?・なんだよそれw)で、カメラモジュールを制御しなければなりません。
適当にCMOSセンサーとしてOV7670が使われたモジュールを入手しましたが、そのカメラ
モジュールを制御するのに必要なSCCB(Serial Camera Control Bus)インターフェースに
苦戦しています。

例のFPGAにカメラモジュール直結で、各種設定をするのに必要なレジスタへの接続である
SCCBの制御も、FPGA側でワンチップで行おうとしています。
メーカーのデータシートやSCCB資料、ネット上で拾える範囲のSCCBに関するあらゆる情報
などを拾ってあれこれ試していますが、動く気配が全くありません。

一度電源を落としてリセットしても、何を入力しても、常に「HI・1」しか返ってきません。
 (データ線はモジュール側でプルアップされているので、実質応答なし。)
私の理解が間違ってなければ、手元のオシロスコープで追っかけても、FPGA側から出てくる
波形は正しく見えます。
SCCBでないビデオクロックの方に入力すると、他のタイミング出力と、映像らしきデータの
羅列(未確認)が返ってくるので、CMOSセンサー自体が壊れている路線はなさそうです。

SCCB自体はI2Cのサブセットらしいです。SPIやUARTは使ったことがありますが、I2Cとか
やったことないわけで。「動かした経験がない」というのが結構痛いです。

実は、まじめに取り組み始めたのはここ数日ですが、2・3ヶ月も前からぶつかっている
問題だったりします。 カメラモジュールから映像を取得して何かする という以前の問題で、
根本的に制御すらできていないのですから、もうお話になりません。
毎度のことですが、身の回りに この手に詳しい人がいないので、自己解決を目指します (泣
category : 電子工作 comment [0]
基板の半田付け完了
前々からやっている電子工作で、自前で設計して業者に特注で作ってもらったプリント基板
に、自前で半田付けをしていく作業ですが、なんだかんだで一通り完了しました。

既に問題が多数見つかっています。
プリント基板発注する前にブレッドボードとかシミュレータで、入念にチェック掛けておけば
良かったなー なんて言っても後の祭りです。
どうでもいい(?)ものは妥協して、根幹に繋がる深刻なものはアレコレ手直ししてます。

プリント基板を作り直す時を夢見て、問題点を忘れぬようメモしていますが、経済的? 予算的?
に(そのメモを見ながら基板を設計し直すとか)何年先の話になるのか分かりません。
そんなお金がたまる事には、今度こそ電子工作から撤退してるかもしれません。

余り関係ないですが、このブログに「電子工作ネタ」が増えてきたので、新たにカテゴリーを
作成しました。
category : 電子工作 comment [0]
[1] [2] [3] [4] [5] [6] [7]

※過去のブログ記事は 原則として編集・修正していません。
 各記事の内容は投稿時のものであり、現在では異なる場合があります。
 最新の情報は、関係する内容について書かれた 最新の記事をご覧ください。

TOP