I want to start to work with SoftSerial but I can not even get the example to work.
The tutorial page says "no circuit required" Yet the code notes say
The circuit:
* RX is digital pin 10 (connect to TX of other device)
* TX is digital pin 11 (connect to RX of other device)
When I have nothing on the board I get "goodnight moon" on serial monitor 57600 baud
Change baud to 4800 baud I get " ÿÿþþÿ" on serial monitor
I put two jumper pin 10 to TX (pin1) and Pin 11 to ( pin0 )
I get o continual stream of " ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ "
What am I not seeing? It is so simple an exercise I read over and over and I just can not see where I am going wrong. I have changed the uno chip for a new one. I don't have a second board to try.
Appreciate any time you can spare to tell me where I should be looking.
Thank you
The example is
/*
Software serial multple serial test
Receives from the hardware serial, sends to software serial.
Receives from software serial, sends to hardware serial.
The circuit:
* RX is digital pin 10 (connect to TX of other device)
* TX is digital pin 11 (connect to RX of other device)
Note:
Not all pins on the Mega and Mega 2560 support change interrupts,
so only the following can be used for RX:
10, 11, 12, 13, 50, 51, 52, 53, 62, 63, 64, 65, 66, 67, 68, 69
Not all pins on the Leonardo support change interrupts,
so only the following can be used for RX:
8, 9, 10, 11, 14 (MISO), 15 (SCK), 16 (MOSI).
created back in the mists of time
modified 25 May 2012
by Tom Igoe
based on Mikal Hart's example
This example code is in the public domain.
*/
#include <SoftwareSerial.h>
SoftwareSerial mySerial(10, 11); // RX, TX
void setup()
{
// Open serial communications and wait for port to open:
Serial.begin(57600);
Serial.println("Goodnight moon!");
// set the data rate for the SoftwareSerial port
mySerial.begin(4800);
mySerial.println("Hello, world?");
}
void loop() // run over and over
{
if (mySerial.available())
Serial.write(mySerial.read());
if (Serial.available())
mySerial.write(Serial.read());
}