[Risolto] Collegare altro microcontrollore ad Arduino

Buona pasqua a tutti. Ho un microcontrollore che ha delle uscite, simili a quelle di Arduino, che vanno a +5v quando sono attive, con un amperaggio massimo simile a quello di arduino sui 40 mA. Queste uscite vanno a pilotare un optoisolato con un assorbimento di pochi mA. Volendo monitorare una uscita di questo microcontrollore, mettendo in comune il negativo di Arduino e di questo microcontrollore, posso collegare l'uscita di questo con una entrata di Arduino? Grazie. Carlo.

certo, però di solito si usano i pin i2c, SPI o UART(seriale) in modo da avere già un protocoloo p er la ocmunicazione, possibilemente gestito in hardware, così non si sprecano troppi cicli cpu o spazio ram/sketch per la comunicazione.

Ok, grazie. Per controllarlo devo fare così proprio perchè di questo microcontrollore non conosco il protocollo di trasmissione (che usa tra l'altro probabilmente RS485). Ciao. Carlo.

il datasheet del microcontrollore che vuoi usare sicuramente ti dice che protocolli usa. in qualsiasi caso nessun problema anche a fare così, fin tanto che non crei casini con differenti voltaggi.

Non si trova il datasheet perchè è una piattaforma hardware simile ad Arduino, ma non open source.
Sto comunque tentando di capire il protocollo usato leggendo in seriale durante le operazioni eseguite.
Per ora comunque grazie, il quesito del topic me l’hai risolto. :smiley:
Ciao, Carlo.

no, gli arduino usano un chip della Atmel, che NON è opensource, ma comunque i datasheet si trovano. Lo stesso vale per TUTTI i microcontrollori, gli unici sono quelli fatti fare apposta ma allora stai combattendo una battaglia impossibile. Come fai a programmarlo se non sai che registri e periferiche possiede?

Bhè, allora ti racconto tutto... XD Per interagire con questa piattaforma hardware ho il suo programma, posso dargli l'indirizzo, aprire o chiudere gli 8 ingressi e le 8 uscite (dimabili 0 crossing) e molto altro. Ci sono poi i moduli sensore della temperatura etc... Fa parte di un sistema di moduli domotici con il quale circa 10 anni fa ho "cablato" il mio appartamento. E' formato da circa 15 moduli che comunicano tra loro e (tramite una interfaccia) con il programma nel pc via rs232. Per hobby volevo modificare, integrare ed aumentare i controlli ed i sensori, per qui mi sto costruendo un programma di controllo domotico utilizzando come hardware arduino e sono a buon punto. Volevo, però anche riuscire ad integrare bene i due sistemi ed a comandare con il mio (nuovo) programma anche la vecchia parte domotica (eliminando il vecchio programma originale). Recentemente sono riuscito a trovare che il vecchio sistema usa il bus rs485 a 187500 bauds ed infatti con arduino e shield rs485 sto riuscendo a leggere i bytes che invia. Ad esempio se una uscita è dimata al 50% nella stringa trasmessa trovo un byte di valore 50 (avrei pensato 244 diviso due, invece va da 0 a 100). Al termine della stringa trovo 255. Non sono ancora riuscito a capire come calcola il byte di checksum (che è il penultimo byte), ma ci sto lavorando... Il "protocollo" di trasmissione è stato ideato da chi ha sviluppato quel sistema domotico allo stesso modo in cui io progetterò il mio, quindi non posso trovare datasheet... Ciao. Carlo.

quindi tutto dipende da come è stato fatto il firmware di quel micro.

Tu ora vuoi fare una cosa detta "retroingenierizzazione", ed è abastanza compliata. per iniziare usa arduino o qulache software apposito come "man in the middle" per osservare i dati comunicati dal pc a questo sistema, cosa che mi pare stai già facendo.

Poi quello che puoi fare dipende solo da che comandi riesci a recuperare.

per la checksum prova a fare un xor di tutti i byte. Ciao Uwe