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



Teraz jest 13 mar 2025, o 00:01


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 16 ] 
Autor Wiadomość
PostNapisane: 28 paź 2014, o 07:39 
Offline
Użytkownik

Dołączył(a): 29 sty 2014
Posty: 154
Pomógł: 4

Witam,
Proszę o pomoc abym mógł poprawnie komunikować się z matrycą led 8x8 na układzie max7219.
Na przykładzie poradnika Pana Mirka, przetestowałem w zestawie uruchomieniowym z Shield IO i wszystko pięknie działa.
Z matrycą led na max7219 - wgrywa się poprawnie, wyświetla wszystkie 64 diody a manipulując przy zatrzaskach coś reaguje. Piny z max7219 to:
vcc
gnd
clk
din > out
cs
Zapewne ja coś źle robię. Chciałbym mieć kontrolę nad jedną kolumną diod na początek. Proszę o ukierunkowanie mnie w tym temacie wg poniższego kodu
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: 28 paź 2014, o 12:56 
Offline
Użytkownik

Dołączył(a): 18 kwi 2013
Posty: 181
Lokalizacja: Kraków
Pomógł: 30

Ztego co pamiętam, bo kiedyś sie trochę bawiłem tymi układami, to MAX7219 wymaga na początku pewnej inicjalizacji - ustawienia trybu działania. Z tego co widzę wysyłasz na samym początku wartości 0xFF i 0x0F. Nie bardzo wiem co te wartości miały by ustawiać i w którym rejestrze układu. W inicjalizacji układu powinno się ustawić tryb dekodowania, zakres rejestrów które będą dekodowane, ustawić jaskrawość i oczywiście włączyć zasilanie układu. Wysłanie jakiegokolwiek znaku powinno się składać jakby z dwóch sekwencji - wysłanie adresu rejestru do którego ma być wpisany znak i potem kodu znaku.


Autor postu otrzymał pochwałę


Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 31 paź 2014, o 03:47 
Offline
Użytkownik

Dołączył(a): 29 sty 2014
Posty: 154
Pomógł: 4

mam taką matrycę led 8x8 diod(1088AS), którą chcę podłączyć testowo na płytce stykowej katodami przez rezystory 560Ohm do ULN2803 i 74HC595. Sterowanie wierszami na tranzystorach BD140. W pierwszej chwili chciałem podłączyć cztery takie matryce, ale wg schematu poniżej katody i anody są pomieszane na dwurzędowych 8-pinowych wejściach matrycy.
Na płytce stykowej byłaby straszna pajęczyna a sprawdzając bateryjką wg schematu zapalają się pojedyncze diody a nie całe wiersze. Proszę o podpowiedź, jeżeli podłączę katody wg pinów na schemacie, to resztę muszę zrobić programowo?, jakąś tablice znaków?
Dzięki za pomoc.
Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 31 paź 2014, o 09:35 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 03 mar 2014
Posty: 580
Lokalizacja: Jastrzębie-Zdrój
Pomógł: 71

milek22 napisał(a):
mam taką matrycę led 8x8 diod(1088AS), którą chcę podłączyć testowo na płytce stykowej katodami przez rezystory 560Ohm do ULN2803 i 74HC595.


Kolega ja mam malutkie takie matryce i na rezystorach 330ohm świecą widocznie, ale przy mocnym słońcu już nie widać. 560ohm to moim zdaniem będzie za dużo, pamiętaj, że przy matrycach wchodzi w gre multipleksacja, co obniża czas przepływu prądu przez diodę. A to oznacza, że możesz zwiększyć chwilowy prąd przez nią przepływający.

milek22 napisał(a):
W pierwszej chwili chciałem podłączyć cztery takie matryce, ale wg schematu poniżej katody i anody są pomieszane na dwurzędowych 8-pinowych wejściach matrycy.

Ja mam połączonych 10 :) 2x5 i uwierz mi jak kiedyś jedną obsługiwałem (na samym początku) to mi wystarczyło, teraz moja jest strasznie mała :) Rozmiar przydałby się przynajmniej 4x10 :D To, że są pomieszane to standard, do tego każda matryca jaką kupisz (innego rodzaju) będzie mieć inaczej te wyprowadzenia np. Ale tu akurat to masz dwa wyjścia:
1. Albo robisz wymiary i tworzysz płytkę PCB taką nakładaną z łączeniami na wiersze i kolumny (jak kiedyś będę miał czas to sobie do mojego chyba spróbuję zrobić),
2. Lutujesz wszystko na kabelkach, tu masz fotkę jak to u mnie jest zrobione "na partyzantkę":
Obrazek

milek22 napisał(a):
Na płytce stykowej byłaby straszna pajęczyna

Kolega zapewniam Cię, pomimo tego, że mam z matrycy 56 wyprowadzeń to na moich płytkach stykowych (2 wykorzystane) nie mam żadnych pająków :) Wszystko pięknie ładnie i czytelnie. To akurat jak złożysz zależy tylko i wyłącznie od Ciebie.

milek22 napisał(a):
a sprawdzając bateryjką wg schematu zapalają się pojedyncze diody a nie całe wiersze

Kolega i o to chodzi :) Ty masz mieć możliwość wysterowania każdej diody z osobna, a wszelkie inne "animacje" opierają się na zapalaniu kolejnych pikseli. Tzn. dokładnie mówiąc to w jednym cyklu multipleksacji zapalasz odpowiednie piksele danego wiersza.

milek22 napisał(a):
Proszę o podpowiedź, jeżeli podłączę katody wg pinów na schemacie, to resztę muszę zrobić programowo?, jakąś tablice znaków?

Tak wszystko robisz programowo. Sterowanie matrycami przy pomocy rejestrów przesuwnych jest jak dla mnie strasznie łatwe.
Generalnie to sterowanie opiera się na prostej zasadzie:
Ustawiasz wiersz który chcesz "zapalić", na katody wrzucasz odpowiednie dane (czyli punkt po punkcie) i "wrzucasz" to na wyświetlacz jednym zatrzaskiem :)
Do takiego sterowania będziesz potrzebował jeden rejestr na każdy wiersz oraz jeden na każdą kolumnę. Czyli tak jak u mnie 2x5 tj. 7 rejestrów + 5 ULNów.

Generalnie kolega jeżeli już nauczysz się zapalać Twój konkretny piksel, to poradniki o OLEDach stoją przed Tobą otworem, będziesz mieć taką konkretną bibliotekę że hej :) Ja jak zaczynałem to jeszcze ich nie było, a 90% roboty mojej jest tam przedstawione. A nawet Ci powiem, że niektóre funkcje to poprzerabiałem wg poradnika, bo są po prostu bardziej optymalne. W paczce adafruita masz nawet czcionkę (bez polskich znaków) z której ja też korzystam.

milek22 napisał(a):
Dzięki za pomoc.

Pomocy to dopiero będziesz potrzebował ;)

z Niebieskim pozdRowieniem,
Doman89



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 31 paź 2014, o 10:11 
Offline
Użytkownik

Dołączył(a): 29 sty 2014
Posty: 154
Pomógł: 4

Dzięki kolego, myślę zrobić tak jak na foto poniżej. Pierwszy etap części dla 1 matrycy. Jeżeli jest coś nie tak to mnie poprawcie. Oczywiście elementy nie połączone na schemacie. Mam matryce wpinane w gniazda 2x 8pin. Docelowo będę robił na ledach super flux. Rezystory dobiorę w trakcie testowania pojedynczej matrycy 8x8 led red. Mógłby kolega wrzucić foto pojedynczej matrycy z rejestrem przesuwnym i ULN-em?
Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 31 paź 2014, o 10:50 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 03 mar 2014
Posty: 580
Lokalizacja: Jastrzębie-Zdrój
Pomógł: 71

Kolega:

1. Wrzuciłeś obrazek tak niskiej rozdzielczości, że raczej nikt tego nie rozszyfruje ;) - popraw

2. Masz zdjęcie (niestety tylko telefonem) mojego układu dla matrycy 2x5 (innego nie mam), dodam, że na płytce jeszcze masz zasilanie (LM7805), czujnik temperatury (DS18B20), RTC (DS1307), czujnik podczerwieni (TSOP):
Obrazek

Do płytki stykowej to trzeba z sercem podchodzić, jeżeli chce się na niej rozbudowane układy budować. Inaczej zgubisz się w gąszczu kabli, a nie daj Boże jeden kabelek zacznie nie stykać. Można wtedy rwać włosy z głowy :)

z Niebieskim pozdRowieniem,
Doman89



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 lis 2014, o 00:30 
Offline
Użytkownik

Dołączył(a): 29 sty 2014
Posty: 154
Pomógł: 4

Podziwiam kolegę, takie dzieło i wszystko działa, bez zwarcia. Na zdjęciach widzę co najmniej 9 płytek stykowych. Ja chcę przetestować jedną lub dwie matryce na płytce i jak będzie oki, to zrobię wielokrotność układu na pcb ale zamiast ULN-ów i tranzystorów BD140, użyję jakieś SCT i P-MOSFET-y.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 3 lis 2014, o 00:40 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 03 mar 2014
Posty: 580
Lokalizacja: Jastrzębie-Zdrój
Pomógł: 71

milek22 napisał(a):
Na zdjęciach widzę co najmniej 9 płytek stykowych.


W woli ścisłości to 2 płytki ;)

Jedna z nich to taka:
http://electropark.pl/plytki-stykowe/725-plytka-stykowa-3220-pol-5901000725007.html

z Niebieskim pozdRowieniem,
Doman89



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 lis 2014, o 02:24 
Offline
Użytkownik

Dołączył(a): 29 sty 2014
Posty: 154
Pomógł: 4

Koledzy, udało mi się zrobić testową wersje matrycy 8x8 led o której wyżej pisałem. Użyłem 74HC595+ULN2803+8 rezystorów połączonych z katodami. Do wierszy użyłem tranzystorów pnp BC640+ 8 rezystorów. Wszystko działa, mam programową kontrolę po SPI nad testową matrycą z wyjątkiem pinu "CS" w SPI, który po podłączeniu wygasza matrycę, ale pewnie mam błąd w kodzie.
Matrycę testową zrobiłem wg schematu:
Obrazek
Zamierzam teraz wykorzystać posiadane matryce, a mam ich 12 sztuk 8x8 led.
Mam problem zdobyć układy SCT i tranzystory P-MOSFET. Chciałbym zminiaturyzować płytkę pcb i użyć posiadanych układów(SMD) - 74HC595, ULN2803 oraz rezystorów SMD. Do sterowania wierszy użyję tranzystorów BD140.
Proszę o pomoc czy konieczne są rezystory od strony katod do ULN2803???
Drugie pytanie, czy w sytuacji, kiedy chciałbym zbudować dwie linie matryc, czyli w każdej linii po 6 matryc 8x8, muszę użyć 16 tranzystorów, czy w inny sposób można to zrobić??? Połączenie równoległe tranzystorów z anodami nie wydaje mi się dobrym rozwiązaniem, gdyż chciałbym mieć kontrolę nad każdą diodą z tablicy znaków? Proszę o wszelkie sugestie. Bardzo dziękuję



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 lis 2014, o 09:18 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 03 mar 2014
Posty: 580
Lokalizacja: Jastrzębie-Zdrój
Pomógł: 71

milek22 napisał(a):
Proszę o pomoc czy konieczne są rezystory od strony katod do ULN2803???

Rezystory dajesz od strony katod, jeżeli zastosujesz w drugą stronę, czyli pomiędzy wspólną anodę wiersza a tranzystorem, to efekt będzie kiepski. Tzn. diody będą Ci świecić z mocą zależną od ilości zapalonych pikseli w wierszu. Czyli stricte jeden piksel mocno, linijka już z ok 10 pikselami słabo.

milek22 napisał(a):
Drugie pytanie, czy w sytuacji, kiedy chciałbym zbudować dwie linie matryc, czyli w każdej linii po 6 matryc 8x8, muszę użyć 16 tranzystorów, czy w inny sposób można to zrobić??? Połączenie równoległe tranzystorów z anodami nie wydaje mi się dobrym rozwiązaniem, gdyż chciałbym mieć kontrolę nad każdą diodą z tablicy znaków? Proszę o wszelkie sugestie. Bardzo dziękuję

Kolega każdy wiersz, to jeden tranzystor. Czyli jeżeli w wierszu będziesz miał 2 matryce 8x8 to musi być 16 tranzystorów jeżeli chcesz mieć właśnie kontrolę nad każdą jedną diodą w tablicy.

z Niebieskim pozdRowieniem,
Doman89



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 11 lis 2014, o 00:24 
Offline
Użytkownik

Dołączył(a): 29 sty 2014
Posty: 154
Pomógł: 4

Jeszcze raz dzięki kolego za info.
Jeszcze nie rozumiem jak połączyć i sterować matrycą. Z uln-ami wszystko rozumiem. Narysowałem na szybko taki schemat, zapewne źle a chciałbym wiedzieć jak podłączyć i sterować prądowo sct2167 bo piny mają podobne z hc595.
Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 12 lis 2014, o 09:54 
Offline
Użytkownik
Avatar użytkownika

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

cześć

dlaczego pomieszałeś sterowanie anod z katodami i odwrotnie?
czeka Cię straszna gimnastyka w kodzie programu

generalnie to przez jeden 74xxxxx steruj wszystkimi katodami a przez drugi anodami - teraz masz pomieszane

_________________
Pomóżcie mi stanąć na nogi



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 12 lis 2014, o 11:00 
Offline
Użytkownik

Dołączył(a): 29 sty 2014
Posty: 154
Pomógł: 4

cześć,
Na schemacie pomieszałem anody z katodami, gdyż rysowałem na szybko dla przejrzystości. Dzięki za pomoc, bowiem czytając notę katalogową obu układów od razu zauważyłem, że mają takie same wejścia i wyjścia a piny nieznacznie się różnią i nie rozumiem o co tu chodzi. Teraz wiem więcej, tylko tak: steruję katodami z hc595 przez SPI a co z anodami połączonymi do SCT2167? Pewnie Piny MOSI, SCK, SS podłączam do portów w ATmega32 i przypisuje je w eclipsie?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 12 lis 2014, o 11:54 
Offline
Użytkownik
Avatar użytkownika

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

ale czego nie wiesz?
czym różni się 74595 od SCT2167?

poczytaj noty to będziesz wiedział
generalnie SCT jest nie tylko rejestrem, ale i driverem - cytat z noty - "Out(0..7) open drain, constant current outputs"

swoją drogą fajny scalaczek tylko zastanów się czy jest Ci potrzebny.....

_________________
Pomóżcie mi stanąć na nogi



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lis 2014, o 12:17 
Offline
Użytkownik

Dołączył(a): 29 sty 2014
Posty: 154
Pomógł: 4

Czy taki schemat zadziała? Z SCT na bramki PMOSów i połączone z katodami a anody do HC595? W zależności od ilości diod muszę gdzieś dać rezystor? Pin 13 OE ma iść do GND? Czy Vcc na PMOSach jest ok?
Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 lis 2014, o 16:10 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 13 maja 2013
Posty: 288
Ostrzeżenia: -2
Pomógł: 23

Rezystory miedzy piny rejestrow a anody Twojej matrycy.



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: 16 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 2 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