Unterschiede zwischen Arduino Micro und Arduino UNO

Hallo,

ich wollte gerne mit einen Arduino Micro meinen Roomba Staubsauger steuern.

Wenn ich nun den Putz-Befehl (siehe : http://www.usna.edu/Users/weapsys/esposito/roomba.matlab/Roomba_SCI.pdf mit dem Arduino Micro abgebe - passiert genau gar nix.

Jetzt hab einen älteren Arduino UNO auch noch... wenn ich den UNO genau gleich wie den Micro anstecke und den nachfolgenden Sketch hochlade - funktioniert es einwandfrei....

int ddPin = 2;
int ledPin = 13;
int x=1;

void setup() {

  pinMode(ddPin,   OUTPUT);   // sets the pins as output
  pinMode(ledPin,  OUTPUT);   // sets the pins as output
  Serial.begin(115200);
}

void loop(){
  if(x == 1){
    clean();
    x++;
  }    
}

void clean(){
  digitalWrite( ledPin, HIGH);
  delay(1000);
    // wake up the robot
  digitalWrite( ddPin, LOW);
  delay(500);
  digitalWrite( ddPin, HIGH);
  delay(500);
  // set up SCI to receive commands 
  Serial.write(128);  // START
  delay(150);
  Serial.write(131);  // CONTROL
  delay(150);
  Serial.write(135);  // CLEAN
  digitalWrite( ledPin, LOW);  // say we've finished setup
}

Gibts da irgendwelche Unterschiede die ich mit Google nicht finden konnte???

Danke für eure Hilfe.

Björn

Was genau funktioniert an dem Micro nicht? Ist das dein Sketch?

Der Arduino UNO hat einen ATmega328 mit einem ATmega16U2 als USB-Serial Interface.
Der Arduino Micro (so wie der Arduino Leonardo) hat einen ATmega32U4 der beides macht.
Die Serielle Schnittstelle an pin 0 und 1 ist nicht Serial sondern Serial1:

Serial: 0 (RX) and 1 (TX). Used to receive (RX) and transmit (TX) TTL serial data using the ATmega32U4 hardware serial capability. Note that on the Micro, the Serial class refers to USB (CDC) communication; for TTL serial on pins 0 and 1, use the Serial1 class.

Grüße Uwe