Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 18 mar 2026, o 15:04


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 6 ] 
Autor Wiadomość
PostNapisane: 24 wrz 2015, o 11:18 
Offline
Użytkownik

Dołączył(a): 01 sie 2015
Posty: 40
Pomógł: 0

Witam!
Napisałem program do komunikacji między dwoma prockami z wykorzystaniem sprzętowego SPI na at128(Master) i at8(Slave). Jak na razie celem było wysłanie z at128 ramki(10bajtów) do at8 która po analizie odebranych danych ma włączać lub wyłączać przekaźnik. Program działa w ten sposób że pierwsza część wykonuje się prawidłowo czyli at8 po odebraniu pierwszej ramki włącza przekaźnik, ale gdy at128 wyśle kolejną ramkę wyłączającą pk to at8 nie reaguje.
Proszę więc o pomoc bo nie wiem dla czego at8 nie chce odbierać kolejnych ramek, czy problem tkwi w procedurze nadawczej czy podczas odbioru na drugim procku.

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 24 wrz 2015, o 19:02 
Offline
Użytkownik

Dołączył(a): 01 sie 2015
Posty: 40
Pomógł: 0

Chyba już działa!
Po każdej funkcji sprawdzającej odebraną ramkę w at8(Slave) wstawiłem zerowanie całej tablicy (bufora odbiorczego "byte[10]").
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Ale to chyba powinno być obojętne co było w buforze odbiorczym bo przecierz i tak jest na bierząco zastępowane nowymi przychodzącymi bajtami, tak?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 25 wrz 2015, o 11:15 
Offline
Użytkownik

Dołączył(a): 01 sie 2015
Posty: 40
Pomógł: 0

Przerobiłem kody żeby wysyłać te same ramki w drugą stronę tzn. z at8(slave) do at128(master) i tak samo sterować przekaźnikiem. Niestety at128 nie ma nawet najmniejszego zamiaru słuchać się at8- po prostu brak reakcji na odbierane dane :(
Proszę więc o podpowiedź, czy dla komunikacji SLAVE>MASTER potrzebne są trochę inne funkcje, ustawienia rejestrów, co jest nie tak ?
Oto kody:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 25 wrz 2015, o 12:57 
Offline
Użytkownik

Dołączył(a): 01 sie 2015
Posty: 40
Pomógł: 0

Znalazłem małą ale może ważną różnicę w PDF'ach atmegi128 i atmegi8 dotyczące połączenia układów MASTER i SLAVE:

Atmega128:
Obrazek

Atmega8:
Obrazek

Ja się tak za bardzo nie znam ale widzę że jest różnica w połączeniu linii SS w obu prockach. Czy to może być powodem mojego problemu?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 25 paź 2015, o 19:42 
Offline
Użytkownik

Dołączył(a): 23 lut 2015
Posty: 69
Pomógł: 1

Zobacz poradnik Mirka
http://mirekk36.blogspot.de/2013/12/avr ... wolno.html
od minuty 57 mówi o MISO MOSO w Atmedze 128



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 25 paź 2015, o 20:09 
Offline
Użytkownik

Dołączył(a): 04 paź 2011
Posty: 8631
Pomógł: 338

http://www.sunduino.pl/wordpress/licho-nie-spi/

zobacz też to



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 6 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 0 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO