komunikacja międzyprocesorowa

Oct 12, 2005 4 Replies

Mam pytanie, jak najwygodniej połączyć dwa lub więcej procesorów (w domyśle z serii AT Atmela) Chodzi o wymianę danych, szybkość nie jest krytyczna. W przypadku większej liczby procesorów układ typu gwiazda, jeden centralny procesor (mocniejszy) który komunikuje się na zewnątrz poprzez UART i ma dołaczone 1 do 3 słabszych procesorów wykonujących pomiary, przeskalowanie pomiarów i wysyłających dane do głównego procka.



Najprościej byłoby po UARcie, ale nie chcę go zajmować, podobnie SPI będzie zajęte przez przetworniki przy tych mniejszych procesorach.



Pomysł mam taki żeby zrobić minimagistralę na 2 3 liniach i przesyłać szeregowo, przy czym obsługa programowa protokołu.



Co o tym sądzicie i ew sugestie, pomysły?



Witam,

Ja u siebie zrobilem komunikacje po I2C - z tym ze moje procki (PIC) maja wbudowane sprzetowe kontrolery I2C. Dla sygnalizacji danych z prockow Slave do Mastera dalem dodatkowa linie. Jesli nie planuje sie inicjalizacji transmisji przez slave to wystarczy samo I2C. Mysle, ze wlasna komunikacja szeregowa jest OK, tylko dobrze byloby ja zrobic z mozliwoscia wstrzymywania (statyczna) przeplywu danych na czas obslugi innych krytycznych czasowo procedurek. Ale to juz Twoje zmartwienie :-)

A two-wire serial interface? Support wbudowany w procek, mozliwosc adresacji wielu urzadzen, automatyczne rozpoznawanie adresu itd.

Jack Houseman napisał(a):

A po co ta kombinacja z dodatkową linią ? Bo rozumiem, że te slave'y tez coś same z siebie mają przesyłać, czyli multimaster sie z tego robi, a to sam protokół przecież obsłuży.

Taki protokol trzeba dopiero napisac (ja przynajmniej nie posiadam, a pewnie gdyby nawet byl, to nie pasowalby do reszty programu i trzebaby po swojemu przystosowywac) - a latwiej to zrobic z dodatkowa linia, zwlaszcza, ze jest akurat wolna :-)

A szczerze mowiac to po prostu nie przyszlo mi to do glowy :-) Niestety uklad juz dziala i nie bede teraz przerabial dla sztuki.

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required