NodeMcu последовательная связь Tx и Rx - PullRequest
0 голосов
/ 10 марта 2019

Я новичок в NodeMcu. Я принес Adraxx ENTDEV019 ESP8266 NodeMcu WiFi Development Board. Я пытаюсь программировать с Arduino Ide. Я попробовал несколько основных примеров. Ниже приведен код, который я пробую для доски. Я использую порт Serial1 для отладочной связи. Я подключен:

  • Tx от платы к Rx последовательного адаптера
  • Rx с платы на Tx последовательного адаптера

Я пробовал это для разных скоростей. Я подключил NodeMcu к внешнему банку питания, но не вижу правильного вывода в Serial Monitor.

Тот же код работает нормально, если я использую порт Serial вместо Serial1 и подключаю с помощью USB-кабеля к компьютеру.

#define LED D0 
#define DBG_OUTPUT_PORT Serial1

// the setup function runs once when you press reset or power the board
void setup() {
  DBG_OUTPUT_PORT.begin(9600);
  DBG_OUTPUT_PORT.print("\n");
  DBG_OUTPUT_PORT.setDebugOutput(true);
  // initialize digital pin LED_BUILTIN as an output.
  pinMode(LED_BUILTIN, OUTPUT);
  pinMode(LED, OUTPUT);  

}

// the loop function runs over and over again forev`er
void loop() {
  digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)
  digitalWrite(LED, HIGH);// turn the LED off.(Note that LOW is the voltage level but actually 
  delay(2000);                       // wait for a second
  DBG_OUTPUT_PORT.print("Connected! IP address: \n");

  digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW

  digitalWrite(LED, LOW); // turn the LED on.

}

enter image description here enter image description here

Какую ошибку я делаю?

1 Ответ

1 голос
/ 10 марта 2019

С (https://arduino -esp8266.readthedocs.io / en / latest / reference.html # serial ):

В последовательном соединении используется UART0, который отображается на контакты GPIO1 (TX) и GPIO3 (RX). Последовательность может быть переназначена в GPIO15 (TX) и GPIO13 (RX) путем вызова Serial.swap () после Serial.begin. Повторный вызов swap переводит UART0 обратно в GPIO1 и GPIO3.

Serial1 использует UART1, вывод TX - GPIO2. UART1 нельзя использовать для получения данных, поскольку обычно его RX-контакт занят для подключения флэш-чипа.


Распиновки, которые вы подключили, выглядят как GPIO1 (TX) и GPIO3 (RX). GPIO2 - это вывод D4.

(точечный рисунок из: https://github.com/nodemcu/nodemcu-devkit-v1.0)

...