portOutputRegister and portInputRegister are useless

Baltasar,

it should work now, I prefer to do something like this:

by looking the datasheet and asking advice to Atmel, we shouldn't have any side effects in doing this. (I hope.........)

here my test sketch:

volatile uint32_t *REG;
uint32_t MASK;

void setup() {
  Serial.begin(9600);
  pinMode(13, OUTPUT);
  REG = portOutputRegister(digitalPinToPort(13));
  MASK = digitalPinToBitMask(13);
}


void loop() {
  Serial.println("ON");
  *REG |= MASK;
  delay(1000);
  Serial.println("OFF");
  *REG &= ~MASK;
  delay(1000);
}