2012年2月23日木曜日

ADS1102CALを買ってみた

オシロスコープを海の向こうの隣国から買ってみた記録。Attenなどという聞いことも無いメーカーさんの、ADS1102CALというやつ。まぁ、デュアルチャネルで、USBメモリへの保存もできるから、無いよりかは格段に作業効率が上がるはず。
年明け早々の1月2日にオーダー。で、1月8日に発送。以降DHLさんが頑張る。
中国→香港→日本ですね。で、国内は佐川が持ってきました。そういえば、国内に入ったところでDHLから中身の確認があった。通関を通すためだってね。で、その時に「時間帯指定できますか?」と聞いたら、「私の業務じゃないから、カスタマセンターに電話してね」と。で、通関通ったのを確認したあたりで電話。荷物番号伝えると「確認しまーす。。。その荷物は、佐川に受け渡したよ。こちらから佐川に連絡できるけど、どうする?」「佐川の荷物番号教えて」ということで佐川的な荷物番号をゲット。あとは、普通の宅配便と同じ。帰宅後を指定して届けてもらいました。というわけでドーンッ!!
怪しい黒いビニールに包まれていた。
でビリビリとビニールを剥してみると、、、そこには、オシロの箱が。うしし。って、一緒に買ったものは、どこ?超音波センサとジャンプワイヤ買ったんだけどなー。別便なのかなー。そんな連絡何もないし。って、見てみるとオシロの箱が開いておる。まさか。。。
いたっ!!って、オシロ開けたんかい!!仮にも計測機器でっせ。。。まぁ、全ての品が無事届いたから良しとしよう。

LPCXpresso IDEでアセンブラ単位のステップ実行

いつもどおりデバッグを始めるよね。
で、デバッグビューのツールバーには、ステップインとステップオーバーがある。ステップインは、関数内に入る。
ステップオーバーは、関数内を実行してしまい、次の行に進む。
まぁ、ここら辺までは、良いよね。でもさ、OSとかのデバッグとか、インラインアセンブラで書いた部分をデバッグしようとすると、これだと事足りないわけですよ。C言語で書いたプログラムをディスアセンブルしたものの機械語を一つずつステップ実行したいとかなるわけです。そこで、コレ。
押してみると、ビューが変わる。
ディスアセンブルしたものが見えてますね。このままステップオーバーすると、
おぉ。これぞまさに1ステップ!! そんなわけで、アセンブラ1行ずつをステップ実行する方法でした。

2012年2月21日火曜日

MacでLPCXpresso使いたいのだー。

LPCXpressoの開発をVirtualMachine上でやってみた。 Mac向けの環境が無いんだからしょうがない。 Linuxでは動くので、VirtualBox上でDebianを動かして、そこでやってみた。
  1. VirtualBoxのインストール
  2. Debianのインストール
  3. LPCXpresso-IDEのインストール
ここまでは、普通に済ませる。OSがネイティブに動いているのであれば、ここでLPC-Linkを挿してバリバリ開発になるのだが、今回はVirtualMachine上で動くDebianにUSBデバイス(LPC-Link)をパイプしてあげないといけない。以下、その手順。 まずは、LPC-Linkを挿してフィルタに追加する。 設定画面のポート→USBを選択して、「+」のアイコンをクリックする。。。
LPC-Linkが挿さっていれば「不明なデバイス 0471:DF55」がリストされるので選択する。
これで、LPC-Linkを挿したときに自動でゲストOSから見えるようになる。 見えてますよね。の確認は、こんな感じ。
さて、これで、いざ開発!!といきたいところだが、そうもいかない。 LPC-Linkは、接続された直後はDFUデバイスになっていて、そこにデバッガファームを書き込んでからでないと使えない。 で、デバッガファームを書き換えると、接続直後とは別のUSBデバイスに変身するので、そちら側も自動で仮想マシンに接続するように設定してあげないといけないわけだ。 というわけで、ここでLPC-Linkに変身してもらう。詳しくは、 ここら辺。
もう一度、USBデバイスの設定をする。仮想マシンの設定を開いて、
USBデバイスを選択する。
上記コマンドが正しく処理されていれば、以下のように「Code Red Technologies LPC-Link Probe v1.1」なんてのがいるので、こいつを選択すればOK。
ここまでの設定で、以下のように2つのデバイスがエントリされていれば、OK。
ここで、LPC-LinkをDFUデバイスとして認識させるために抜いてしまう。ちゃんと設定できていれば、LPC-Linkを接続したところで自動的に仮想マシンに繋がるので、あとはIDEでリアル環境と同じように使えますよ。