这是本文档旧的修订版!
#include <stdio.h> char incomingByte = 0; for incoming serial data String inputStr = “”; int R,G,B; boolean com = false; void setup() { put your setup code here, to run once:
Serial.begin(9600); pinMode(13,OUTPUT); pinMode(3,OUTPUT); pinMode(5,OUTPUT); pinMode(6,OUTPUT); analogWrite(3,255); analogWrite(5,255); analogWrite(6,255); inputStr.reserve(200);
}
void loop() {
if (com == true) { sscanf(inputStr.c_str(), "R%dG%dB%d",&R,&G,&B); Serial.print("R:"); Serial.print(R); Serial.print(" G:"); Serial.print(G); Serial.print(" B:"); Serial.println(B); analogWrite(3,255-R); analogWrite(5,255-G); analogWrite(6,255-B); com = false; inputStr = ""; }
}
void serialEvent(){ statements incomingByte = Serial.read(); inputStr += incomingByte; if (incomingByte == '\n') com = true; }