Tartalomjegyzék:

Készítse el saját POV kijelzőjét: 3 lépés
Készítse el saját POV kijelzőjét: 3 lépés

Videó: Készítse el saját POV kijelzőjét: 3 lépés

Videó: Készítse el saját POV kijelzőjét: 3 lépés
Videó: Első -és egyben az utolsó- táncos videó 🙈 #vicces #magyar 2024, November
Anonim
Készítse el saját POV kijelzőjét
Készítse el saját POV kijelzőjét

A látás észlelése (POV) vagy a látás perzisztenciája (több variációja is van) egy érdekes emberi látás jelensége, amely akkor fordul elő, amikor egy tárgy vizuális érzékelése nem szűnik meg a tárgy helyzetének megváltoztatása ellenére. Az emberek másodpercek tört részeiben látnak képet; ezeket a képeket nagyon rövid időre (egy pillanatra) menti az agy. Példa erre a jelenségre, ha megvilágított fényforrást, például LED -eket vagy izzókat figyel, bekapcsolva és megpördülve. Látásunk becsapva azt hiszi, hogy a forgó fény valójában folytonos kör, hasonlóan a síkban forgó légcsavarból kialakított folytonos körhöz. A POV -ot hosszú évek óta használják, kezdve a gifoszkóppal, hogy különféle illúziókat és animációkat készítsenek látásunkhoz; Gyakran használják üzenetek és animációk megjelenítésére a kijelzőkön LED -ek segítségével, 2D vagy 3D -ben forgatva különböző típusú üzenetekhez. Ennek az alkalmazásjegyzetnek az a célja, hogy megtervezze és bemutassa, hogyan működik a Perception of Vision azáltal, hogy felírja a „SILEGO” szót a megépítendő kijelzőre, és ötleteket ad, amelyek végigvezetik Önt a jövőben az összetettebb tervek elkészítésének folyamatán. Ehhez a projekthez egy Dialog GreenPAK ™ SLG46880 -at használtunk, annak foglalatkészletével, amely lehetővé teszi, hogy ezt a prototípust egyszerűen csatlakoztassák kábelek segítségével az összes külső alkatrészhez. A nagyobb GreenPAK használata általános célú POV -kijelzők tervezéséhez nagyon előnyös a robusztus összetevői, például az ASM alrendszerek miatt, amelyek lehetővé teszik bármilyen minta nyomtatását a kijelzőn. Ez az alkalmazás az SLG46880 használatával mutatja meg a végeredményt.

Az alábbiakban leírtuk azokat a lépéseket, amelyek szükségesek ahhoz, hogy megértsük, hogyan programozták a GreenPAK chipet a POV kijelző létrehozására. Ha azonban csak a programozás eredményét szeretné elérni, töltse le a GreenPAK szoftvert a már elkészült GreenPAK tervezési fájl megtekintéséhez. Csatlakoztassa a GreenPAK fejlesztőkészletet a számítógépéhez, és nyomja meg a programot, hogy létrehozza a POV kijelző egyéni IC -jét.

1. lépés: Vázlatok

Vázlatok
Vázlatok

Ez a POV megjelenítési példa az 1. ábrán látható 2D -típust célozza meg, amely tizenegy LED -et tartalmaz (mindegyikben ellenállások vannak az áram szabályozására), közvetlenül a GreenPAK CMIC különböző GPO -csapjaihoz csatlakoztatva. Az áramkör prototípusa és forrasztva van NYÁK -kenyérszerű táblákba. A kijelző tápellátása egy 9 V 10 A L1022 alkáli elem, amely egy feszültségszabályozó áramkörhöz van csatlakoztatva LM7805V segítségével, amely 5 V kimenetet nyújt. A kijelző forgatása mellett DC motorra van szükség, amely elegendő erővel mozgatja az összes vezérlő áramkör az egyedi állványhoz rögzítve. Ebben az esetben egy 12 V-os motort használtak, egy főkapcsolóhoz csatlakoztatva, és egy készenléti szabályozású tápegységet, amely különböző feszültségi szinteket bocsát ki egy forgókapcsolón keresztül, lehetővé téve a motor többféle fordulatszámát.

2. lépés: GreenPAK tervezés

GreenPAK Design
GreenPAK Design
GreenPAK Design
GreenPAK Design
GreenPAK Design
GreenPAK Design
GreenPAK Design
GreenPAK Design

Amikor a GreenPAK segítségével különböző típusú üzeneteket és animációkat tervezünk egy POV kijelzőhöz, ismernünk kell a chip eszközeit és korlátait. Ily módon hozzáértő dizájnt készíthetünk, a legkevesebb elektronikai alkatrész felhasználásával a POV kijelző eléréséhez. Ez a kialakítás az SLG46880 CMIC új előnyeit használja fel, az aszinkron állapot gép alrendszerek összetevőre összpontosítva. Az SLG46880 ASM alrendszer eszköz előnyösebb lehet, mint a korábbi GreenPAK ASM eszközök, új funkciói miatt, amelyek lehetővé teszik a bonyolultabb állapotgép tervezést. A vonatkozó ASM alrendszerek belső összetevői közül néhány:

● 12 állapotú ASM Macrocell

● Dinamikus memória (DM) Macrocell

● F (1) Számítási Macrocell

● Állami független komponensek

Minél több állapotgépes makrocellát képes létrehozni és konfigurálni a chip, annál több a tervezési lehetőség. A tizenkét állapot mindegyikét a megjelenítendő szó különböző töredékeinek írására használták, be-/kikapcsolva a LED -ek különböző kombinációit, amelyek közül néhány kétszer vagy többször megismétlődött, és bizonyos esetekben az ismételt állapotok időzítése megváltozik, mert ugyanazt a mintát lehet használni különböző levelekhez különböző időpontokban. Az államokat az 1. táblázat tartalmazza.

Az 1. táblázat azt mutatja be, hogy a tervezés minden létező állapota hogyan kapcsolódik a „SILEGO” szó betűihez. Ez megfelel a 2. ábrán látható LED konfigurációnak.

Amint láthatja, az összes állapot különböző időzítéssel együtt teljesíti a szót, a 3. ábra mutatja, hogyan kapcsolódnak/kapcsolódnak az állapotok. Minden állapotátmenet ezredmásodpercekben történik, és a 2. ábra diagramjának minden oszlopa egy ezredmásodpercet (1 ms) jelent. Egyes állapotok 3 ms, 4 ms, mások pedig elég hosszúak, a videó bemutatóhoz használt motor minimális fordulatszámával, körülbelül 460 ford / perc sebességgel.

Fontos figyelembe venni és mérni a motor sebességét, hogy ismerjük és kiszámítsuk az időzítést az általános célú tervezés során. Ily módon az üzenet szinkronizálható a motor fordulatszámával, ezáltal az emberi szem számára látható. Egy másik szempont az állapotok átmenetének kevésbé észrevehetővé tételéhez és a látásunk tisztábbá tételéhez az, hogy a motor fordulatszámát 1000 RPM fölé kell növelni, és az állapotok időzítését mikroszekundum nagyságrendben kell beállítani, hogy az üzenet simán látható legyen. Talán azt kérdezi magától, hogyan szinkronizálná a motor sebességét az üzenet vagy az animáció sebességével? Ez néhány egyszerű képlettel érhető el. Ha a motor fordulatszáma 1000 ford./perc, akkor tudja, mennyi ideig tart az egyenáramú motor fordulatonként másodpercek alatt, majd:

Frekvencia = 1000 RPM / 60 = 16,67 Hz Periódus = 1 / 16,67 Hz = 59,99 ms

Az időszak ismeretében tudja, mennyi ideig tart a motor egy fordulatban. Ha olyan üzenetet szeretne kinyomtatni, mint a „Hello World”, ha ismeri az egyes fordulatok időszakát, csak az számít, hogy mekkora méretű üzenetet szeretne megjeleníteni a kijelzőn. A kívánt üzenet kinyomtatásához a kívánt méretben kövesse ezt az ökölszabályt:

Ha például azt szeretné, hogy az üzenet a kijelző helyének 40 % -át lefedje, akkor:

Üzenet mérete = (időszak * 40 %) / 100 % = (59.99 ms * 40 %) / 100 % = 24 ms

Ez azt jelenti, hogy az üzenet minden fordulóban 24 ms -ban jelenik meg, tehát az üres hely vagy a tér többi része egy körben (ha nem mutat valamit az üzenet után), a következőknek kell lennie:

Üres szóköz = periódus - Üzenet mérete = 59,99 ms - 24 ms = 35,99 ms

Végül, ha meg kell jelenítenie az üzenetet az időszak 40% -ában, akkor tudnia kell, hogy az üzenetnek hány állapotában és átmenetében kell a várt üzenetet írnia, például ha az üzenetnek húsz (20) átmenete van, akkor:

Egy állapot periódus = Üzenetméret / 20 = 24 ms / 20 = 1,2 ms.

Tehát minden állapotnak 1,2 ms -ig kell tartania az üzenet helyes megjelenítéséhez. Természetesen észreveheti, hogy az első tervek többsége nem tökéletes, ezért előfordulhat, hogy a fizikai tesztelés során módosít néhány paramétert a tervezés javítása érdekében. Az állapotváltások megkönnyítésére dinamikus memória (DM) makrocellákat használtunk. A négy DM blokk közül kettő mátrixkapcsolattal rendelkezik, így kölcsönhatásba léphet az ASM alrendszeren kívüli blokkokkal. Minden DM Macrocell legfeljebb 6 különböző konfigurációval rendelkezhet, amelyek különböző állapotokban használhatók. A DM blokkokat ebben a kialakításban használják az ASM egyik állapotból a másikba való átváltására. Például a Silego [3] állapot kétszer megismétlődik az átmenetek során; meg kell írnia a nagy „I” betű elejét és végét, amely ugyanazt a mintát tartalmazza, de először a Silego -ba [4] kell mennie, hogy megírja a „I” nagybetű közepének mintáját, majd amikor a Silego [3] másodszor is végrehajtásra kerül, a Nincs üzenet állapotba kell lépnie, folytatva a többi átmenetet. Hogyan lehet megakadályozni, hogy a Silego [3] a Silego -val [4] végtelen hurokba essen? Egyszerű, vannak olyan LUT -ok, amelyek SR Flip Flop -ként vannak konfigurálva, és azt mondják a Silego -nak [3], hogy ne válassza újra és újra a Silego -t [4], de másodszor válassza a Nincs üzenet állapotot. Az SR Flip Flops használata a végtelen ciklusok megelőzésére, ha bármelyik állapot megismétlődik, nagyszerű megoldás a probléma megoldására, és csak egy 3 bites LUT-ot igényel, amely a 4. és az 5. ábrán látható módon van konfigurálva. Ez a folyamat egyszerre történik az ASM kimenet arra készteti a Silego -t [3], hogy a Silego -ba [4] lépjen, így amikor az állapotgép legközelebb végrehajtja a Silego -t [3], értesítést kap, hogy válassza a Nincs üzenet állapotot a folyamat folytatásához.

Egy másik ASM blokk, amely hasznos volt ebben a projektben, az F (1) Computational Macrocell. Az F (1) képes végrehajtani a kívánt adatok olvasására, tárolására, feldolgozására és kimenetére vonatkozó parancsok listáját. Egyszerre 1 bitet képes manipulálni. Ebben a projektben az F (1) mondatot használtuk bitek olvasására, késleltetésére és kimenetére néhány LUT vezérléséhez és állapotok engedélyezéséhez (például a Silego [1] -ben a Silego [2] engedélyezéséhez).

Az 1. ábra táblázata elmagyarázza, hogy az egyes LED -ek hogyan kerülnek a GreenPAK GPO -csapjaihoz; a kapcsolódó fizikai csapokat a mátrix ASM Output RAM -ból címzik, amint az a 2. táblázatban látható.

Amint a 2. táblázatban látható, a chip minden tűje különálló ASM kimenetekhez volt címezve; Az ASMOUTPUT 1 nyolc (8) kimenettel rendelkezik, amelyeket közvetlenül használnak külső GPO -khoz csatlakoztatva, kivéve az OUT 4 -et. Az OUT 2 a LUT5 és LUT6 visszaállítására szolgál a Silego [5] és a Silego [9] állapotokban, végül az OUT 3 a LUT6 beállítására szolgál a Silego [4] és a Silego [7] üzemmódban. Az ASM nRESET nincs kapcsolva ebben a kialakításban, így csak kénytelen HIGH csatlakozni a VDD -hez. A felső és alsó LED -eket hozzáadták ehhez a projekthez, hogy további animációt készítsenek a „SILEGO” megjelenítése közben. Ez az animáció néhány sorról szól, amelyek idővel körbejárják a motor mozgását. Ezek a vonalak fehér LED -ek, míg a betűk írásához pirosak. Az animáció eléréséhez a GreenPAK PGEN -jét és CNT0 -ját használtuk. A PGEN egy mintagenerátor, amely a következő bitet adja ki tömbjében minden óra szélén. A motor fordulatszámát 16 részre osztottuk, és az eredményt a CNT0 kimeneti periódusra állítottuk. A PGEN -be programozott minta a 6. ábrán látható.

3. lépés: Eredmények

Eredmények
Eredmények

A tervezés teszteléséhez szalagkábellel csatlakoztattuk az SLG46880 foglalatát a NYÁK -hoz. Két külső táblát csatlakoztattak az áramkörhöz, az egyik a feszültségszabályozót, a másik a LED -tömböt tartalmazta. A bemutató üzenet megjelenítésének megkezdéséhez bekapcsoltuk a GreenPAK által vezérelt logikai áramkört, majd bekapcsoltuk az egyenáramú motort. A megfelelő szinkronizáláshoz szükség lehet a sebesség beállítására. A végeredmény a 7. ábrán látható. Az alkalmazás megjegyzéséhez kapcsolódó videó is tartozik.

Következtetés A projektben bemutatott Vision Display észlelése a Dialog GreenPAK SLG46880 -at használta fő vezérlőként. Bebizonyítottuk, hogy a tervezés működik a LED -ek segítségével a „SILEGO” szó felírásával. Néhány fejlesztés a tervezésen:

● Több GreenPAK használatával növelheti az állapotok számát, ha hosszabb üzenetet vagy animációt szeretne nyomtatni.

● Adjon hozzá további LED -eket a tömbhöz. Hasznos lehet, ha felszíni LED-eket használnak, nem pedig lyukas LED-eket, hogy csökkentsék a forgó kar tömegét.

● Ha mikrokontrollert tartalmaz, akkor megváltoztathatja a megjelenített üzenetet az I2C parancsok használatával a GreenPAK kialakításának újrakonfigurálásához. Ezzel digitális óra kijelzőt hozhat létre, amely frissíti a számjegyeket, hogy pontosan megjelenítse az időt

Ajánlott: