#120リモート・ポートに関する情報、バグ修正

●書籍訂正(06/11/05)

書籍「PICによるホーム・コントロール工作入門」

P38 コラム2-1 左段の中ほど
  誤)筆者は試作で、トランジスタなしでSM3J45を
        ↓
  正)筆者は試作で、トランジスタなしでSM6J45を

P58 コラム2-3 温度センサと三端子レギュレータの説明文
  誤)定ドロップ型 → 正)ドロップ型

P152 回路図のPICの1番ピンに接続されている抵抗器の部品番号に誤りがあります。
  誤)R5 10KΩ → 正)R1 10KΩ

P156 部品表 「リモート・ポート基本回路」でR1 10KΩが抜けています。

お詫びして訂正いたします。

●XPort リダイレクタの設定について

書籍AppendixB(P215)のなかで、TCPポートに設定するポート番号をXPortに設定したポート番号14000から11000を引いた値と記述していますが、最近のWEBマネージャでは11000は引かなくてもよいそうです。バージョンにより違うということですから、お手持ちのバージョンのマニュアルなどで確認したうえで使用してください。読者の方から情報をいただきました。

●WIZ-C版プログラムBUG
初期状態で赤外線LEDがONしたままになるという不具合の修正(06/08/29)

CCPがPWMモードで作動する前にTIMER2を停止していたので、PWM出力がHレベルに固定されたままになっていました。少しCCPを作動させたあとにTIMER2を停止させるように修正します。CCS-C版のプログラムでは問題ありません。

修正済みプログラム(プロジェクトフォルダ)(自己解凍ZIP) 09-060829.exe
修正済みプログラム(Hexファイル)(text) RemPort-060829.hex

※コンパイルするためには共通関数や定義ファイル(*.h)が必要です。http://mycomputer.cqpub.co.jp/pic15/で一旦全てのファイルをダウンロードしてWIZ-Cの09フォルダごと差し替えてください。

--------------------------------------------------------
 RemPort_User.c 76行目付近 修正前
--------------------------------------------------------
void UserInitialise()
{
  BYTE tstdat;

  RB_PULLUP_ON;        // RBプルアップ有効
  PC.B0 = 0;           // リレー1 OFF
  DI_AD;              // ADC割込み禁止
  BitSet(ADCON1, ADFM);   // A/D値読み出しフォーマットを右詰に指定

  TIMER2_OFF;
  DI_TMR2;

  InitCommFunc();       // 共通関数関連の変数初期化
  PR2 = 130;
  SetPWM1Volts(0);      // Ir Pulse off:0 / on:260

#ifdef IR_REMCONT
  RemInit();
#endif

}


--------------------------------------------------------
 RemPort_User.c 76行目付近 修正後
--------------------------------------------------------
void UserInitialise()
{
  BYTE tstdat;

  RB_PULLUP_ON;        // RBプルアップ有効
  PC.B0 = 0;            // リレー1 OFF
  DI_AD;              // ADC割込み禁止
  BitSet(ADCON1, ADFM);   // A/D値読み出しフォーマットを右詰に指定

// TIMER2_OFF;  // 060829 del
// DI_TMR2;
  
  InitCommFunc();       // 共通関数関連の変数初期化
  PR2 = 130;
  SetPWM1Volts(0);      // Ir Pulse off:0 / on:260

  Wait(1);        // 060829
  TIMER2_OFF;    // 060829

#ifdef IR_REMCONT
  RemInit();
#endif

}


●XPortを実装した基板でシリアルインターフェースを使うときの赤外線受光モジュールの誤作動(06/08/29)

XPortとADM3202の両方を実装した基板でシリアル・インターフェースを使用する際、XPortをネットワークにつながない状態だと、受光モジュールが周期的な信号を拾って誤作動します。この状態ではリモコンコードのキャプチャはできません。

ネットワーク・ケーブルを接続してネットワークに接続された状態では問題ありません。無負荷のXPortからノイズが出てそれを受光モジュールが拾っているようです。受光モジュールの信号ラインをロジアナで測定してみると、XPortの初期化がおわるころ(リセット解除から7秒ほど後)から正確な周期のノイズが出始めます。

XPortとADM3202の両方を実装した基板では注意してください。

戻 る