FPC1020 + WeMos D1 Мини
У меня есть FPC1020am, который отлично работает с Arduino, и ESP8266 D1 Mini V2 NodeMcu 4MB Lua, который может подключаться к серверу.
Как подключить FPC1020 напрямую к ESP8266 D1 Mini для сканирования пальца и отправки совпадающего идентификатора на сервер?
вот мой код и ошибка:
#include <NewSoftSerial.h>
#include <ESP8266WiFi.h>
#include <WiFiClientSecure.h>
#include <FPC1020.h>
extern unsigned char l_ucFPID;
extern unsigned char rBuf[192]; //Получить возвращаемые данные
#define sw_serial_rx_pin 2 // Подключите этот вывод к TX на FPC1020
#define sw_serial_tx_pin 3 // Подключите этот вывод к RX на FPC1020
const char* ssid = "-------";
const char* password = "-------";
const char* host = "-------";
String url = "-------?id=";
NewSoftSerial swSerial(sw_serial_rx_pin, sw_serial_tx_pin); // Последовательный отпечаток пальца (RX, TX)
FPC1020 Finger(&swSerial);
void setup() {
Serial.begin(115200);
Serial.print("connecting to ");
Serial.println(ssid);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
pinMode(4, INPUT);
}
void loop() {
Serial.println("Please put your finger on the Sensor.");
while(Serial.available()<=0);
if( Finger.Search()){
Serial.print("Success, your User ID is: ");
url = "-------?id=" + l_ucFPID;
Serial.println( l_ucFPID, DEC);
WiFiClient client;
if (!client.connect(host, 80)) {
Serial.println("connection failed");
return;
}
client.print(String("GET ") + url + " HTTP/1.1\r\n" +
"Host: " + host + "\r\n" +
"User-Agent: BuildFailureDetectorESP8266\r\n" +
"Connection: close\r\n\r\n");
String line = "";
while (client.connected()) {
line = client.readString();
}
Serial.println(line);
}
else {
Serial.println("Failed, please try again.");
}
}
И ошибка:
C:\Program Files (x86)\Arduino\libraries\NewSoftSerial\NewSoftSerial.cpp:41:27: fatal error: avr/interrupt.h: No such file or directory
#include <avr/interrupt.h>
^
compilation terminated.
exit status 1
Error compiling for board WeMos D1 R2 & mini.
@mimskydo, 👍-2
Обсуждение1 ответ
Лучший ответ:
▲ 1
Я никогда не пробовал это, но D1 Mini имеет 2,5 последовательных порта.
- Выводы Tx и Rx — Serial0.
- Цифровой контакт 4 — это TX1. Похоже, что контакта RX нет.
- D7 и D8 — Rx2 и Tx2.
Поэтому вместо использования SoftwareSerial или NewSoftwareSerial попробуйте использовать Serial2. Это может сработать.
,
@Code Gorilla
Смотрите также:
- AT-команда не отвечает на последовательный монитор
- Отправка данных Arduino в MySQL с помощью phpMyAdmin и XAMPP на Windows10
- Arduino выводит значения мусора на serial monitor с ESP8266
- ошибка: espcomm_upload_mem failed при загрузке скетча
- фатальная ошибка ESP8266WiFi.h: Такого файла или каталога нет
- Как подключить Wi-Fi Shield ESP-12E-ESP8266-UART-WIFI-Wireless-Shield к Arduino
- Получить данные с сайта с помощью ESP8266 с помощью AT-команд
- Захват изображений с OV7670 (без FIFO) с использованием Arduino Uno?
Мы не являемся бесплатной службой написания кода., @gre_gor
это последовательное устройство, подключите его к линии UART MCU или используйте SoftwareSerail..., @dandavis
@dandavis программный последовательный порт не работает на WeMos D1 Mini .. есть ли какой-либо другой компонент, который делает это на WeMos D1 Mini?, @mimskydo
я не знаю, откуда вы взяли эту идею, но я все время использую SS на d1minis..., @dandavis
@dandavis, когда я хочу скомпилировать свой код, я получаю эту ошибку: фатальная ошибка: SoftwareSerial.h: нет такого файла или каталога, @mimskydo
Полная ошибка @dandavis: фатальная ошибка: SoftwareSerial.h: нет такого файла или каталога #include <SoftwareSerial.h> ^ компиляция прекращена. статус выхода 1 Ошибка компиляции для платы WeMos D1 R2 и mini., @mimskydo
@mimskydo - это ошибка пользователя, вы не загрузили серийную библиотеку программного обеспечения или не разместили ее в правильном месте. Попробуйте прочитать файл readme или справку по IDE о том, как загружать сторонние библиотеки. Вот почему я сказал, что вы должны были включить сообщение об ошибке, когда задавали этот вопрос в своем другом сообщении, проблема была бы решена к настоящему времени., @Code Gorilla
@CodeGorilla Я обновляю вопрос, добавляя код и ошибку. Не могли бы вы взглянуть на это? Я полностью запутался в этом ... также я использую «NewSoftSerial» вместо «SoftwareSerial» из-за рекомендации веб-сайта arduino. спасибо, @mimskydo
[NewSoftSerial](http://arduiniana.org/libraries/newsoftserial/) теперь находится в ядре Arduino как SoftwareSerial. Я сомневаюсь, что старый NewSoftSerial поддерживает ESP8266., @gre_gor
@mimskydo- avr = Arduino, поэтому, когда вы видите avr в пути, это означает, что ему нужно что-то только для Arduino, а не для ESP. Теперь вам нужно найти версию software serial, которая работает с ESP. ИЛИ вы можете добавить аппаратный последовательный порт http://www.nxp.com/products/signal-chain/bridges/single-uart-with-i2c-bus-spi-interface-64-bytes-of-transmit-and- получить-fifos-irda-sir-встроенная-поддержка: SC16IS740_750_760 ??, @Code Gorilla