オートフォーカスIC < 1/3 >

 

2001.11.14

H8マイコンによるオートフォーカスIC( AFIC )の利用法

 

  1. 背景・目的

    合焦検出用センサに富士電機製のオートフォーカスIC( 以下 AFIC )を利用した研究について技術支援していたときの記録をご紹介します.合焦面検出には,しまパターン投影方式を使用しています.今までは,データを取得するだけでしたが,実際にオートフォーカス制御をかける必要がでてきたため,新しく AFIC 制御装置を作成することとなりました.

    AFIC からデータを得るためには,クロックを作成し,センサからのデータをクロック同期でシリアルデータ入力をする必要があります.ここでは,H8マイコンを利用して AFIC の起動からデータ取得までを行うことを目的とします.

     

  2. 開発環境

    • 秋月H8用Cコンパイラ
    • 秋月H8用アセンブラ

     

  3. ハードウェア

    • マイコンは秋月通商のH8マイコンボード,同H8マザーボードを利用する.
    • 動作手順概略を図1に示す.
      Fig.1図1 動作手順概略図

       

      1. データ読み出しクロック(READ-CLK)を 50 kHz で出力
      2. RESETの解除.RESET ポートへ 5 V を出力
      3. AFIC からの END 信号を IRQ0 へ入力(割込み)
      4. クロックを 1MHz に切り替え ITU-CN3,CN4 同期して出力.すなわち,READ-CLK とシンクロしてシリアル同期信号をシリアルクロックポートへ入力する.同時に AFIC からのデータをシリアル同期モードで受信( SCI0 ポート利用)する.
      5. 受信データを DMA 転送する.全データ数 356 個のデータをメモリに転送.
      6. DMA転送終了後 CPU に制御を返す.
      7. 実験では,このあとデータをPCへ SCI1 ポートより転送する.

       

    • 動作タイミング
      Fig.2図2 動作タイミング

       

    • H8とAFICの接続図(図3)はこちら.
    • AFIC側の接続図
      Fig.4図4 AFICセンサーの接続

       

    • クロック信号の操作
      END 信号が IRQ0 に入力されたときに割込みを利用する.この割込みに要する時間は,最大 41 ステート= 2.56 μs (クロックΦ = 16 MHz)必要となる.このため,500 kHz 以上のクロックは間に合わない.
      例えば,AFIC 駆動のためのクロックを 500 kHz ( 1 周期= 2 μs)とした場合,割込み検出からハンドラに渡るまでの間に AFIC 駆動用クロックの次の周期が始まることになり,データ受信が間に合わないことになる.そこで,END 信号が入力されるまでは,時間的に余裕をもたせた 50 kHz で駆動させ,END 信号入力後は 1MHz で駆動して AFIC からのデータを得ることとする.この切換えのとき,一度クロックを停止すればよさそうであるが,試したところ AFIC からのデータが正しく入らなかった.また,クロックの作成に ITU を利用せず,通常の I/O 出力のポーリングで行い,さらにデータ入力も I/O 入力で行うこともできるが,このときの最大クロック周波数は 33 kHz (実験値)である.データ転送の時間を試算すると,

      1MHz のとき,1 μs×8 bit×356個 = 2.85 ms
      33 kHz のとき,30.3 μs ×8 bit×356個 = 86.3 ms

      となる.

 < 次へ >

コメントは停止中です。