这段代码:
#include "SoftwareSerial.h">
#include <avr/io.h>
#include <HardwareSerial.h>
#include <avr/interrupt.h>
void read_response();
int main () {
sei();
Serial.begin(2400);
uint8_t receivePin = 2;
uint8_t transmitPin = 3;
SoftwareSerial softSerial(receivePin, transmitPin);
softSerial.begin(2400);
while(1){
softSerial.println("to soft serial");
Serial.print(softSerial.read());
}
}
Run Code Online (Sandbox Code Playgroud)
在编译时给我这个错误:
undefined reference to `SoftwareSerial::SoftwareSerial(unsigned char, unsigned char, bool)'
Run Code Online (Sandbox Code Playgroud)
我尝试过使用#include"SoftSerial.h",但没有区别.SoftSerial.h和SoftSerial.cpp文件位于我的库文件夹中,其中HardwareSerial.h文件也驻留在该文件夹中.
我错过了什么?
小智 5
这不是编译错误.这是链接器错误.
如果SoftSerial是您自己项目的一部分,则CPP文件可能不是已编译项目的一部分.如果是外部库,则需要链接到它.如何执行此操作取决于您的IDE /编译器.