如何将热敏打印机连接到ESP32?

问题描述 投票:0回答:2

我想将我的 GOOJPRT 热敏打印机(我相信型号 QR701,通信 RS232)连接到我的 ESP32,但我似乎无法让它们工作。

我尝试了所有 Adafruit 热敏打印机库示例,但每次都会遇到相同的错误:

"Error compiling for board ESP32 Dev Module." 

我猜这些库不适用于 ESP32。 我还尝试了 Larry Bank 的“热敏打印机库”(根据其 github 文档,它应该与 ESP32 兼容),但我无法弄清楚如何将热敏打印机的电线正确连接到 ESP32。

当然,我并不要求具体的解决方案,我只是想找人给我指出正确的方向!

This is an image of the exact thermal printer I have

Adafruit 热敏打印机示例的完整错误消息:

C:\Users\Thomas\Documents\Arduino\libraries\SoftwareSerial-master\SoftwareSerial.cpp:41:27: fatal error: avr/interrupt.h: No such file or directory
compilation terminated.
Multiple libraries were found for "Adafruit_Thermal.h"
 Used: C:\Users\Thomas\Documents\Arduino\libraries\Adafruit_Thermal_Printer_Library
 Not used: C:\Users\Thomas\Documents\Arduino\libraries\Adafruit-Thermal-Printer-Library-master
Multiple libraries were found for "SoftwareSerial.h"
 Used: C:\Users\Thomas\Documents\Arduino\libraries\SoftwareSerial-master
 Not used: C:\Users\Thomas\Documents\Arduino\libraries\EspSoftwareSerial
exit status 1
Error compiling for board ESP32 Dev Module
printing connection esp32
2个回答
1
投票
  1. 您需要使用库。 SoftwareSerial 适用于 Arduino 板。

  2. Larry Bank 的“热敏打印机库”适用于 GOOJPRT PT-210 并使用蓝牙。不适用于 qr-701。

  3. 您可以尝试使用以下方法来代替 Adafruit 库: 热敏打印机

快速启动:

  1. 导入库:
#include "TPrinter.h"
#include <HardwareSerial.h>
  1. 设置波特率和引脚。
const int printerBaudrate = 9600;  // or 19200 usually
const byte rxPin = 16;   // check datasheet of your board
const byte txPin = 17;   // check datasheet of your board
const byte dtrPin = 27;  // optional
const byte rsePin = 4;   // direction of transmission, max3485

如果您有带 rs232 的打印机,则需要使用 max3485(用于 3V3 逻辑层)或类似的板。 在我的情况下是必要的。我使用板 UART - RS485 3,3V - ARK/RJ11 - Waveshare 4777

  1. 初始化
HardwareSerial mySerial(1);
Tprinter myPrinter(&mySerial, printerBaudrate);

void setup() {
  micros();
  mySerial.begin(printerBaudrate, SERIAL_8N1, rxPin, txPin);  // must be 8N1 mode
  pinMode(rsePin, OUTPUT);     // optional
  digitalWrite(rsePin, HIGH);  // optional

  // myPrinter.enableDtr(dtrPin, LOW); // optional
  myPrinter.begin();
}

0
投票

使用 Arduino 代码连接打印机比使用纯 C 语言连接打印机更容易,因为我试图连接它,但它没有连接。

我也发布了这个,我对此有 100 个浏览,但仍然没有人能够给出答案。

我正在使用 RP3200 加热敏打印机通过 UART 使用 ESP32 连接 在 C

© www.soinside.com 2019 - 2024. All rights reserved.