私はArduinoでNFCシールド(これ)を使用しています。Rx で割り込みを使用しようとしています。シリアル ラインでデータを受信するたびに、Arduino を起動させたいと思います。これは、NFC シールドなしで正しく機能します。ただし、NFC シールドを使用すると、シリアル ポートで「0」が送信され、割り込みがトリガーされます。これは本当に望ましくありません。
いくつかの調査の後、ライブラリがSPIピンに書き込むたびに(のようdigitalWrite(_clk, LOW);
に、「0」を返すことがわかりました。
ループ関数には、次の行があります。
id = NFC.readPassiveTargetID(PN532_MIFARE_ISO14443A);
したがって、この行が実行されるたびに、シリアルバスを介して「0」が送信され、Arduino がスリープモードになることはありません... (読み取る NFC カードがなくても)
誰かが理由を知っていますか?どうすればそれを回避できますか?