Witam
Jako że od długiego czasu czytam to forum i korzystam z informacji na nim zawartych postanowiłem dodać też coś od siebie.
Oto jedna z moich wielu konstrukcji (mam w planie zamieścić ich tutaj nieco więcej).
Z przyjemnością prezentuję animowana tablice reklamową LED.
Postaram się kolejno przejść przez wszystkie punkty zawarte w regulaminie gdyż nie chcę go łamać za pierwszym razem.
Z założenia tablice miały być głównie na sprzedaż. Prezentowana tutaj wersja jest już 4 konstrukcją (nie 4 sztuką ale 4 konstrukcją, poprzednie były klasyczne czyli tylko tekst+klawiatura na PS/2). Na poprzednich wiele się nauczyłem co pozwoliło na tak ciekawą konstrukcję. W kwestii projektowej chodziło mi głównie o jak najprostszą konstrukcję o jak najlepszych parametrach.
Konstrukcja opiera się na uC ATMega32 w obudowie TQFP44.
Budowa jest modułowa i składa się z 1 szt. panelu głównego który jest jednocześnie panelem wyświetlającym dzięki czemu brak na niej martwych pół pod którymi ukryte jest sterowanie.
Do panelu głównego dopinane są panele wyświetlające w ilości do 9 szt.
Wymiary paneli to 120x240mm co daje nam tablicę o długości 1,2m i szerokości 0,24m.
Parametry techniczne:
- układ sterujący: ATMega32
- pamięć: karta pamięci SD 2GB
- układy sterujące LEDami 74HC574
- podziałka LEDów 30mm
- każda klatka posiada sumę kontrolną sprawdzaną przed wyświetleniem obrazu
- pobór około 3A przy 1,2m i zaświeconych wszystkich LEDach
- zasilanie 5V
Animacje i napisy tworzone są przy użyciu napisanego przeze mnie kreatora.
Po zaprojektowaniu animacji plik zapisujemy na kartę pamięci i wkładamy do tablicy. Obszar roboczy kreatora jest tworzony dynamicznie dzięki czemu łatwo przystosować go do tablicy o innej ilości paneli niż 10szt.
Poniżej film z działania tablicy:
Zamieszczam również kilka dodatkowych zdjęć:
Panele przed spięciem w całość (połączenia to goldpiny+gniazda).
Widok pojedynczego panelu.
Każdy Panel przed przylutowaniem LEDów jest malowany czarnym sprayem matowym 2x.
Panel od strony miedzi. Cynowanie chemiczne w SENO.
Kreator animacji oraz napisów. Możliwe jest klikanie na poszczególnych LEDach co je zaświeca lub gasi. Można dosłownie rysować po tablicy w kreatorze.
Przydało by się jeszcze foto panelu głównego ale nie zrobiłem go wcześniej a teraz chwilowo nie mam dostępu do aparatu. Postaram się go dodać kiedy będzie taka możliwość.
Reasumując.
Konstrukcja bardzo ekonomiczna.
Koszty to:
- płytki 10szt. 60zł (trawienie i cynowanie wykonałem sam)
- LEDy 6cd 70stopni 320szt. 100zł
- 74HC574 40szt. okazyjnie na All..ro.pl 20zł
- reszta czyli uchwyt na kartę SD, karta, zasilacz, lakier w sprayu tranzystory, ATMega32, rezystory około 100zł
- około 1 miesiąca budowy prototypów, zmagań z różnymi błędami (pomagali mi w tym również koledzy z tego forum), pisaniu wsadu oraz programu do tworzenia animacji ale to trudno wycenić.
Wszystkie koszty mają wliczoną przesyłkę. Razem mamy około 280zł. To całkiem niewiele jak za tak funkcjonalną tablicę.
Jest bardzo ładnie czytelna w świetle słonecznym. Nie używa multipleksowania. Jestem z niej bardzo zadowolony. Jak dla mnie najważniejsze to LEDy o dobrej światłości oraz szerokim kącie świecenia.
Na razie nie planuję udostępniania wsadu, źródła ani schematu.
Zapomniałem dodać że wsad napisany jest jak to przystało na zapalanie i gaszenie LEDów w języku Bascom
Na razie nie planuję udostępniania wsadu, źródła ani schematu.
To może w ogóle nie publikować? Sorki, ale schemat to raczej nic specjalnego, a zasadniczo daje orientację co popełniłeś. Źródło????
Swoją drogą ponad 2 razy czytałem i szukałem w tekście informacji o sterowaniu, bo nie wierzyłem, że umieściłeś jeden układ na 8 diod Jednak multipleksowanie to ogromne oszczędności. Dlaczego akurat takie sterowanie?
Ani też słowa nie ma o tym jak w jakim formacie zapisujesz dane na karcie SD.
W sumie to do komentarza zostaje wygląd, a i tu jest problem, bo zdjęcia nie są zbyt precyzyjne(światło).
michal - nie bulwersuj się. Jest to bardzo przeciętna konstrukcja bo widać że sterowanie jest "zwykłe" czyli bez multipleksowania. Wszyscy wiedzą że da się to zrobić lepiej, włącznie z kilkoma stopniami jasności.
johny - narzekacze zawsze się trafią ale widać że dobrze przyłożyłeś się do konstrukcji i sporo się nad tym nasiedziałeś. Skoro masz już sprzęt + soft to teraz zostało ci zrobienie obudowy (blacha alu + laserowo cięte oczka na led + gięcie), pakujesz w ładne pudełko i sprzedajesz Modułowa konstrukcja + wyświetlanie animacji + soft wczytujący dane z animowanych gifów z karty SD i robisz fajne mini-telebimy reklamowe Z czasem sobie udoskonalisz do lepszych konstrukcji. Na razie startuj z tym co masz (tylko uważaj na licencje FAT32, użytkowania kart SD i biblioteki do obsługi kart).
Ja muszę sprostować, bo może niezbyt jasno się wyraziłem.
Jak najbardziej doceniam wkład włożony w zbudowanie tego, co więcej wydaje się, że estetycznie wygląda całkiem porządnie.(problem z doświetleniem zdjęć)
Problem jest w prezentacji, brakuje kilku wątków na które zwracam uwagę. Jednak od publikacji trochę się wymaga.
Sterowanie jasnością można prosto zrobić sterując napięciem wejściowym co też nie jest specjalnie trudne, tym bardziej, że w praktyce nie potrzeba więcej jak 2-3 stopnie jasności.
Co do licencji to BASCOM wersja demo też nie do końca można komercyjnie wykorzystać, ale to jakiś ekspert musiał by się wypowiedzieć.
To może w ogóle nie publikować? Sorki, ale schemat to raczej nic specjalnego, a zasadniczo daje orientację co popełniłeś.
Skoro to nic specjalnego to po co publikować?
Nie mam ochoty i nie publikuję.
michal-michalik wrote:
umieściłeś jeden układ na 8 diod
Jeśli zapoznasz się z notą katalogową tego układu to nie będziesz widział w tym nic dziwnego.
Dopuszczalny prąd (nie pamiętam dokładnie a nie chce mi się zaglądać do datasheeta) wynosi 25 lub 35mA na pin a diody działają na prądzie około 10mA.
michal-michalik wrote:
Jednak multipleksowanie to ogromne oszczędności. Dlaczego akurat takie sterowanie?
Czy kolega zapoznał się z kosztorysem?
Za 40szt. 74HC574 dałem 20zł. Gdzie tu szukać oszczędności i pchac się w dużo trudniejsze w sterowaniu i gorsze parametrowo multipleksowanie. Główny koszt to i tak LEDy a tego sie multipleksowaniem nie zaoszczędzi no chyba że będziemy budowac wyświetlacz widmowy.
Dzięki temu że nie mam multipleksowania zapalam całą tablicę a w tym czasię odczytuję kolejną klatkę z karty SD. Gasze na chwilę całość, wpisuję nowe dane do rejestrów i zapalam tablicę. Dzięki temu całość działa szybko bez migania i innych minusów multipleksowania.
michal-michalik wrote:
Ani też słowa nie ma o tym jak w jakim formacie zapisujesz dane na karcie SD.
O czym tutaj pisać? Kolumna ma 8 LEDów więc nie trzeba być doktorem informatyki żeby się kapnąć że 1 bajt to jedna kolumna. Rejestry są szeregowe więc podaję ten bajt na port i daję sygnał CLK. Całość powtarzam tyle razy ile jest kolumn. Ostatni bajt pomnożony przez 10 to liczba ms wskazująca jak długo ma świecić poszczególna klatka. Suma kontrolna działa na zwykłym XORowaniu (wiem prymitywne ale wystarczające).
michal-michalik wrote:
bo zdjęcia nie są zbyt precyzyjne(światło)
Przepraszam ale tylko takim aparatem dysponuję. Nie skończyłem też ASP więc może trochę nieładne te zdjęcia mi wyszły
Podsumowując. Krytykować jest łatwo. Owszem krytyka jest dobra jeśli coś wnosi. Dla mnie ten post to chyba tylko w celu pokazania swojej wyższości nad gościem który zamieszcza tutaj coś po raz pierwszy i wypadało by mu pokazać że jest osoba która zrobiła by to lepiej ale jej się nie chce.
Saabotaz wrote:
soft wczytujący dane z animowanych gifów z karty SD
O tym nie pomyślałem. Dzięki za wskazówki.
Saabotaz wrote:
tylko uważaj na licencje FAT32, użytkowania kart SD i biblioteki do obsługi kart
I tutaj jest właśnie ból. Dlatego nie pcham się za bardzo w sprzedaż. Na razie konstrukcja zostanie tylko w kręgu znajomych a odsprzedam tylko kilka sztuk aby zwróciły mi się koszty prototypów.
I tutaj jest właśnie ból. Dlatego nie pcham się za bardzo w sprzedaż. Na razie konstrukcja zostanie tylko w kręgu znajomych a odsprzedam tylko kilka sztuk aby zwróciły mi się koszty prototypów.
Powiem ci tak z własnego doświadczenia - jeśli siedziałeś nad czymś np 4 miesiące, działa i wygląda bajerancko, znasz sie na tym co robisz to po prostu zarabiaj na tym. Dodatkowa kasa zawsze się przyda. Nie odkładaj tego na półkę, z pracy u kogoś dorobisz się tylko garba. Zrobiłeś dobry sprzęt, rozbudowywalny i masz nawet soft na PC. Czyli duuuuża część roboty już za tobą.
Za zarobioną kase kup legalnego Bascoma (nie jest przesadnie drogi). Używaj tylko FAT16 i kart MMC. Napisz własną bibliotękę do obsługi kart (masz na elektrodzie mój poradnik obsługi kart, wszystko idealnie wyjaśnione oraz bascomowy gotowiec w asm). No i działaj
Johny_Bit a jak by podać sygnał PWM na pin OE układu 74HC574 to niemożna by było sterować jasnością LED? Nie widzę schematu ale wydaje mi się ze za pomocą tego pinu można by coś zdziałać w tej sprawie
Johny_Bit a jak by podać sygnał PWM na pin OE układu 74HC574 to niemożna by było sterować jasnością LED? Nie widzę schematu ale wydaje mi się ze za pomocą tego pinu można by coś zdziałać w tej sprawie
Można by ale trzeba by go wyprowadzić do procesora. Nie ma takiej potrzeby gdyż na każdej płytce jest tranzystor który gasi całość na czas przerysowywania klatki (gaszenie sygnałem OE odpada gdyż układy są połączone w taki sposób że następny układ pobiera dane z wyjścia poprzedniego). Oczywiście wystarczy dopisać taką funkcję w programie ale jakoś nigdy mi nie zależało na regulacji jasności.
Saabotaz wrote:
z pracy u kogoś dorobisz się tylko garba
Znam to od podszewki. Prowadzę własną działalność ale chyba zrezygnuje z elektroniki (za mały zysk w stosunku do nakładu pracy). Dwa lata pracowałem jako operator urządzeń technicznych a pięć jako technolog-konstruktor w dużej fabryce a co najważniejsze jestem w tym bardzo dobry. Mam na ukończeniu projekt dużej maszyny CNC i własnie z nią wiążę przyszłość. Programy CAD mam w 1 paluszku więc będę sobie projektował i wykonywał różne ustrojstwa a za mnie będzie pracować maszyna Jak skończę budowę podzielę się tutaj wynikami.
Saabotaz wrote:
Za zarobioną kase kup legalnego Bascoma
Mam kupiłem już dawno temu. Trochę tego robię więc lepiej nie ryzykować.
Johny - bo elektronikę produkuje się tylko taką której nie robią chińczyki. Chociaż wiem że trudno z czymś dobrym się wstrzelić.
Tak, to ten link. Napisanie własnej obsługi SD/MMC w Bascomie będzie banalne. Więcej posiedzenia jest z FATem, jest banalnie prosty (odczyt) ale na początku trudny do zrozumienia bo nikt łopatologicznie nie wytłumaczył o co chodzi (a ja nie mam czasu na kolejny poradnik).
Rzuciłem już okiem na Twój poradnik i powiem że kawał dobrej roboty.
Z FATem sobie poradzę bo jestem inż. informatyki a kolejne ułatwienie to fakt iż potrzebuję tylko odczyt.
Sam FAT faktycznie będzie wymagał żeby nad nim posiedzieć ale mając tak ładnie opisaną komunikacje to resztę dopiszę bez problemu. Całość w chwili obecnej zajmuje 60% pamięci z czego 25% to logo startowe i komunikaty o błędzie karty lub jej braku więc jest jeszcze sporo zapasu.
Na razie nie planuję udostępniania wsadu, źródła ani schematu.
To może w ogóle nie publikować? Sorki, ale schemat to raczej nic specjalnego, a zasadniczo daje orientację co popełniłeś. Źródło????
Niestety, ale z forum DIY powoli robi się stragan.
Co do statycznego wyświetlania - jest fajnie, bo proste w oprogramowaniu, diody świecą mocno, tylko nie ma możliwości rozbudowy. Co w przypadku większych paneli, np. 64x16? 128 rejestrów i 12A?
Przy odpowiednim multipleksowaniu diody wcale nie muszą świecić dużo słabiej, a zużycie mocy jest znacznie mniejsze - dla przykładu podświetlenie ekranu w telefonach komórkowych.
Z mojej strony sugestia - forget about BASCOM . Warto spędzić troche czasu na naukę C. Przy dobrym kodzie i włączonej optymalizacji kompilatora można zdziałać cuda, bez konieczności nauki assemblera. Zbudowałem już kilka takich tablic LED - po zastosowaniu kilku trików byłem w stanie odpalić 128x16 z rs232 i generatorem znaków na m8 (16MHz) wykorzystując ok. 50% czasu procesora (odświeżanie 300-400Hz) i ~3kB pamięci flash (+ czcionki), o czym w przypadku BASCOMa można jedynie pomarzyć .
Zgadza się, Bascom dobry do zabawy. Mamy C, za darmo, do komercyjnych projektów to korzystajmy z niego. Ja poznawałem C właśnie od prostych projektów typu ADC, dioda, UART, LCD. Fakt, Bascom robi czasem za nas dużo jednym poleceniem i za to go lubimy, ale jak obsługa ADC i Timera2 i LCD zajmowała 1,5kb w Bascomie, tak przy optymalizacji w C się zeszło dość nisko, w zasadzie 500b może to było, nie pamiętam dobrze, ale wyglądało lepiej.
ale jak obsługa ADC i Timera2 i LCD zajmowała 1,5kb w Bascomie, tak przy optymalizacji w C się zeszło dość nisko, w zasadzie 500b może to było, nie pamiętam dobrze, ale wyglądało lepiej
Słabe porównanie. Bascom tyle żre bo jest uniwersalny. Spróbuj wyświetlić np 2 bajtową liczbę na LCD w C. Najpierw musisz ją rozłożyć na pojedyńcze cyfry, potem wysłać. C to w zasadzie taki ładny assembler i nie ma co tu porównywać z łatwością programowania z Bascomem.
Gdyby zrobili Bascoma tylko z obsługą liczb dodatnich i lekko zmniejszyli uniwersalność (i wyrzucili wiele śmieciowych komend) to byłby porównywalny jakością z C.
Do projektów gdzie nie wymaga się krytycznej szybkości to Bascom pasuje bardzo dobrze. Tablice LED też można w nim robić, pod warunkiem że fragment sterowania led zrobi się jako wstawkę asm.
Aktualną tablicę na pewno też dałoby się przerobić na multipleksowanie. Obsługa karty bez problemu może być wykonywana w tle.
Przepuszczanie 3A przez pojedynczy styk goldpin to nie za dużo? Teraz to działa, ale z upływem czasu rezystancja styku wzrośnie i może się to zemścić.
To przy zapalonych wszystkich LEDach. Zazwyczaj świeci się około 70% przy wyświetlaniu tekstu. Poza tym 3A to nie jest jakiś powalający prąd.
Sh44dow wrote:
Niestety, ale z forum DIY powoli robi się stragan.
A widzisz tutaj gdzieś ofertę handlową?
Zrozumiałe jest że jeśli spędziłem nad czymś mnóstwo czasu nie udostępnię sobie ot tak całości projektu. Polska jest pełna leserów którzy tylko żerują na pracy innych a ja nie mam zamiaru pracować w czynie społecznym. Te czasy już minęły. W regulaminie jest jasno napisane że publikacja wsadu itp. nie jest obowiązkowa więc w czym problem? Szukasz kolego darmowego źródła dokumentacji? Jeśli nie to w jakim celu jest ten komentarz?
Sh44dow wrote:
nie ma możliwości rozbudowy
Mylisz się. Układ ma wyprowadzone 7 dodatkowych złącz CLK dzięki czemu możliwa jest rozbudowa do 8 wierszy. Maksymalna długość może wynieść 7,5m co jest związane z zastosowanym w źródle typem zmiennych (to też można rozbudować).
Sh44dow wrote:
Co w przypadku większych paneli, np. 64x16? 128 rejestrów i 12A?
Kolego ja nie chcę wyświetlać napisów tak wielkich żeby były czytelne z orbity okołoziemskiej. Z założenia tablica miała mieć max 1,2m (choć bez żadnych przeróbek można ją rozbudować do 7,5m podpinając tylko dodatkowe panele). Zasilanie większym prądem to nie problem. Wystarczy podzielić tablice na sekcje np po 10 paneli i do każdej doprowadzić zasilanie osobnym przewodem.
Sh44dow wrote:
Przy odpowiednim multipleksowaniu diody wcale nie muszą świecić dużo słabiej, a zużycie mocy jest znacznie mniejsze
Ot widzę że kolega jest bliski odkrycia perpetuum mobile. Zmniejsza ilość dostarczanej energii a światłość wzrasta. Czyży była mowa o sprawności powyżej 100%?
Fizyka jest nieubłagana dlatego światłość multipleksowanej tablicy w najlepszym dobrze zorganizowanym przypadku dorówna statycznej przy takim samym poborze prądu i tych samych LEDach. Same martwe czasy potrzebne na każdorazowe przepisanie wszystkich rejestrów do wyświetlenia poszczególnych wierszy już znacznie zaciemnią obraz.
Kolejny fakt jest taki że nie ma możliwości tak szybkiego odczytania danych z karty pamięci żeby nie zakłócić multipleksowania (przynajmniej nie na rodzinie AVR).
Zdaję sobie rację z przewagi C nad Bascomem ale nie o tym jest ten temat. Jak wspomniałem jestem inż. informatyki i C nie jest mi obcy ale Bascom znacznie upraszcza wiele rzeczy. Gdybym miał dużą firmę elektroniczna to pobawił bym się w C jeśli robił bym projekty które będą schodzić w 10 tysięcy sztuk. Ja zrobiłem sobie tablicę w Bascomie gdzie kod zajmuje 60% pamięci z czego 1/3 to logo i komunikaty więc po co ma szukać oszczędności w rozmiarze kodu?
Pozwolę sobie na pewną anegdotę gdyż niektóre uwagi przypominają mi tamte czasy.
Kiedyś pracowałem w dużej firmie. Chciałem się z niej zwolnić i szukać lepiej płatnej posady. Jako że byłem jednym z najlepszych pracowników kiedy chciałem się zwolnić pewien gość o pseudonimie "Mietełka" (kierownik działu nowych technologii) zaproponował mi podwyżkę o 100% pod warunkiem że zamiast się zwalniać przeniosę się z działu oprzyrządowania technicznego do jego działu nowych technologii. Propozycja była kusząca a pieniądze konkretne (załatwił mi jeszcze dofinansowanie na pokrycie 100% czesnego oraz dodatkowe 20 dni płatnego urlopu). Był w tym tylko 1 haczyk. Gość był strasznym debilem. Kierownikiem został przez znajomości partyjne a reprezentował sobą tyle co moja lewa skarpetka. Wszyscy mówili nie idź tam. Niestety skusiły mnie pieniądze.
Przepracowałem w tym dziale chyba 3 lata i to była najgorsza praca jaka miałem w życiu. Powiedziałem że już nigdy nie będę pracował z przełożonym debilem.
Gość normalnie latał w obłokach. Ciągle coś zmieniał w dokumentacji i dawał rady na poziomie przedszkolaka. Każdy kto miał kiedyś w ręce rysunek techniczny wie że zmiana choćby 1 szczegółu niesie za sobą zmiany całej dokumentacji (rysunki złożeniowe, montażowe, detaliczne).
Wyobraźcie sobie sytuację gdzie siedzicie nad ustalonym wcześniej z kierownikiem projektem przez tydzień. Kiedy juz kończycie on dochodzi do wniosku że jednak dokonamy pewnych zmian. To po co do ch..ja były te wszystkie ustalenia na początku!!!
OK zmieniam projekt według jego wytycznych. Znów siedzę tydzień a on znów dochodzi do wniosku że wypadało by dokonać jeszcze kilku zmian ^%!$$!&@^%&!^%!&@^#$!!!!!!
Sytuacja powtarza się kilkukrotne aż w końcu kierownik dochodzi do wniosku że pierwszy projekt był najlepszy i zdecyduje się jednak na niego Witki opadają. Tak były robione projekty wszystkich maszyn i urządzeń w tej nieszczęsnej firmie.
Teraz do meritum. "Mietełka" jako były kierownik ZMS w czasach PRL miał bardzo komunistyczne podejście do życia. Jak oglądacie filmy Barei to tak jak by oglądać jego biografię. Mimo iż wszystko było dobrze to on musiał coś zmienić żeby miał swój wkład.
Pewnego razu projektowaliśmy taki mały zsyp (może 10cm). Na dnie był dość kanciasty przez co wsypywany tam topnik spawalniczy nie zsypywał się tylko czasem zacinał. Kazał mi zaprojektować takie paraboliczne blachy (zsyp był jak rura zaślepiona płasko na dole z małym otworem) aby wspawać je przy wylocie w ten sposób aby topnik sypał się bezpośrednio w otwór. Projekt było zrobić dość łatwo gdyż jestem bardzo biegły w programach CAD i 3D. Niestety wyszlifowanie tego według wzorca nie było już tak proste. Chłopaki z prototypowni męczyli się z tym ze 2 godziny ale wyszło im to naprawdę ładnie.
Wtedy na warsztacie zjawia się "Mietełka" ogląda całość i stwierdza że należy to skrócić o 5mm bo jest za wysokie (co oczywiście nie ma żadnego znaczenia w działaniu chodzi tylko o to żeby dodać coś od siebie). Skośna blacha w rurce daje parabolę. Skrócenie tego o 5mm to zmiana całej krzywizny i wszystko trzeba zaczynać od początku. Chłopaki z opuszczonymi rękami zmierzają w stronę szlifierki.
Wtedy ja uratowałem sytuację. "Mietełka" opuściła warsztat a ja mówię:
- po....ło was? Wy na serio chcecie to robić od początku? Darek dawaj spawarkę i jedziemy z tym.
Po przyspawaniu całości (oczywiście nie zmienionej o jakże bardzo istotne 5mm) na warsztacie znów zjawia się "Mietełka" i stwierdza że po skróceniu tego o 5mm jest znacznie lepiej. My z uśmieszkami które wcale nie były owocem pochwały przytaknęliśmy geniuszowi naszego kierownika.
Rozpisałem się trochę ale mam nadzieję że przekazałem istotę Takich sytuacji było setki jak nie tysiące. Teraz wiecie dlaczego tak uwielbiam uwagi w stylu:
- wiesz co jak byś zrobił tak ... to było by lepiej
Projekt jest gotowy. Przedstawiam wam owoc mojej pracy.
Nie robię tutaj żadnego straganu.
Oczywiście inteligentne porady są mile widziane ale proszę was nie bawcie się w "Mietełkę"
Witam, konstrukcja oczywiście świetna. Bascom po wykupieniu jak i w wersji demo można wykorzystywać komercyjnie( wersja demo ogranicza plik źródłowy do 4kB). Natomiast by móc korzystać z biblioteki avr-dos komercyjnie należy wykupić licencję w wysokości 100euro.
Kolejny fakt jest taki że nie ma możliwości tak szybkiego odczytania danych z karty pamięci żeby nie zakłócić multipleksowania (przynajmniej nie na rodzinie AVR).
Rodzina AVR czy jakakolwiek inna nie ma nic wspólnego z takim ograniczeniem. Wystarczy wykorzystać któryś z timerów i jego przerwanie. Ostatecznie obsługa takiego wyświetlacza multipleksowanego była by w stanie "sama" o siebie zadbać i zwalnia nas ciągłego pilnowania wyświetlacza. Chyba, że sam Bascom ma jakieś ograniczenie, którego nie znam( bo go nie stosuje ).
...
Z czasem sobie udoskonalisz do lepszych konstrukcji. Na razie startuj z tym co masz (tylko uważaj na licencje FAT32, użytkowania kart SD i biblioteki do obsługi kart).
Czy robiąc komercyjnie jakieś urządzenie z obsługą systemu FAT32 musimy płacić jakieś tantiemy Microsoftowi czy komuś kto posiada na to patent? Podobnie z używaniem kart SDjakiemuś konsorcjum typu SDgroup?? czy chodziło Ci tylko o licencje na gotowe biblioteki do ich obsługi?
Co do urządzenia, lepiej zamiast kart SD było by miec możliwość zdalnego bezprzewodowego przesłania tekstu do tablicy. Często taki panel jest gdzieś powieszony na ścianie na zewnątrz czy na witrynie. Wtedy to pomaga i można na bieżąco aktualizować teksty, np Kantor itd. wtedy masz naprawdę profesjonalny panel który możesz sprzedawać jak już wspomniał przedmówca.
Z tego co wiem, to trzeba płacić MS za FAT32. Z tego co wiem po drugie, to prawo patentowe działa w ich przypadku akurat w USA, czyli teoretycznie w Europie mogą chłopaki skoczyć
Z tego co wiem, to trzeba płacić MS za FAT32. Z tego co wiem po drugie, to prawo patentowe działa w ich przypadku akurat w USA, czyli teoretycznie w Europie mogą chłopaki skoczyć
A nie można użyć czegoś typu ext2 lub ext3?? One chyba są free
Rodzina AVR czy jakakolwiek inna nie ma nic wspólnego z takim ograniczeniem. Wystarczy wykorzystać któryś z timerów i jego przerwanie.
To teraz mi powiedz co się stanie kiedy przerwanie nastąpi podczas odczytu karty?
Poza tym generowanie sygnału CLK przerwaniem timera to nie problem ale robienie takich długich operacji w przerwaniu jak wypełnianie całej tablicy to moim zdaniem partyzantka. Przerwanie ma robić jak najkrótsze polecenia np. tylko ustawiać flagi na jakieś zdarzenie.
Na PK był taki profesor co jak zobaczył w przerwaniu jakieś pętle to od razu darł kartkę i zapraszał delikwenta na termin poprawkowy.
Nie powiesz mi że odczytasz z karty AVRem 42 bajty tak żeby nie zakłócić multipleksowania.
No chyba że napiszesz sam obsługę karty i będziesz odczytywał poszczególne bajty pomiędzy kolejnymi klatkami multipleksowania. To mogło by zdać egzamin ale po co takie cuda jak statyczne wyświetlanie je wszystkie znosi?
Oszczędność? Pytam się jaka? 74HC574 kupiłem po 37gr/szt. Jeśli zrobił bym tablice multipleksowaną zamiast 40szt. użył bym 5szt. Zaoszczędził bym całe 12,95zł i skomplikował obsługę oraz program niemiłosiernie. Dlatego pytam:
PO CO MI MULTIPLEKSOWANIE???
Czemu się tak na to uwzięliście? Przy wyświetlaniu statycznym mam 0 problemów i kupę czasu na obsługę innych rzeczy niż multipleksowanie.
dex wrote:
miec możliwość zdalnego bezprzewodowego przesłania tekstu do tablicy
Mam w domu moduł BT wlutowany z jakiegoś starego GPS. Ma wyjście RS232 i zasilanie na 3V3 czyli spokojnie można użyć stabilizatora i konwertera napięć używanych do obsługi karty. Myślałem o tym żeby go użyć i właśnie zrobić takie coś bezprzewodowego ale moduł jest bez anteny a nie chciało mi się myśleć nad nową dlatego porzuciłem ten pomysł.
W przyszłości można by faktycznie wywalić kartę zamiast niej dać jakąś kość flash i do tego BT. Wzrasta funkcjonalność i odpada problem z licencją na AVR-DOS oraz SD i FAT.
Hmm trzeba przejrzeć moduły z wbudowaną anteną może coś się wybierze.
Przyznam że chciałem nawet kupić moduł z wbudowaną anteną ale jak zobaczyłem przykładowy PDF i opis poleceń konfiguracyjnych to bałem się że mnie to przerośnie.
Śmiem wątpić.
To, że ktoś wyraża swoją opinię i przedstawia własne rozwiązanie problemu, nie znaczy że Cię atakuje i każe Ci robić to w ten sposób. To jest forum publiczne, które czytają też inni i dzięki temu mogą się czegoś nauczyć, więc nie traktuj tego jak polecenie pana Mietełki z Twojej wątpliwej anegdotki. Mam wrażenie, że bezpodstawnie negujesz rozwiązania innych jakbyś pozjadał wszystkie rozumy i opowiadasz pierdoły (czytaj: następny akapit), co jest niebezpieczne i jeszcze gorsze niż niewiedza.
Do rzeczy:
Johny_Bit wrote:
Kolejny fakt jest taki że nie ma możliwości tak szybkiego odczytania danych z karty pamięci żeby nie zakłócić multipleksowania (przynajmniej nie na rodzinie AVR).
Johny_Bit wrote:
Na PK był taki profesor co jak zobaczył w przerwaniu jakieś pętle to od razu darł kartkę i zapraszał delikwenta na termin poprawkowy.
Nie porównuj tego do nauki na uczelni. Oprócz wiedzy akademickiej liczy się jeszcze własny rozum. W przypadku takiej aplikacji multipleksowanie ma najwyższy priorytet i podstawowym warunkiem poprawnego działania jest zapewnienie synchronizacji, które można osiągnąć tylko przez wykonanie całej operacji w przerwaniu. Przy obsłudze systemu plików raczej nie zagwarantujesz stałego czasu wykonania poszczególnych poleceń - zawartość karty nie jest stała. Niech wykonywanie instrukcji w przerwaniu i powrót zajmie nawet 75% czasu pomiędzy przerwaniami - zostaje jeszcze trochę mocy obliczeniowej na zadania o niższym priorytecie.
Johny_Bit wrote:
To teraz mi powiedz co się stanie kiedy przerwanie nastąpi podczas odczytu karty?
Nic się nie stanie. SPI jest synchronizowane linią zegara, poza tym AVRy mają sprzętową obsługę tego protokołu. W chwili wystąpienia przerwania odczyt się zawiesi do czasu powrotu z ISR. Nie potrzebujesz całej klatki między przerwaniami. Potrzebujesz jedynie określić liczbę wyświetlanych klatek na sekundę (F) i zdążyć odczytać z karty 1 klatkę w czasie 1/F sek.
Johny_Bit wrote:
Ot widzę że kolega jest bliski odkrycia perpetuum mobile. Zmniejsza ilość dostarczanej energii a światłość wzrasta. Czyży była mowa o sprawności powyżej 100%?
Przy multipleksowaniu N kanałów każdy kanał jest zasilany przez 1/N czasu. Cała sztuczka polega na dostarczeniu silniejszego impulsu niż przy zasilaniu stałym. Zauważ również, że wrażenie wzrokowe ma charakterystykę logarytmiczną, więc po przekroczeniu pewnego subiektywnego progu (zależnego również od modelu diod) liniowy przyrost prądu daje minimalny przyrost odczuwalnej jasności.
Poza tym generowanie sygnału CLK przerwaniem timera to nie problem ale robienie takich długich operacji w przerwaniu jak wypełnianie całej tablicy to moim zdaniem partyzantka. Przerwanie ma robić jak najkrótsze polecenia np. tylko ustawiać flagi na jakieś zdarzenie.
Na PK był taki profesor co jak zobaczył w przerwaniu jakieś pętle to od razu darł kartkę i zapraszał delikwenta na termin poprawkowy.
Nie powiesz mi że odczytasz z karty AVRem 42 bajty tak żeby nie zakłócić multipleksowania.
No chyba że napiszesz sam obsługę karty i będziesz odczytywał poszczególne bajty pomiędzy kolejnymi klatkami multipleksowania. To mogło by zdać egzamin ale po co takie cuda jak statyczne wyświetlanie je wszystkie znosi?
Odczytam jak najbardziej. Karta chodzi przecież po SPI i obsługując ją sprzętowym takim interfejsem (który jest dostępny w AVR) nie pilnujesz każdego tyknięcia zegara. To nie 1wire gdzie musisz zachować restrykcyjne zależności czasowe. Odczytujesz coś z karty w pewnym momencie przychodzi przerwanie. Odpowiednie rejestry robocze idą na stos i w przerwaniu ładujesz na porty stan kolejnych 8 diod z jakiejś dużej tablicy co prezentuje Twój ekran. Zapalasz kolejną linijkę i uciekasz z przerwania. Dane ze stosu są wrzucane znów do rejestrów i program leci dalej tam gdzie skończył. Jeśli używając sprzętowego SPI tuż przed przerwaniem wstawisz jakąś daną do wysłania to przychodzące przerwanie o ile nie będzie grzebać w rejestrach od SPI nie przeszkodzi wysłaniu danych w końcu takie peryferia są w pewnym stopniu autonomiczne. Nie stanie się też nic jak przerwanie wskoczy tuż przed wysłaniem bajtu. Zostanie on wysłany tuż po jego zakończeniu. Nie mówię Ci byś zmienił sterowanie na multipleksowanie, ale zaznaczam jedynie, że odczyt karty sd oraz multipleksowanie mogą działać razem i nie przeszkadzać sobie. Całość przy dobrej organizacji kodu jest bardzo przyjemna i sprawia iż można zapomnieć o tym, że taki ekran ciągle jest przemiatany
Masz do tego prawo.
Jednak wypowiadasz się o osobie której w życiu nie widziałeś. Sam fakt iż jestem stanie wykonać coś takiego bazując tylko na samodzielnie zdobytej wiedzy i nie posiadając wykształcenia elektronicznego raczej nie świadczy o tym że jestem głupi.
Sam projekt nie jest chyba aż taki zły bo dostałem już kilkanaście PW odnośnie udostępnienia materiałów. Niektórzy nawet proponowali że podpiszą zobowiązanie że nie będą tego udostępniać i sprzedawać a od publikacji nie minęło jeszcze nawet 2 dni.
Sh44dow wrote:
Mam wrażenie, że bezpodstawnie negujesz rozwiązania innych jakbyś pozjadał wszystkie rozumy i opowiadasz pierdoły
Nikogo nie atakuję. Wyrażam tylko opinie na temat wypowiedzi. Czy nie do tego służy forum? Sam tak napisałeś.
Poza tym zauważ kolego że nie neguje wszystkich porad.
Jest dla mnie wielce niezrozumiałe dlaczego tak się uwzięliście na to multipleksowanie?
Zadaję to pytanie już po raz któryś i nikt mi na nie jeszcze nie odpowiedział.
Sh44dow wrote:
W przypadku takiej aplikacji multipleksowanie ma najwyższy priorytet i podstawowym warunkiem poprawnego działania jest zapewnienie synchronizacji, które można osiągnąć tylko przez wykonanie całej operacji w przerwaniu.
Po raz kolejny pytam po co? Po co to nieszczęsne multipleksowanie?
Sh44dow wrote:
Nic się nie stanie. SPI jest synchronizowane linią zegara, poza tym AVRy mają sprzętową obsługę tego protokołu.
Faktycznie. Zwracam honor.
Sh44dow wrote:
Cała sztuczka polega na dostarczeniu silniejszego impulsu niż przy zasilaniu stałym.
Czyli większej ilości energii która dodatkowo musi pokryć jeszcze zaciemnienie wynikłe z czasu każdorazowego napełniania tablicy danymi.
Sh44dow wrote:
Zauważ również, że wrażenie wzrokowe ma charakterystykę logarytmiczną, więc po przekroczeniu pewnego subiektywnego progu (zależnego również od modelu diod) liniowy przyrost prądu daje minimalny przyrost odczuwalnej jasności.
Zgadza się. Dlatego moje diody świecą tylko na 10mA. Poniżej tego progu spadek jasności jest już bardzo zauważalny.
Nie zmienia to jednak faktu iż nie da się uzyskać wyższej światłości multipleksując niż w przypadku wyświetlania statycznego przy tym samym typie LEDów oraz ilości energii. Normalne jest że nie puścisz na LEDa 200mA żeby nadrobić zaciemnienie wynikające z multipleksowania.
OK
Widzę że temat zeszedł na zły tor.
Nikogo nie atakuje a przynajmniej nie mam takiego zamiaru. Wyrażam tylko opinie odnośnie wypowiedzi innych.
Nie wypowiadam się już ani słowem w temacie multipleksowania póki ktoś nie powie dlaczego się tak na nie uwzięliście.
Nikogo nie atakuje a przynajmniej nie mam takiego zamiaru. Wyrażam tylko opinie odnośnie wypowiedzi innych.
Nie wypowiadam się już ani słowem w temacie multipleksowania póki ktoś nie powie dlaczego się tak na nie uwzięliście.
Dlatego, że są to dobre nawyki. Przy niewielkiej tablicy i jednostkowych sztukach nie ma problemu, ale większość budując takie urządzenie starało by się je zrobić jak najbardziej uniwersalnie, a to właśnie doskonale zapewnia multipleksowanie.
O ile przy jednym prototypie nie odczuwasz różnicy to dla 10 czy 100 sztuk masz 120 czy nawet 1200 zł różnicy tylko na samej oszczędności driverów(wg twoich wyliczeń). Jeśli nie dostrzegasz problemu, to zasygnalizuje ci, że są to pieniądze o jakie twoja konstrukcja będzie droższa od konkurencji. Nie wspominając o kosztach montażu i ewentualnej awaryjności...
Wszystko jest fajnie dopóki nie wychyla się poza „swój świat”. I nie dąsaj się tak za negatywne zdania, bo aż nieprzyjemnie się czyta.
Swoją drogą połowę wątku się przechwalasz swoimi umiejętnościami, a obok piszesz jakie to straszne było by napisać program do multipleksowania. No sorry nie ogarniam...
Dlatego, że są to dobre nawyki. Przy niewielkiej tablicy i jednostkowych sztukach nie ma problemu, ale większość budując takie urządzenie starało by się je zrobić jak najbardziej uniwersalnie, a to właśnie doskonale zapewnia multipleksowanie.
Moja konstrukcja tez jest w miarę uniwersalna. Na długości z rozbudową nie ma problemu. Dopinamy tylko kolejne panele.
Jeśli chodzi o wysokość to mam wyprowadzonych jeszcze 7 sygnałów CLK czyli można jakby złożyć 8 tablic razem.
michal-michalik wrote:
O ile przy jednym prototypie nie odczuwasz różnicy to dla 10 czy 100 sztuk masz 120 czy nawet 1200 zł różnicy tylko na samej oszczędności driverów(wg twoich wyliczeń).
Koszty owszem mniejsze. Ale różnica odczuwalna dopiero przy większej ilości sztuk.
michal-michalik wrote:
jakie to straszne było by napisać program do multipleksowania
Nie napisałem że straszne tylko trudniejsze do wykonania o poziom nie wart tych paru zł oszczędności. Nie przechwalam się tez umiejętnościami bo w zakresie elektroniki nie są one jakoś wielce powalające. Za to konstruktorem w zakresie mechaniki jestem naprawdę dobrym.
Kiedyś też popełniłem taką tablicę w pewnej firmie - na driverach serii MBI50..
Macroblock (bez multiplexu) - warto rozważyć ich zastosowanie. Są stosowane w bardziej profesjonalnych produktach - np. przez Krakowskiego producenta tablic na nasze autostrady. Nawet doczekała się obudowy z czerwonego pleksi giętego na gorąco.
Jeśli chodzi o diody to lepsze efekty (ilość cd, kąt i cena są powiązane) można uzyskać przy diodach owalnych - tablica powieszona w witrynie jest oglądana na wprost/z lewej/prawej strony, raczej nikt nie kładzie się na chodniku Co do produkcji zarobkowej chciałbym ostudzić - ceny gotowych z Państwa Środka są na poziomie kosztu części w Polsce, nie zapominajmy o zasilaczu i obudowie.
Po usunięciu ok. 15 postów NIE NA TEMAT i wlepieniu ostrzeżenia, proszę o opanowanie emocji. Forum to nie tylko kopalnia schematów, wsadów do mikrokontrolera, ale miejsce gdzie można się czegoś nauczyć, widząc jak coś zrobili inni, czego użyli i w jaki sposób.