Last Update: 2008/12/01 22:32
Atenza Online DIY 日記 日記 コレクション
注意)お約束ですが、この情報で発生したいかなる損害についても私は責任を負いません。もし挑戦する場合は、自己責任でおねがいします。

ステアリングスイッチの解析

燃費計を取り付けたのはよかったのですが、表示の変更や、設定変更が本体のスイッチで操作はめんどうでした。
そこで、ナビ設置により不要となったアテンザの純正オーディオ操作用ステアリングスイッチ(6つ)を流用しようと考え、スイッチの解析をしてみました。
燃費計をステアリングスイッチより操作できるようにした情報の公開です。
  1. まず、ステアリングスイッチの信号はオーディオコネクタのステアリングSW2になります。

  2. 各スイッチを押した時の電圧を測定したところ下表のようにり、綺麗な7値となっていました。
    スイッチ電圧
    Vol- 0.36 V (=5/14x 1)
    Vol+ 1.07 V (=5/14x 3)
    Up 1.79 V (=5/14x 5)
    Down 2.50 V (=5/14x 7)
    Mode 3.21 V (=5/14x 9)
    Mute 3.93 V (=5/14x11)
    (Non)4.64 V (=5/14x13)

  3. この結果から右図のような範囲の電圧でスイッチが押されているか判定しているようです。





ステアリングスイッチから燃費計を操作する(for v0.20)

  1. つぎに、燃費計ですが、ステアリングスイッチ同様0〜5Vの電圧でスイッチを判定しており、HEXファイルを逆アセンブルし、解読したとこと、スイッチ判定が右図のようになっていることを突き止めました。
    上段がスイッチの電圧、下段がA/Dコンバータの取得値で赤の帯がスイッチが押されたと判断する範囲です。




  2. Ver0.17では、基盤のボタンと両立できるようにしたのですが、ステアリングシフトを優先し、Ver0.20では、下表のようにしています。この結果、基盤のボタンは使用不可としてしまってます。
    ステアリング燃費計
    Up Menu
    Down Select
    Mode Up
    Mute Down

  3. アテンザステアリングに対応させるため、燃費計のHEXファイルを修正しています。HEXファイルはこれです。

  4. ハードウェア的には、オーディオコネクタのステアリングSW2を、PIC18F282の2番ピン(RA0/AN0)に接続し、燃費計のスイッチと排他となるよう切り替えスイッチを割り込ませました。