【问题标题】:How to send orders from Arduino to Esp32 and make it keypress如何将订单从 Arduino 发送到 Esp32 并使其按键
【发布时间】:2021-12-26 05:28:31
【问题描述】:

我需要将订单从 Arduino 发送到 ESP32。

我有一个操纵杆按钮要测试。

Arduino nano 是发送者 Esp32 是接收器

Esp32 从 Arduino 接收操纵杆按钮信息(每次我按下按钮)。

我需要Esp32根据数据来Serial.write,例如:

如果我按下 Arduino 中的按钮:将数据发送到 Esp32 并打开蓝牙(或打开 LED)。

这些是我的代码:

//Arduino NANO sender
byte j = 45;
#define boton_joystick A1

void setup() {
Serial.begin(9600);
pinMode(boton_joystick, INPUT_PULLUP);
}

int boton_joystick_state;

void loop() {
  //Serial.println("100");
  //Serial.write("BOTON EN GRANDE");
  //delay(1500);

if(!digitalRead(boton_joystick)) {
 boton_joystick_state = 1;
  delay(170);
  } else {
    boton_joystick_state = 0;
    }

  if (boton_joystick_state) {
    Serial.println(j);
    Serial.print(" ");
    Serial.write(j);
    Serial.println();
    }
//ESP-32 receiver
#define RXD2 16
#define TXD2 17

byte j = 45;

int comdata;

void setup() {

  Serial.begin(115200);
  Serial2.begin(9600, SERIAL_8N1, RXD2, TXD2);
}

void loop() {
  //Serial.print("LEYENDO ARDUINO");
  Serial.println(Serial2.readString());

if (Serial2.available() >0) {
  char comdata = char(Serial2.read());
  if (comdata == 'j') {
    Serial.println("joystick activado");
    }
  }
}

【问题讨论】:

标签: arduino esp32 serial-communication


【解决方案1】:

不确定 但是我正在使用带有 UART 的 Nano 33 BLE,Nano 也有 Serial1 不需要串行 2 不需要 Softwearserial。在串行 1 上感应并在串行 1 中接收,但您也必须通过 USB 连接它。所以你的串口是 USB,你的串口 1 是 TX RX。

对我来说它有效,所以你可以试试。

【讨论】:

  • 经典 Nano 没有 Serial1。有问题的 Serial2 在 esp32 上。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-05-10
  • 2021-01-15
  • 2021-11-01
  • 2015-06-09
  • 2014-01-01
  • 2020-08-16
相关资源
最近更新 更多