Vizitator TheAngel Postat Februarie 2, 2011 Partajează Postat Februarie 2, 2011 Salut.Am observat ca ATMEGA8 are 2 moduri de comunicare cu alte dispozitive: - Programmable Serial USART- 2 wire serial serial interface.As avea cateva intrebari:Intai sa presupunem urmatorul scenariu:2 sau mai multe uC care monitorizeaza si controleaza niste dispozitive1 uC MASTER, care trimite si primeste informatii de la celalalte uC, si in plus trimite si primeste informatii de la un PCsi acum intrebarile:- ce ar fi recomandat sa folosesc in comunicarea dintre microcontrolere- ce ar fi recomandat sa folosesc in comunicarea dintre microcontroler si PC.Cateva precizari suplimentare:- dinstanta intre uC-ul master si cel mai departat uC slave este de 20-30 metri- uC-ul master va comunica cu PC-ul pe USB (dar probabil printr-un adaptor serial USB)BONUS: unde gasesc un exemplu de schema electrica pentru legarea unui ATMEGA la PC prin serial ? (adica nu stiu exact nici de cate fire este nevoie)Multumesc anticipat. Link spre comentariu
godFather89 Postat Februarie 2, 2011 Partajează Postat Februarie 2, 2011 Pentru distanta dintre uC-uri de 20-30 metri recomand CAN. Atmega8-ul din pacate nu are CAN integrat. Insa poti folosi controllere CAN separate sau AVR-uri cu CAN integrat (AT90CANxxx). Ar mai fi i2c-ul insa nu cred ca merge la 20-30 metri fara ceva modificari la nivelele de tensiune. Pentru comunicarea dintre master si PC poti folosi un adaptor usb-serial cu nivel de tensiune TTL (pl2303, ft232, etc.) pe care il poti lega direct la uc (RX cu Tx si TX cu Rx). Link spre comentariu
danzup Postat Februarie 2, 2011 Partajează Postat Februarie 2, 2011 Recomand RS232 (adica folosind USART), poti folosi si pe distante mari chiar mai mult de 200 ..300metri .A. 3 fire sunt de ajuns pentru comunicatie RXD TXD si GNDb. nu exista master si slave la comunicatie RS232 google te ajuta ! Link spre comentariu
godFather89 Postat Februarie 2, 2011 Partajează Postat Februarie 2, 2011 Daca o sa mergi pe RS232 la comunicatia uc-uc atunci o sa trebuiasca sa mergi pe o configuratie gen "daisy chain" pentru o comunicare bidirectionala intre mai multe uc-uri. Link spre comentariu
bogdan_ Postat Februarie 2, 2011 Partajează Postat Februarie 2, 2011 Atentie putin la ce recomandati: I2C, asa cum ii zice si numele - inter IC - coomunication este facut pe distante mici, in general pe acceeasi placa. Este limitat practic la distante de ordinul centimetri pana la cativa metri. daca retin bine, pe baza limitei impusa de capacitate vreo 2-3m maxim. RS232 este ineficient de utilizat pentru ca ai nevoie de tensiuni +/-12V. Cel mai bine este sa folosesti RS485 in cazul asta. Asta pentru ca este mai usor de folosit decat CAN, care se preteaza la fel de bine pentru aplicatia ta. Daca ai un singur master care controleaza comunicatia si nu ai probleme de coliziuni, poti folosit o comunicare bidirectionala, semiduplex. Pe o linie de tipul asta de RS485 poti pune mai multe dispozitive. Adaptor ieftin de la seriala TTL la RS485 este SN75176. Ieftin, dar nu atat de performant ca ceva de genul MAX485. Totusi, banuiesc ca nu e relevant in aplicatia ta. Oricum, merge direct la 5V la care merge microcontrollerul, pentru transmisiune se foloseste o pereche de fire torsadate de tipul celor din cablu UTP. Informatii gasesti pentru inceput aici: http://www.lammertbies.nl/comm/info/RS-485.html Link spre comentariu
Postări Recomandate
Creează un cont sau autentifică-te pentru a adăuga comentariu
Trebuie să fi un membru pentru a putea lăsa un comentariu.
Creează un cont
Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!
Înregistrează un nou contAutentificare
Ai deja un cont? Autentifică-te aici.
Autentifică-te acum