Zunächst mal solltest Du Dir mal genau überlegen
wie Dein Bus laufen soll.
Du kannst Deine Kommunikation so aufbauen, dass alle
Busteilnehmer ihre Werte beliebig auf den Bus senden
und die Anderen Busteilnehmer eben nur wenn sie
Werte von einem Anderen benötigen diese dann annehmen,
oder Du kannst Deinen Bus bauen, dass Busteilnehmer
andere anrufen, damit diese dann ihre Werte schicken,
also auf Polling.
Für letztere Kommunikation stellt der MCP ne besondere
automatische Funktion bereit, das RTR (siehe Datenblatt),
mit welchem die Anwesenheit des angesprochenen
Busteilnehmers erstmal erfragt werden kann.

Bei den Kommunikationsformen bist Du dann eben
schon im Protokoll. Hier bietet sich dann schon die
Verwendung von standardisierten Protokollen an,
such mal im Netz unter CANOpen.

PS: ich könnte nen Code basteln, tu dies aber nicht. Ich gebe nur Hilfe zur Selbsthilfe und Tips.