SerialMonitor
//readthecharacterenterinSerialmonitorandprintou
t
charsendChar;
voidsetup(){
Serial.begin(9600);
}
voidloop(){
if(Serial.available()){
sendChar=Serial.read();
Serial.println(sendChar);
}
}
Result
Type“HelloWorld”inmonitor,printout:HelloWorld(wordsbywords)
Toprintinserialmonitorinoneline
charsendChar;
voidsetup(){
Serial.begin(9600);
}
voidloop(){
if(Serial.available()){
sendChar=Serial.read();
Serial.print(sendChar);
}
}
Result
type“helloworld”,printout“helloworld”inoneline
Useserialmonitortocontrol
LED
TypeH,Linserialmonitortocontrolled13inarduinoUnoR3
constintledPin=13;
intincomingByte;
voidsetup(){
Serial.begin(9600);
pinMode(ledPin,OUTPUT);
}
voidloop(){
if(Serial.available()>0){
incomingByte=Serial.read();
if(incomingByte=='H'){
digitalWrite(ledPin,HIGH);
}
if(incomingByte=='L'){
digitalWrite(ledPin,LOW);
}
}
}
Reference:Arduinocc,PhysicalPixel
Transmitdatabetween2arduino
Connection
Arduino1
Arduino2
5V
GND
5V
GND
RX
TX
TX
RX
Send9,8turnon/offledinslavearduino
UploadingthefirmwaretotheArduinobeforeconnectingthe2wireTX
RXbetweenthem.Connectingthese2wireduringuploadingtimemight
ledtotheuploadingproblem.
JustpoweroneArduino
Master
voidsetup(){
Serial.begin(9600);
}
voidloop(){
Serial.println(9);
delay(2000);
Serial.println(8);
delay(2000);
}
Slave
charreceived;
voidsetup(){
Serial.begin(9600);
pinMode(16,OUTPUT);
}
voidloop(){
if(Serial.available()){
received=Serial.read()-48;
Serial.println(received);
if(received==9)
{
digitalWrite(16,HIGH);
}
elseif(received==8)
{
digitalWrite(16,LOW);
}
}
}
Controllingbywords
Master
voidsetup(){
Serial.begin(9600);
}
voidloop(){
Serial.println('H');
delay(2000);
Serial.println('L');
delay(2000);
}
Slave
charreceived;
voidsetup(){
Serial.begin(9600);
pinMode(16,OUTPUT);
}
voidloop(){
if(Serial.available()){
received=Serial.read();
Serial.println(received);
if(received=='H')
{
digitalWrite(16,HIGH);
}
elseif(received=='L')
{
digitalWrite(16,LOW);
}
}
}
NOTE
IfinMaster
received=='High'
received=='LOW'
theninSlave
if(received=='High')
{
digitalWrite(16,HIGH);
}
elseif(received=='Low')
{
digitalWrite(16,LOW);
}
InSerialmonitorofmaster:
2835
2647
InSerialmonitorofslave:
2
8
3
5
2
6
4
7
Soitwon’tworkasthereceiveandsendvariablearechar(meanone
character).
Likealltimes,""isforstring,’’isforchar.
ASCII:‘A’=65;‘0’=48’,…
TosendthewholewordstocontrolLED
Master
voidsetup(){
Serial.begin(9600);
}
voidloop(){
Serial.println("High");
delay(2000);
Serial.println("Low");
delay(2000);
}
Slave
Ifyouchangeto
received=Serial.read();
Serial.println(received);
if(received=="High")
{
digitalWrite(16,HIGH);
}
elseif(received=="Low")
{
digitalWrite(16,LOW);
}
YoustillreveivetheASCIInumber
SoftwareSerial
TypeH,LinmasterArduino,,turnon,offledinslave
Arduino
Connection
Master
5V
GND
Slave
5V
GND
2(RX)
TX
3(TX)
RX
Master
#include<SoftwareSerial.h>
SoftwareSerialArduino(2,3);//RX,TX
charsendChar;
voidsetup(){
Serial.begin(9600);
Arduino.begin(9600);
}
voidloop(){
sendChar=Serial.read();
Serial.print(sendChar);
Arduino.println(sendChar);
delay(1000);
}
Slave
charreceived;
voidsetup(){
Serial.begin(9600);
pinMode(16,OUTPUT);
}
voidloop(){
if(Serial.available()){
received=Serial.read();
Serial.println(received);
if(received=='H')
{
digitalWrite(16,HIGH);
}
elseif(received=='L')
{
digitalWrite(16,LOW);
}
}
}