Ciao a tutti, sto cercando di far comunicare due schede arduino, una duemilanove e un mega 2560 tramite protocollo modbus-rtu. Per il protocollo sto usando queste librerie:
http://sites.google.com/site/jpmzometa/arduino-mbrt
Ho predisposto l'arduino 2009 come slave. Ho testato il suo funzionamento tramite un master su pc e funziona benissimo. A questo punto iniziano i problemi.
Con l'at-mega 2560 volevo fare il master. Ho collegato le due schede tramite seriale, visto che il mega ha piu' seriali ho usato la Seriale 1. I collegamenti dovrebbero essere giusti:
Tx1 Mega -> Rx Duemilanove
Rx1 Mega -> Tx Duemilanove
Gnd Mega -> Gnd Duemilanove.
Le due schede comunicano ho fatto delle prove. Il problema è che quando lancio il comando dal master, mi ritorna l'errore time-out e non riesco a capire l'errore. Il master compone il messaggio in maniera esatta, ho fatto una prova e il messaggio che arriva è corretto.
Allego i due programmi che ho utilizzato,master e slave.
Grazie a tutti in anticipo
mbslave_pde_example.pde (22 KB)
modbus_rtu_master.pde (15 KB)