Nein das verstehst du falsch.
Du hast zwei voneinander getrennte µC, die du auch einzeln programmieren musst!
Du kannst aber sagen das du bestimmte Befehle von Controller A zu Controller B schickst und Controller B interpretiert diese dann und führt dann ein Kommando aus.
Beispiel:
Controller A und B sind über den UART miteinander verbunden.
Controller B empfängt Befehle über den UART und wertet diese aus.
Du sendest mit Controller A den Befehl "Set D2"
Controller B empfängt den Befehl und analysiert diesen. Anschließend weiß er, dass du einen Pin setzen willst (Befehl "Set"). Bei dem Pin handelt es sich um den Pin D2
Im Grunde schreibst du für den Controller B einfach nur eine Software die bestimmte Befehle, die über den UART gesendet werden, erkennt und passend umsetzt (für einen Anfänger würde ich aber eher die I²C Methode empfehlen - sprich PCF8574. Der ist super einfach anzusteuern und bereitet nicht so viele Probleme).