Arduino SoftwareSerial 库不工作
Arduino SoftwareSerial library doesnt work
我有一段非常简单的 Arduino Uno 代码。使用软件序列库。
#include <SoftwareSerial.h>
#define rxPin 6
#define txPin 7
SoftwareSerial mySerial(rxPin, txPin);
void setup() {
pinMode(rxPin, INPUT);
pinMode(txPin, OUTPUT);
Serial.begin(9600);
mySerial.begin(2400);
Serial.println("Serial init");
}
void loop() {
delay(2000);
Serial.println("Serial link started");
mySerial.write(0x15);
if(mySerial.available() ){
int incomingByte = mySerial.read();
Serial.print(incomingByte);
Serial.print(" is here");
}
}
rxPin 和 txPin 直接相互连接。 Arduino 也通过 USB 连接到 PC。 mySerial.available() 循环,mySerial.read() returns -1,我没有任何反应。有谁知道,问题出在哪里? SoftwareSerial 对我不起作用。
方法 SoftwareSerial::write()
在写入时禁用中断,at this line。所以当你写出你的字节时,arduino 对传入的位充耳不闻(除了第一个上升沿,这可能会延迟到再次启用中断时 - 我实际上不记得了)。
我猜MySerial(6-7)指向调制解调器(Sim900或Sim300),ARDUINO ONE的serial(0-1)指向PC的USB端口。
使用跳线配置您的调制解调器,以便您可以侦听端口 6-7
试试这个:
IssueCommand ( "AT"); // or mySerial.println("AT+V")
ReadSerial ();
Void readSerial () {
While (mySerial.available ()) {
Serial.write (mySerial.read ());
Delay (10);
}
}
对不起,我住在墨西哥 mbnava@gmail.com 联系我。感觉自由
我有一段非常简单的 Arduino Uno 代码。使用软件序列库。
#include <SoftwareSerial.h>
#define rxPin 6
#define txPin 7
SoftwareSerial mySerial(rxPin, txPin);
void setup() {
pinMode(rxPin, INPUT);
pinMode(txPin, OUTPUT);
Serial.begin(9600);
mySerial.begin(2400);
Serial.println("Serial init");
}
void loop() {
delay(2000);
Serial.println("Serial link started");
mySerial.write(0x15);
if(mySerial.available() ){
int incomingByte = mySerial.read();
Serial.print(incomingByte);
Serial.print(" is here");
}
}
rxPin 和 txPin 直接相互连接。 Arduino 也通过 USB 连接到 PC。 mySerial.available() 循环,mySerial.read() returns -1,我没有任何反应。有谁知道,问题出在哪里? SoftwareSerial 对我不起作用。
方法 SoftwareSerial::write()
在写入时禁用中断,at this line。所以当你写出你的字节时,arduino 对传入的位充耳不闻(除了第一个上升沿,这可能会延迟到再次启用中断时 - 我实际上不记得了)。
我猜MySerial(6-7)指向调制解调器(Sim900或Sim300),ARDUINO ONE的serial(0-1)指向PC的USB端口。
使用跳线配置您的调制解调器,以便您可以侦听端口 6-7
试试这个:
IssueCommand ( "AT"); // or mySerial.println("AT+V")
ReadSerial ();
Void readSerial () {
While (mySerial.available ()) {
Serial.write (mySerial.read ());
Delay (10);
}
}
对不起,我住在墨西哥 mbnava@gmail.com 联系我。感觉自由