Ja, genau sowas wollte ich im vorherigen Post beschrieben haben.
Hier mal etwas ausführlicher:
Also die Haupteinheit schaltet die 5V Versorgung der Slaves erst frei wenn die Akkuspannung positiv geprüft wurde.
Die Slaves sind auf Steckplätze gesteckt und messen über einen ADC ihre Steckplatznummer, der über Widerstände eingestellt wird. Erst wenn sich alle eingesteckten µC beim Master per extra IO gemeldet haben, werden Daten zur Berechnung abgeschickt. Diese Daten hatte ich auch über UART geplant. Dadurch wird es möglich das der jeweilige µC im Programmcode verzweigt und nur die Berechnungen durchführt auf dessen Steckplatz er steckt. Und dann eben die zyklische Aktivierung der Sendepins erfolgt.
An dieser Stelle allein macht I²C schon Sinn, denke ich, da mir die aufwändige Verdrahtung von den IO Pins erspart bleibt.
Allein der ADC muss messen können auf welchem Steckplatz der µC steckt und dementsprechend der Code abzweigen. Theoretisch könnten dann auch nur einer gesteckt sein, wenn es im Code abgefangen werden kann und die jeweiligen Berechnungen der anderen Steckplätze dann übernommen werden können.
Wichtig wäre hier jetzt noch zu erwähen das auf allen Slaves der selbe Code laufen wird, und allein durch die ADC-Messung,dann eine Slave-Adresse zugewiesen werden würde. Der Master wäre dann der der auf maximal 6 bekannte Slaves scannt und nachdem alle Slaves identifiziert wären würde ich vermutlich nur noch mit einem General-Call arbeiten damit alle Slaves die selben Daten zur Berechnung erhalten.
Das alles ist noch theoretischer Natur - ich habe momentan nur zwei identische Arduino-ProMini Clone und hatte mich eigentlich in der Planung auf TTL RS232 bisher erfolglos "eingespielt".
Aber ich merke schon I²C hat da einfach Vorteile was auch die Rückmeldungen der Slaves betrifft. Und man ist nicht auf einige IO' sfixiert.
Vielen Dank und Grüße
Jörg
Lesezeichen