2011-05-01から1ヶ月間の記事一覧

LPCxpressoの使い道

ES9018制御は結局AVRでやって、LEDチカチカ以外放置してたLPCxpressoに使い道が! PLLクロックジェネレータの代わりにクロックを生成するお仕事。

アレゲ過眠

15時間ぐらい寝てしまった。

気になって改変中

制御ソフトウェアを書き換え中。 フィルタの種類で、4文字も使うのはもったいないと考え、なんでこうしたか思い返してみたら、 初めはSharpとSlowと表示するつもりだったので、ShとSlじゃ何が何だかわからない →全部表示させよう →途中でSharpがFastになる(…

LTC4311

今回のI2Cシステム用に試してみたアクセラレータ。 LTC4311 データシートおよび製品情報 | アナログ・デバイセズ 内部に、コンパレータ+容量負荷充電用定電流プルアップが入っていて、バスの立ち上がりを検知すると定電流で充電して立ち上がり速度を速める。…

ADuM2250

今回使ったI2CアイソレータADuM2250は2ch(データ,クロック)ともに両方向伝播特性があるタイプだったが、DAC基板上のATTINYがクロックを操作していたのが伝わって、結果的によかった。 ADuM2251だったらハマっていたかも。 そして、さんざん気にしていた閾値…

小変更

デバッグ用のハートビートとI2Cレジスタ参照を無効化 ゲイン表示を10進数にして、範囲を0〜-99dBに限定(まだ過剰) スイッチ一回あたりのゲイン変化量を±5dB,±2dB,±0.5dB単位に変更 ゼロサプレス10進表示実装 I2Cバス使用後にハブの設定マスクを00にしてバス…

Buffalo AVRの設定値

読んでみて、標準との差分で、だいたいのところは理解した。 入力を束ねたために、内部でデータのルーティングを行っている。 モノモード時に組み合わせるI/Vステージの都合で片方のチャンネルを反転させている(左右対称になるようにL時とR時で反転している…

ボリュームのUI

ボリュームはやはり回転型の方が良いような気もする。 可変抵抗はADCが動作し続けることと、長期安定性の点で嫌いなので、ロータリーエンコーダか。

スイッチの感触

トグルスイッチはいいな! ただ、今使っているNKK B型よりも、もう少し大きなM2型のほうが感触が良い印象だった。 2.54mmピッチじゃなかったので、B型にしたが、基板を起こすときはM2を使ってみよう。

ボリューム&フィルタ切り替え機能実装

レジスタの設定方法がわかったので、実装してみた。 ディジタルボリュームとフィルタの特性切り替えを右側のスイッチ&LEDディスプレイに実装。 表示は、4文字の英文がフィルタ特性(Fast/Slow)、数字がボリューム。 ただ、ボリュームは手抜きで16進数そのまま…

USI使用のTWI(I2C)

TinyAVRでTWIを実現する方法に興味が出たので調べてみた。 ソフトウェアで実現する USIを使って実現する の2種類。 ソフトウェアはその通り、全部の制御をソフトでやる方法。I2Cはクロックを伸ばすことでハンドシェイク的に動作できるので、ソフトでも十分間…

Buffalo III

I2Cで参考にさせてもらったHIFIDUINO氏(?)のBlogで、Buffalo IIIという次世代のBaffaloの情報が出ていた。 Buffalo III DAC | H i F i D U I N O 詳細はリンク先にあるが、興味を惹かれるのは、8ch動作も可能になっている構成になったこと。 Buffalo IIは4c…

レジスタダンプ完了

レジスタ値の読み出しに成功したので、設定用のATTINY85を両方とも外した。 レジスタ地を読みだしている最中にES9018のネイティブ値を読みだしたときに比べ、ずいぶん遅いと思っていたが、ATTINYを外したら早くなった。 クロックの延長でもしてるのかな? 値…

値ダンプ中

Buffalo IIの標準設定用AVRで設定される、DIPスイッチごとのレジスタ値をI2C経由でダンプしてどういう設定になってるか確認中。 DIPスイッチは4Bitでそのままだと16通りだが、レジスタの意味は既知なので、chの設定でStereo/Mono(Left/Right)とFIRフィルタ設…

ARMになる

ARM関係を調べていた時に見つけた興味深い記事。 http://eetimes.jp/column/3874 http://eetimes.jp/content/3650 http://eetimes.jp/content/3681 http://eetimes.jp/content/3695 まあ、ARM最高や!っていう記事なんだが、情報として興味深い。 特に興味深…

I2C通信成功

とりあえず、動いたっぽい。 制御用のATinyを引っこ抜いた状態で、データシートの初期値が出ていることを確認。 書き込みのほうも、制御用のATTinyがついている状態では働かなかったデジタルボリュームが働くようになり、ミュートできることを確認した。 読…

ディスプレイ方式

LED方式はやっぱり良いと実感しつつも、デバッグにはちょっと情報量が少ない。 値をダンプしつつ、デバッグ中(Flashの寿命は諦める)。

I2C通信失敗中

AVRのI2Cモジュールを使って通信を行っているが、問題発生中。 AVRのTWIは内部状態+TWCRレジスタの値で動作するが、内部状態を書き換えることができない。 で、SLA+Rを送信すると、そのシーケンス内では受信しかできない。 データシートを読んだところ、デバ…

備忘録

Buffaloから外したATTinyは机の1番目の引き出しに入れてある。 8Pinのソケットがないか探す。 やっぱり具体例として、Buffaloのディップスイッチでどういう風に切り替わるかレジスタを見てみよう。 パターンが多いので、表にまとめて。

リセット直後のレジスタリード

ボリュームが動作したことに気をよくして、レジスタの値を読みだすプログラムを作成して、リセット直後のレジスタ値を読みだすプログラムを作成し、実行してみた。 結果、データシートとの照合が取れたので、とりあえず読み出しはうまく動いているっぽい。 …

現状

レジスタ読み出し成功した時点での写真。 LEDディスプレイ上は、上2桁が生存確認用のハートビート代わりのカウントアップ、中間12桁がI2Cのステータス表示(2桁毎)、下2桁がハードコーディングされたレジスタアドレスから読み出したデータ。 表示されている、…

I2Cドライバ仕様修正

I2CドライバもSPI LEDディスプレイドライバと同じように、 I2Cを使用するタスク→I2C API→(キュー)→I2C H/W制御タスク という構成で書いていたが、以下の問題で挫折。 LEDディスプレイしかつながっていないSPIと違ってI2Cには複数の機器がつながっている 機器…

退廃スクラッチ&ビルド

結局I2C周りの回路とドライバを手直ししていたらこんな時間に。 少し寝るか…

GPIO

LPC1769を試していて、地味に便利だなと思ったのがGPIO。 方向(DDR)/値(PIN)のほかに、セットとクリアがある。 1を書き込んだところがセット/クリアされるので、Read-while-writeを行わなくてもOK。 AVRは命令で1ビット単位で同じことができるが、C言語から…

I2Cドライバ作成中

AVRのI2Cのドライバ作成中。 SPIと違って速度が遅いので、割り込みドリブンで書こうと思ったが微妙に問題が。 AVRのI2Cモジュール(TWIインターフェース)のイベント割り込みビット(TWINT)は他の割り込みビットと違い、割り込みルーチンに入っても"クリアされ…

I2C動作

ポーリング版完成、妙なところでハマってドライバが無限ループで暴走し動作しなくなったが、それ以外のタスクは普通に動いているあたり、プリエンティブ型OSの実力が確認できた。 というわけでハマったポイントは、I2Cアドレス+R/Wフラグを作る部分で、 7ビ…

AVR スリープモード時のタイマ2の仕様

ピン変化割り込みのあたりから鬼門のAVRのスリープモード。 タイマ2はほかの周辺機器とスリープ時のクロック制御が独立していて、ほかの周辺機器が停止しているときでも動作および割り込み生成ができる。 非同期クロックを使用している場合は、Power-Saveモ…

RTC用水晶の起動時間

昨日動くようにした非同期用32768Hz水晶だが、起動時間が少し気になる。 FreeRTOSの初期化も含め、起動してLEDに文字が出るまでに目視で1〜2秒程度かかっている。 AVR内蔵のRC発振器を使っていた時は電源投入の瞬間に起動していたので、多少気になる。 SLEEP…

コマンドー発売

auから正式に発表されたらしい。 タフネススマートフォン G'zOne IS11CA、auから登場 - Engadget 日本版 日本仕様の中身+デザイン小変更? 上下対称なVerizon版デザイン+カラーのほうが好きだなあ。 実物が出たら見に行ってみよう。

ARM+FPGA

Xilinxの奴も調べてみた。 zynq-7000というらしい。 http://japan.xilinx.com/products/silicon-devices/epp/zynq-7000/index.htm Cortex-A9のデュアル(800MHz)に、PCIeなどのギガビットトランシーバ、ASIC換算で最大3.5Mゲート分のFPGAを搭載する化け物。 S…