2008-06

2008-05


H8/3048F用のモニタ

こちらからダウンロードしてください。(ページの最後尾にDOWNLOADがあります)

特徴(といってもたいしたものはない)

  • コードサイズは約6kB。
  • スタートアップと割り込みとJMPテーブル(0x100〜に置いてます) 以外は普通にC言語で書いてあるのでメンテが容易。
  • ソースからのコンパイルは h8300-elf-gcc のようなクロスコンパイラを使用します。
    • コンパイラの入手は KPIT Gnu toolsとかGCC Developer LiteでOK。
    • HEWには対応していません(すみません)移植は可能だと思いますが、HEW自体が有料なので・・・。
  • 秋月のベース基板のDipSw7番がOnのときはベース基板上のLCDの表示テストが走るようにしています。
  • シリアル(SCI1)は19200bpsで接続するようにしています。(ボーレート変更コマンドあり)

で、OpenCVはどうなった?

  • ソースを査読中
  • DirectXは使ってない。というか、メモリー上のDIBビットマップをbitbltしている以外にGUIなんてないじゃん。
  • つまり、メモリー上のDIBビットマップを単なるフレームバッファとみなしてCPU側で殴り書きするだけ?。
  • これをGUIと呼ぶのかどうか・・・。
  • べつに画像処理をやるわけじゃないので、OpenCVじゃなくてもいいか・・・。
    思案中
  • まあ、WinとLinuxの両方に共通な簡易C言語というところは気に入った。
    • アプリ側の記述はCで良い。C++である必要さえない。
    • アプリ側については、昔BASICで書いていたような気軽さで書ける。
    • ChというC言語インタープリタをサポートしたオプションもあるみたいだ。
    • CINTじゃだめなのか?Chってフリー(無料)なの?

Atom 230とCeleron、Core 2、Athlon X2を比較

http://pc.nikkeibp.co.jp/article/news/20080605/1004341/

  • (システム全体の消費電力グラフを見てくれ!)
  • 結論:
    • Atomの1.6Gは同クロックCore2の半分の性能しかない。(シングルコアでの比較)
    • それでもVIA C7をぶっちぎり(2倍以上速い)
    • 消費電力的には現在地球上(X86に限定)最速で地球に優しい。
      • むしろチップセットのほうが食ってないか?
    • AMDの駄目っぷりも手に取るように分かる。
      • AMD系システムを選ぶメリットがまるでない。ATIグラフィックス?いや、それはビデオカードを買えば良いわけで・・・。

Intelにとって望ましくないシナリオ

この図は分かりやすい。

望ましくない=

  • PC(メインストリーム)をAtomが食ってしまう。

望ましい=

  • Embedded(組み込み市場==ずばりARMのことだ)をAtomが置き換える。
  • そのために(量産能力は充分にあるが)供給を絞っているという。
  • しかし、はっきりいって、今の(そして将来の統合チップでの)Silverthone+SCH(PowerVRコア)は、nVidia TEGRAに対してすら競争力が無い。
    • (のに、さらにローパワーを要求される携帯電話系に採用するわけ無いじゃん)
  • だから、ARM市場を攻めるのは無理だ。
  • Atomのメーンターゲットは WindowsXPの軽量クライアント市場限定


  • intelだって、ほんとうはARMと戦って勝てないことくらい分かってやってるんだ。
  • 少なくとも現状ではね。
  • あと2世代くらい先でトータルコストとトータル消費電力でARMと勝負出来るようになったら、また戦況は変わるだろう。
  • 元々intelはPentiumとかCore2みたいに単一アーキテクチャーを、超大量生産するマニュファクチャーが得意。
    • それだと、上下方向に広がりを持てないのでAMDからの隙間攻撃に弱い。
    • だから、キャッシュ容量やFSBやイネーブルするCoreの数を制限しただけの同一チップを、いろいろな価格をつけて売るという商売をやっている。
  • それに対し、ARMはIPコア(知的財産)で商売をやっている。
    • intelがARMのようにAtomコアのライセンスを携帯各社やゲーム機屋(任天堂など)に販売する、なんてことは絶対にありえない。
    • AtomやCore2などは、intel以外の会社が生産できるような簡単なチップじゃないし、他社が生産出来たとしても、intelほどの量産効果が出ないので結果的に高コストになる。



ATMega88を使ってみた。

ドジ日記

  • 今回のMega88チップは、秋月で@250円で購入したもの。
  • Mega88を使うのは初めてなので、今回趣向を変えて水晶をソケットにしてみた。
  • LED Gameを改造されている人のHPからDLしたHEXを焼いていろいろ試す。
  • NICOのLED Gameって、Mega168じゃん。8k以上が入らないよー。
  • とりあえず音だけは鳴らしてみた。
    • ところが、テンポ遅いしトーン低いし、PCMノイズ出まくり。
  • 水晶を25MHzにしてもまだまだだめだ。(でも動いている)
  • 結局、FuseビットのLowのMSBが0(デフォルトのまま)であることに気づいた。
  • これが0だとシステムクロック8分周が選択される。

てっきり、1のときに8分周だとばかり思い込んでいたらしい。

  • 1にしたらやたらテンポが速くなった。
  • 内蔵RCの8MHzで、8分周をOFFにすると、正しく演奏してくれたようだ。

GINGER

これは、ATMega88(とAVR-USB)で構成されたGAINER互換デバイスだ

  • 久しぶりにAVR-USBのサイトを見に行ったら、AVR-USBが新しくなっていた。
  • クロック20MHz版のUSBドライバーが追加されている。
  • GINGERについてもAVR-USBの本家からリンクされている。
  • せっかくATMega88の汎用ボードを作っていたので、実験してみた。
    • 水晶はどこぞのソケット7マザボから引き抜いた20MHz(たぶん10BaseT用かと)。
    • gingerソースを入手。
    • AVRUSB本家の最新ドライバーを入手。
      usbconfig.hに1行追加
      #define USB_CFG_CLOCK_KHZ  20000
    • Windowsに繋いでみる。USB認識したらgainer.infを食わせる。
    • 仮想COMポートが見えたので、teratermを起動して、適当なgainerコマンドを手入力。
    • 連続入力モードにすると、HEXでポートのビットなどが流れてくる。

全てOKだ。

  • ただし、USBのD−をPORT D-bit3 に繋いでしまった(usbconfig.hも書き換えた)ので KONFIGURATIONでUSBのD−が出力設定になるようなconfigを行うとUSB側が死ぬ・・・
  • やっぱり配線図はそのままで再現させるべきだった・・・
  • gingerをATMega88テスト基板+USB接続の動作テストに使わせてもらった格好だ。
  • ROMの使用率は、こんな感じ。
    AVR Memory Usage
    ----------------
    Device: atmega88
    Program:    7136 bytes (87.1% Full)
    (.text + .data + .bootloader)
    
    Data:        777 bytes (75.9% Full)
    (.data + .bss + .noinit)
  • Mega88では少しだけ余裕。(残り1kB?)
  • 見た感じPSoC版のソースよりずっと良い感じだ

AVRUSBがやや不調

  • 現在、SiSマザーに接続されたginger(仮想COMポート)が不調だ。
  • 何故だか分からない・・・。

症状

  • USBデバイスとしての認識はOK。
  • 仮想COMポートとしても認識OK。
  • 但しteratermから見ると、全くエコーバックしない。

場合分け

Caseパソコンのポート中継HUB動作状況
(1)USB2.0ポート直結問題なし
(2)USB2.0ポートUSB2.0ハブ経由動作不良(症状は上記)
(3)USB2.0ポートUSB1.1ハブ経由問題なし
(4)USB2.0ポートUSB1.1ハブを経由後、USB2.0ハブを通してAVRUSB問題なし
  • 最初は(1)も駄目だった。
    • これは、自分がCOM bridgeドライバーがCOM5とCOM9を連結していて、そこに割り当てられてしまうと駄目になる問題だった。
    • COMポート5,9を避けることで回避した。
  • USB1.1ハブは2つ試した。
  • USB2.0ハブは1つしか持っていない。(安物)

推測するに、USB2.0ハブ経由でのバルク転送問題かと・・・。

  • しかし2連結のときはうまくいくので不思議だ。
  • もしかしたら、手持ちのハブだけの問題かもしれない(LowSpeedのバルク転送が通らない問題)

WinVistaで試そうとしたら、Vistaが起動しなくなっていた。

  • 30日問題ではなくて、使わないから消してしまっていたらしい・・・

そろそろAVR-USBを卒業して、AT90USBに手を出そうかとも思っている。

  • http://www.microfan.jp/shop/index.html
  • マイクロファンのネットショップにて2100円だし。
  • 以前に比べると、面白そうなキットが増えている。(面白そうというベクトルが昔は別の方向を向いていて、ある意味面白かったのだが、今回は真面目な意味だ)
  • 秋月のFT232ボードも買ったまま放置してるのにこのていたらくと言われると弱いんだが。