【问题标题】:How to run I2C communication between ESP8266 and SN532?如何在 ESP8266 和 SN532 之间运行 I2C 通信?
【发布时间】:2017-06-09 19:40:23
【问题描述】:

我有一个问题“如何通过 elechouse 在 ESP8266 Lolin 和 SN532 之间运行 I2C 通信?”。我尝试了很多方法,但是使用elechouse librarylibrary我总是连续得到这个“找不到PN53X板”。我我正在尝试开始一个示例:基本 elechouse lib 的 ReadTag。 IDE 是 PlatformIO。

ReadTag 代码:

#include <Wire.h>
#include <PN532_I2C.h>
#include <PN532.h>
#include <NfcAdapter.h>

PN532_I2C pn532_i2c(Wire);
NfcAdapter nfc = NfcAdapter(pn532_i2c);


void setup(void) {
    //Wire.begin(4, 3);
    Serial.begin(9600);
    Serial.println("NDEF Reader");
    nfc.begin();
}

void loop(void) {
    Serial.println("\nScan a NFC tag\n");
    if (nfc.tagPresent())
    {
        NfcTag tag = nfc.read();
        tag.print();
    }
    delay(5000);
}

我尝试用Wire.begin(4, 3); 声明SDA 和SCL,但还是不行!也许有人知道解决方案?

【问题讨论】:

  • I2C 是一种电气标准,因此您的电路可能有问题。这可能更适合 EE 组。如果尚未包含上拉电阻,您是否正确调整了上拉电阻的尺寸?您是否使用相对较短的电线?您是否在微控制器上使用正确的 I2C 功能引脚?让我们先从那里开始。
  • 哪些是正确的引脚? ESP8266 Lolin 上有什么定义吗?
  • 您需要查看 SCL/SDA 的文档以找到硬件模块的位置。除非您有充分的理由不这样做,否则请使用这些。如果您的 MCU 在任何引脚上支持软件 I2C,您可以使用软件 i2c 库。我不确定 Wire 是否支持这一点。您需要检查其他项目,如上拉电阻和尺寸。 I2c 仅适用于尺寸正确的上拉电阻。
  • 默认 SDA 和 SCL 没有帮助!
  • 那么你的电阻尺寸呢

标签: arduino esp8266


【解决方案1】:

模块有一个板载稳压器,根据documentation在I2C模式下使用5V逻辑电平。 SPI 和 HSA(高速 UART)模式使用 3.3V 作为逻辑电平。

【讨论】:

    猜你喜欢
    • 2017-07-16
    • 2023-03-23
    • 2022-11-12
    • 1970-01-01
    • 2021-03-04
    • 1970-01-01
    • 2021-03-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多