| Author |
Message
|
krysikS Poziom 4

Joined: 18 Mar 2010 Posts: 8
|
#1
18 Mar 2010 09:27 ATmega32 i max485 ---> Trudne początki |
|
|
|
Witam
mam następujący problem.
W ramach projektu muszę podpiąć dwie płytki EVBavr05 (Propox = Link - Atmega32) miedzy sobą za pomocą MAX-a 485. No i w tym się zaczyna mój problem, ponieważ moja wiedza w tym temacie jest znikoma a przykładów jest też niewiele.
Byłbym wdzięczny gdyby ktoś też zaprogramował przykładowo płytkę slave i master prostym programikiem (w którym uruchamiając przerwanie na masterze reaguje na slave) i opisał komentarzami. Chciałbym to zrozumieć ponieważ muszę później zrobić dość skomplikowana relacje między płytkami.]
|
|
| Back to top |
|
 |
ksarim Poziom 14

Joined: 05 Sep 2006 Posts: 168 Location: Koszalin
|
#2
18 Mar 2010 12:02 Re: ATmega32 i max485 ---> Trudne początki |
|
|
|
Czyli chciałbyś dostać "kawę na ławę". Nikt za Ciebie nie napisze od początku programu. Nie tak to działa.
Jeżeli masz problemy z podstawami to jak chcesz później stworzyć bardziej rozbudowany program.
Napisałeś, że Twoja wiedza jest znikoma, czy robiłeś już jakieś projekty na ATmedze czy stawiasz pierwsze kroki ?
Komunikacja po RS485 jest naprawdę prosta i powinieneś sobie z tym bez problemu poradzić jeżeli robiłeś już jakieś projekty na uC. Mógłbym pomóc ale nie napisze za Ciebie całego kodu i raczej nikt taki się nie znajdzie.
|
|
| Back to top |
|
 |
Google

|
#
18 Mar 2010 12:02 |
|
|
|
|
|
| Back to top |
|
 |
krysikS Poziom 4

Joined: 18 Mar 2010 Posts: 8
|
#3
20 Mar 2010 13:20 Re: ATmega32 i max485 ---> Trudne początki |
|
|
|
Na Atmedze robilem parę projektów miedzy innym wizualizacje. Nie chodzi mi o gotowy programik, chodzi mi o przykładowy(najprostszy) na podstawie którego zrozumiałbym jak zaprogramować dwie ATmegi na rs-a bo czytałem o bicie i że powinien być również zastosowane opóźnienie, ale nie bardzo wiem jak to złożyć w całość. Narazie pracowałem na rs232 wiec tam większych problemów nie było. Chciałbym chociaż ruszyć aby sie komunikowały a potem już jakieś 2 testy napisze sam.
Narazie zrobiłem tak na oddzielnej płytce umieściłem MAX485 wyprowadziłem na goldpiny R0 i DI i podpiałem do nich PD0 i PD1 (czyli RxD i txD) tylko co dalej.
|
|
| Back to top |
|
 |
tmf Poziom 24

Joined: 12 Aug 2009 Posts: 4307 Location: Katowice
|
#4
20 Mar 2010 14:42 Re: ATmega32 i max485 ---> Trudne początki |
|
|
|
Najpierw sie zastanow czy to ma byc transmisja full duplex czy simplex. Jesli simplex to sprawa sie nieco komplikuje bo musisz jakos rozwiazac konflikty jesli jednoczesnie dwa procesory zechca nadawac. Chyba, ze jeden zawsze tylko odpowiada a nigdy nie inicjuje transmisji. W przypadku full duplex sprawa jest o tyle prostsza, ze nadajnik/odbiornik po prostu wykorzystujesz jako bufor do RS232 - tyle, ze potrzebujesz na jednej plytce dwa takie uklady. Ale za to w takiej sytuacji niczym to programowo nie odbiega od zwyklego RS232, z ktorym jak piszesz masz doswiadczenie. Dla simplex sterowanie jest podobne, z tym, ze potrzebujesz dodatkowego pinu IO okreslajacego kierunek transceivera - nadawanie/odbior.
|
|
| Back to top |
|
 |
krysikS Poziom 4

Joined: 18 Mar 2010 Posts: 8
|
#5
20 Mar 2010 15:53 Re: ATmega32 i max485 ---> Trudne początki |
|
|
|
Mam narzucone żeby było to zrobione na jednym MAX-ie , czyli wynika ze simplex. Chodzi głównie o to żeby za pomocą MODBUSa wysyłać z płytki master jakiś sygnał(powiedzmy zapalenie diody) a na slave dioda się zapalała po czym odpowiada (i wyświetla się jakiś napis na LCD mastera). To tylko przykładowa działanie.
A mówiąc o tym pinie to chodzi o (jakaś flage w oprograowaniu) czy o pina sprzętowego?. Jak tak to jak go podpiąć pod MAX-a?
Kurcze z tego co znalazłem na necie o rs45 to porobiła mi się straszna kaszana w głowie i dlatego takie pytania może banalne.
|
|
| Back to top |
|
 |
Google

|
#
20 Mar 2010 15:53 |
|
|
|
|
|
| Back to top |
|
 |
tmf Poziom 24

Joined: 12 Aug 2009 Posts: 4307 Location: Katowice
|
#6
20 Mar 2010 20:01 Re: ATmega32 i max485 ---> Trudne początki |
|
|
|
Ten dodatkowy pin jest potrzebny do przelaczenia transceivera RS485 z odbioru na nadawanie i vice versa. Natomiast jesli interesuje cie protokol MODBUS to sa jego implementacje na AVR - sprawa o tyle prosta, ze masz gotowce.
|
|
| Back to top |
|
 |
krysikS Poziom 4

Joined: 18 Mar 2010 Posts: 8
|
#7
23 Mar 2010 14:29 Re: ATmega32 i max485 ---> Trudne początki |
|
|
|
Podciągnąłem do DI i R0 wyjścia P1 (jednej wysyłanie) i P1 ( drugiej ---odbiór) oraz podcinałem dodatkowy pin. Teraz tylko mam pytanko czy podpiąc do MAX-a napięcie 3 v czy 5v ? (chyba że nie gra to większej roli)
|
|
| Back to top |
|
 |
Google

|
#
23 Mar 2010 14:29 |
|
|
|
|
|
| Back to top |
|
 |
ksarim Poziom 14

Joined: 05 Sep 2006 Posts: 168 Location: Koszalin
|
#8
23 Mar 2010 14:51 Re: ATmega32 i max485 ---> Trudne początki |
|
|
|
MAX485 jest zasilany napięciem 5V. Układ MAX3485 natomiast napięciem 3,3V.
| krysikS wrote: |
Podciągnąłem do DI i R0 wyjścia P1 (jednej wysyłanie) i P1 ( drugiej ---odbiór) oraz podcinałem dodatkowy pin. |
Mógłbyś to rozszyfrować bo nie bardzo rozumiem co zrobiłeś :)
|
|
| Back to top |
|
 |
krysikS Poziom 4

Joined: 18 Mar 2010 Posts: 8
|
#9
23 Mar 2010 15:09 Re: ATmega32 i max485 ---> Trudne początki |
|
|
|
Po dodaniu na płytce konwertera MAX485 linie RO i DI wyprowadziłem na goldpiny do których podłaczam PD0( slava) i PD1 (mastera) z JP18 (zamiast do JP5 odpowiadającego za RS232 [jest w dokumentacji płytki którą wyżej zamieściłem]).
Dodatkowy pin mikrokontrolera do sterowania kierunkiem (linie DE / ~RE z MAX485)- też jest.
|
|
| Back to top |
|
 |