Top Page [◀◀]  2   3   4   5   6   7   8   9   ... [▶▶Last Page

UARTの受信が行われなくなる

お世話になっております。

 

RX231のマイコンでUART(端子はTXD5、RXD5)を使用しているのですが、輻射ノイズ試験を行うと

UARTの受信割込みがかからなくなり、UARTの初期設定、エラー処理を行っても復帰しません。

ウォッチドッグタイマによるリセットを行うと、復帰します。

この場合、他にもUARTを使用している箇所(TXD9,RXD9)等あるのですが、ほかの機能はすべて正常に動いており、

上記のUART受信割込みのみ掛からない状態です。(送信(割込みではない)ができていることはラインモニターで確認済です)

この回路部のみ暴走するようなことがあるのでしょうか。

また、ノイズ試験を行わなくとも上記現象が発生することがごくまれにありますが、原因がつかめていません。

ウォッチドッグタイマによるリセットで応急対策はいいとしても恒久的には原因をつかみたいのですが、

何かご参考になる情報等ありましたらご教授頂きたいです。

  • きっくるさん
    RX231のUART(TXD5、RXD5)ということで、私が助けになるのかどうかわかりませんが
    輻射ノイズ試験からの影響でRX231のUART(TXD5、RXD5)ハードウェアがおかしいと
    疑われるということのようですね、ただ
    「ノイズ試験を行わなくとも上記現象が発生する」ということなので
    疑われるのはファームウェアの実装方法(プログラムソース)が適切ではないのでは
    と思います、プログラムソースは独自開発ですか、サンプルなんでしょうか
    ルネサスのサンプルに基づいているなら適切なサポートが期待できると思います。
  • In reply to IKUZO:

    IKUZOさん

    ありがとうございます。

     

    ソースは、E2studioでスマートコンフィグレータを使用して生成しました。

    ほとんど生成されたソースを使用しています。

     

    使用順

    R_Config_SCI5_NFC_Create();

    R_Config_SCI5_NFC_Start();

    R_Config_SCI5_NFC_send();

     

    以上よろしくお願いします。

     

    UARTソース.rtf

     

  • In reply to きっくる:

    追記です。

    上記現象が起こった際に、ソフトウェアリセットをかけてみたところ、
    動くようになりました。

    よってどこかのソースに不具合がありそうです。

    追って確認します。
  • In reply to きっくる:

    チョコです。
    >この回路部のみ暴走するようなことがあるのでしょうか。
    ノイズ試験は、デバイスの規格を超えた信号が印加された状態と言えます。そのため、一部のハードウェアが正常な使い方ではありえない状態になってしまっていると考えられます。
    その箇所が、通常のレジスタ設定では変更できず、リセットで初期化されるようなところであったか、そもそも、プログラムの初期化では設定していないところであったかが考えられます。
    症状が割り込みだけのようなので、割り込み関係のレジスタを確認されることをお勧めします。それで対策できなければ、シールド強化等のハードウェアでの対策を行うことになるかと思います。

    ノイズ試験の影響は、試験方法や個別のセットの状況等で結果が異なります。他のデバイスのケースでは、リセットでも復帰できず、電源を入れ直したら復帰できたようなことを聞いたこともあります。
  • In reply to チョコ:

    UARTの受信ができない件、
    再度波形を確認していたところ、受信データがおくられていませんでした。

    相手側のICが何らかのモードに入り、応答しなくなったようです。
    相手側をリセットすることで、正常復帰するようになりました。

    マイコン側での不具合と勘違いしておりました。
    申し訳ございません。

    ただ、別の症状としまして、さらにノイズを印可していたところ、CPUが暴走?している状態に陥ってしまいました。
    10ms割込でLEDを点滅させていたところ、LEDの点滅も行われなくなったところから、どこかで、無限ループに
    陥っている気がするのですが、原因を特定する方法等ありましたらご教授頂きたいです。

    実際には、停止後しばらくしてウォッチドッグタイマによるリセットで復帰しますが、
    ウォッチドッグタイマを無効にするとずっと停止したままになります。
  • In reply to きっくる:

    わわいです
    ノイズ印加でチップ内部で暴走するというのはもうどうしようもないですね
    この原因を特定したところでどうしようもないでしょうね。次回の暴走も全く同じ原因で起こるとも限りませんし、どんなノイズを与えても暴走しないようにする、というのは非現実的です。

    この暴走がめったに起こらないように、ノイズ耐量を高めていく、という方向で行きましょう
  • In reply to きっくる:

    >どこかで、無限ループに陥っている気がするのですが、原因を特定する方法等ありましたらご教授頂きたいです。

    whileで信号の変化を待っている箇所はありませんか?
    その信号が変化していないだけではないでしょうか?

    関数入り口でLEDをONして抜けたらLEDをOFFなどで、どこで固まっているか確認できます。

    UART5もノイズの関係なかったわけですし、マイコンの暴走ではないでしょう。

Top Page [◀◀]  2   3   4   5   6   7   8   9   ... [▶▶Last Page