simulare pressione tasto con sensore infrarosso

Se ho capito bene la simulazione della pressione di un tasto consiste nel portare LOW il pin10 quando un oggetto è posto davanti all'infrarosso e nel riportarlo HIGH quando l'oggetto NON è più davanti all'infrarosso. Ma se è così non è più semplice riportare sul pin10 la lettura del pin4? Una cosa così:

#define sensore_infrarosso 4
#define pulsante 10

int val;

void setup() {
  pinMode(sensore_infrarosso, INPUT);
  pinMode(pulsante, OUTPUT);
}

void loop() {
  val = digitalRead(sensore_infrarosso);
  digitalWrite(pulsante, val);
}

Ciao,
P.