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



Teraz jest 19 sty 2026, o 05:22


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 8 ] 
Autor Wiadomość
PostNapisane: 19 cze 2015, o 13:09 
Offline
Użytkownik

Dołączył(a): 22 paź 2014
Posty: 72
Pomógł: 0

Witam
Mam problem z SPI w moim układzie. Schemat poniżej. Od wczoraj próbuję uruchomić ten fragment układu i nie udało mi się to do tej pory. Pomierzyłem miernikiem i wszystkie piny rejestrów są połączone z procesorem (MOSI, SCK, LATCH, PWM). Nie wiem co jest źle i liczę, że ktoś tutaj podrzuci mi jakiś pomysł. Z góry dziękuję za wszelką pomoc.
Pin PWM ma docelowo służyć do regulacji jasności świecenia diod.

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


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


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


Załączniki:

Aby zobaczyć załączniki musisz się zalogować. Tylko zalogowani użytkownicy mogą oglądać i pobierać załączniki.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 cze 2015, o 14:01 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 04 cze 2014
Posty: 855
Lokalizacja: pod Warszawą
Pomógł: 58

cześć

spróbuj pin OE w scalaku 74595 dać na próbę na masę bo coś z tym PWM-em może być nie tak - oczywiście odłącz najpierw od procka....

pozdrawiam

_________________
Pomóżcie mi stanąć na nogi



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 cze 2015, o 14:33 
Offline
Użytkownik

Dołączył(a): 22 paź 2014
Posty: 72
Pomógł: 0

Zauważyłem ciekawą rzecz, mianowicie podłączyłem dodatkową diodę do pinu PD0 na kablach i próbuję dalej programować i szukać co się dzieje. W każdym programie zmieniam stan diody, żeby widzieć czy się program wgrał. Dioda zawsze zmienia stan tak jak powinna, a diody podłączone do 595 nigdy. Przypadkiem zauważyłem, że gdy odłączę programator od USB i podłączę ponownie to diody podłączone do rejestru świecą się tak jak powinny. Nie wiem jak to zinterpretować? Mam problem z latchem?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 cze 2015, o 15:58 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 09 gru 2014
Posty: 1540
Pomógł: 269

Wszystko pięknie, ale zabrakło Ci chyba najważniejszego - pętli nieskończonej
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


w pliku main.c

Tutaj znajdziesz poradnik z dołączonym kodem źródłowym:
http://mirekk36.blogspot.co.uk/2013/09/rejestr-przesuwny-74595-podstawy.html


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 cze 2015, o 16:54 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 29 sty 2012
Posty: 777
Lokalizacja: Karpicko k. Wolsztyna
Pomógł: 197

anshar napisał(a):
Wszystko pięknie, ale zabrakło Ci chyba najważniejszego - pętli nieskończonej

Słuszna uwaga. Ja dodam jeszcze jedną.

Po pinach SPI wnioskuje, że używasz Atmegi32. Ustaw pin SS (PB4) jako wyjście albo wejście podciągnięte do VCC. Pinu tego nie musisz używać ale musi on być ustawiony w jednym z tych dwóch stanów. Jest to konieczne aby procek działał jako Master.
Gdy pin SS jest ustawiony jako wejście to stan niski na tym pinie procek interpretuje, że jakiś inny Master chce nadawać i wtedy przełącza się na tryb Slave.
Ty ten pin masz ustawiony jako wejście pływające więc pewnie procek pracuje jako Slave a nie Master.

Polecam poczytać SS Pin Functionality w rozdziale Serial Peripheral Interface.


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 cze 2015, o 18:44 
Offline
Użytkownik

Dołączył(a): 22 paź 2014
Posty: 72
Pomógł: 0

Dziękuję za pomoc :) Problem rozwiązany. Nurtuje mnie jedynie fakt, że jak jakiś miesiąc temu zmontowałem sobie taki sam układ na stykówce to poszedł od strzała. Czy jeśli używałem tego pinu PB4 jako np. jako latch, albo pin do wyswietlacza LED, to on również spełniał swoje zadanie w SPI?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 19 cze 2015, o 20:23 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 29 sty 2012
Posty: 777
Lokalizacja: Karpicko k. Wolsztyna
Pomógł: 197

Zombol napisał(a):
Czy jeśli używałem tego pinu PB4 jako np. jako latch, albo pin do wyswietlacza LED, to on również spełniał swoje zadanie w SPI?
Jeśli był on ustawiony jako wyjście to tak.

Pin SS musi być ustawiony jako wyjście lub jako wejście podciągnięte do VCC.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 22 cze 2015, o 14:06 
Offline
Użytkownik

Dołączył(a): 22 paź 2014
Posty: 72
Pomógł: 0

Pojawił mi się kolejny problem. Próbuję wysterować 60 diod LED za pomocą 8 rejestrów i nie bardzo mi to działa.
Objawy są takie, że po wgraniu programu zapala się pewna ilość diod, a po wyłączeniu i włączeniu zasilania zapala się inna liczba diod. Za każdym podłączeniem jest to inna liczba świecących diod.
Z góry dziękuję za pomoc.

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


funkcja do wysyłania 64bitów
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  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 8 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 4 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:  
cron
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO