RP2040 Измерение времени менее 1 мкс

да и с микросекундами надо уметь обращаться

volatile unsigned long M;
unsigned long M_old;
bool flag = false;
//--------
void setup()
{
  multicore_launch_core1(main2);
  Serial.begin(115200);
  while (!Serial);
}
//--------
void loop()
{
  if(!flag)  M = micros();
}
//--------
void loop2()
{
  if ((M - M_old) >= 1000000)
  {
    flag = true;
    M_old = M;
    flag = false;
    Serial.print(" M = ");
    Serial.println(M_old);
  }
}
//--------
void main2() {
  while (1) {
    loop2();
  }
}