MobileHackerz
HOME > ウェアラブル奮闘日記:2003/08


2003/08/20

10日もお休みしています(;´Д`)
仕事がひとつの山場を迎えていて、時間というより気力残がピンチ状態…(とほほ〜
そんななか、いしかわきょーすけさんが日記で紹介してくれたみたいです。ありがたや〜
新規に報告できるような進捗はないですが、ちょっと元気付けられました。明日は少しでも作業しよっと。





2003/08/11

コンソール画面 昨日に引き続きBluetoothプロトコルスタック書き。メイン処理タスクとHCI受信タスクを分けて、SCIの送受信はきちんと送受信ともに割り込みで。さらにL2CAPも別タスクに…と、かなり「ちゃんとした」ツクリで書き始めたのはいいのですが…。

一応現在リセット→ボーレート変更(7.37MHzでは57600bpsはかなりつらいのでEricsson独自コマンドで19200bpsへ)→初期化、でInquiryに反応するところまでは確認しました。他の機器からのコネクション要求も届きますし、コネクションの確立もできます。(L2CAPが未実装なのでこの先へは行きませんが。)
が、タスクをわけたりバッファをきちんと取ったりタスク間通信をちゃんとやったりしたため、(わかっちゃいたが)この段階で早くもRAMの使用量が4KBに届こうかという勢いです(笑)
今使っているのはIrGEARなH8S/2134ボードなので、きちんとバスを設定してやれば外部SRAMも使えるためまだまだ余裕はあります。そう、この余裕があるからこそH8S/2134ボードを選択したのだし、こういう「ちゃんとした」コーディングをした…のです。

が、この余裕を使いはじめるともうH8/3664などには戻れません

いやー、わかっちゃいるんですが…。どうも、今の状態でしばらくまわしているといきなりCPUボードがリブートするという現象も散見されて(これがOSの移植ミスによるものか、いろいろ基板をいじくりまわした末のハードウェア障害なのかは不明)、ちょっとこのまま突っ走るのには微妙な不安感があるのも確かです。
迷ってます、迷ってます…。このまま俺スタックをμiTRONできっちり書くか、H8/3664でお手軽スタック(いしかわきょーすけさんのbluemeとか)に逃げて適当に機械をでっち上げるか、どっちが良いのか……

まぁ、長くいじって遊ぶのなら断然「俺スタック」なのですが…。他にもやりたいことたくさんあるしなあ。





2003/08/10

今日はちょこっとだけ時間があったので、IrGEAR for KEITAI基板(H8S/2134)+Bluetoothモジュールのコードをちょっと書きました。
μiTRON(HOS)ベースに、リングバッファのシリアル送受信関数、HCI受信タスクとHCI送信関数をへろっと書いたところで終了。
先は長い…




2003/08/07

MAX+PLUS2
ふえーん、ほんと忙しい…

DesignWave付録のCPLD、基板とダウンロードケーブルまで作ったのはいいものの開発環境がそろわなくてちょっと途方に暮れてました。
MAX+PLUS II BASELINEだけだとAHDLしか使えないし、かといって雑誌で解説されていたLeonardoSpectrumはOEM契約が切れてしまったらしく新規のライセンス発行を行っていないし、やはりAlteraからダウンロードできるQuartus II Web EditionはMAX7000A(付録についていたCPLD)に対応していないし…
というより、付録についていたCPLD(MAX7000A)そのものが廃品種だったらしく(在庫処分!?)、新しいツールはのきなみ対応していなかったり。で、対応しているツールは入手不可。うぉぉ、こりゃまたどうしろと!?

…で、いろいろ試行錯誤してみたところ、次の手順で開発可能なことを確認しました。

  1. MAX+PLUS II BASELINEをダウンロード・インストール。(ライセンスを発行してもらうのも忘れずに)
  2. MAX+PLUS II Advanced Synthesis Software をダウンロード・インストール。(新たなライセンスファイルは不要)
  3. MAX+PLUS II環境をセットアップ(ライセンスの設定など)
  4. Advanced Synthesisを起動し、新規プロジェクトを作成。デバイスはMAX7000AEに設定(Assign→Family and Synthesis Settings...)。
  5. VHDLファイルをプロジェクトに追加(Assign→Add/Remove HDL File(s))、コンパイルしてみる(Start MAX+PLUS II Advanced Synthesis)
  6. 次にAdvanced SynthesisからMAX+PLUS II Managerを起動する(Start MAX+PLUS II Manager)
  7. MAX+PLUS II Managerで一旦Compilerウインドウを開き、[Start]ボタンを押す(コンパイルを一度行う)
  8. プロジェクト名.acfというファイルができるので、これをテキストエディタで開き、その中から
    CHIP プロジェクト名
    BEGIN
    DEVICE = EPM7256ATC100-10;
    END;
    のような記述を見つけ、DEVICEの内容を上記のように(DesignWave付録CPLDと同じチップ名に)。また、
    [GLOBAL_PROJECT_SYNTHESIS_ASSIGNMENT_OPTION]
     :
    DEVICE_FAMILY = MAX7000A
     :
    のような記述を見つけ、DEVICE_FAMILYを上記のように変更し、保存する。
  9. MAX+PLUS II Managerを一旦終了する
以上の操作で、VHDLからシミュレーションからデバイスの書き込みまで一環した操作で可能になる…はず、です。

と、こんな感じで今日はおしまい。うー、全然進まない…。



……次は5万ゲート相当のFPGA搭載基板ですかっ。うーん、また数冊買っておこうかなぁ。




2003/08/03

参考書 最近ほんと週末忙しくて(機械いぢりで)遊ぶ暇がありません…(;´д⊂)
というわけで、本だけ買ってお勉強タイム(本読むだけなら出先でもできるし)。うちの近所の本屋は、なんと嬉しいことに「CQ出版社コーナー」なんて専門コーナーが用意されていたりするので、CPLD/HDLの入門書には困らなかったりします。すげえぜ。

買った本は次の通り: さすがにDesignWaveのCPLD基板が付録についていた号はもう在庫がありませんでした(つつき始めたところで「あぁ、もう一冊くらい欲しいなぁ」と思ったんですが…)。でもまた基板が付録に付くらしいですね。楽しみ〜♪
で、ざっと読んだ感じでは、「設計スタートアップ」と2001年1月号特集は中身がほとんど同じだった(とほほ…)のと、「HDLによる〜」は、ソフト屋の自分にはかなりとっつきやすくわかりやすかったという感想を持ちました。あとは試行錯誤しつつ遊んでみるだけですな。(時間無いけど。)




2003/08/01

CPLD というわけでテストしました。
デザインウェーブの付録についてたモジュールに書き込みコネクタと電源(3.3V三端子レギュレータ)だけつけたごくごくシンプルな基板を作ります。 (しかしこれだけでも結構時間が…GNDと電源こんなに配線しなきゃいけないのかっ(笑)) で、雑誌に載ってたサンプルをそのまま書き込み…おお、動いた動いた。
とりあえずボタンとLEDだけつけて、ボタンを押すとLEDが点く、というなんともあたりまえの現象を見ながらおおはしゃぎ。

となったら次はいざ自分で回路設計…となるわけですが、雑誌で解説されていた論理合成ツールは既に無く(配布元の会社がOEM契約切れてしまったので現在は配布を行っていない)、初めて触る世界でちんぷんかんぷん状態の私には、まだ遠い試行錯誤の道が待っているのでした…。

っていうか、Bluetoothもやりたいし、CPLDもやりたいし、Gameboy Advanceの改造もやりたいし、WRISTOMOまわりのサイト更新もやりたいし(まだ書きあがってない項目がたくさんあるよ〜)…
その一方で週末の予定はギッシリで仕事も忙しくって時間は全然無かったりするあたりどうにもこうにもタマラないですな。とっほっほ。

割れたファン 余談。自宅メインサーバが最近なんかカラカラ音するなー、と思って開けてみたら、12cmケースファンが割れてました。うーん、ファンがこういう壊れ方したのは初めて見た…。安物は使っちゃいかんってことですかね(^^;













管理人へのメールについてはこちら
MobileHackerz - It is not cracking but happy hacking!