. : New eShop! - Mobilní verze - Pandatron.cz - Pandatron.sk - Diskuzní fórum - Zakázkový vývoj : .
 
Referenční aplikace USB webkamery
23. února 2015 - 1:00 | Pandatron | Referenční aplikace USB webkamery | Komentářů: 4  

Referenční aplikace USB webkamery

Aplikační poznámka od společnosti FTDI představuje příklad využití obvodu Vinculum-II pro zobrazení snímků z připojené USB webkamery.

Společnost FTDI (Future Technology Devices International Limited) se zaměřuje na vývoj a výrobu speciálních komunikačních obvodů, podporujících USB port i v aplikacích, které tento komunikační standard běžně nepodporují. Součástí všech obvodů je samozřejmě bohatá dokumentace, zahrnující i řadu praktických informací k návrhu a aplikačních poznámek. Jednou z těch, která je určena pro nejnovější obvody řady Vinculum-II je i následující aplikace USB webkamery a barevného OLED displeje.


Obr. 1: FTDI V2EVAL Board s OLED displejem

Aplikační poznámka AN158 (Vinculum-II Webcam Application Using OLED Display) firmy FTDI popisuje návrh a implementaci aplikace USB webkamery a RGB OLED displeje. Jde samozřejmě o ukázkovou aplikaci, jednoduše využívající použitý hardware, bez implementace dalších rozšiřujících funkcí. Vše je řešeno pouze obvodem Vinculum-II, v aplikaci není použit žádný jiný procesor. Cílem je demonstrovat minimální úsilí, nezbytné k zobrazení snímků na zvoleném hardware.

Použité hardwarové prostředky:

  • Vývojová deska V2EVAL
  • Rozšiřující 64-pinová Vinculum II deska
  • USB kamera typu Logitech Webcam Pro 9000
  • Modul OLED displeje z řady Densitron OLED
  • SEPS525: 160 x 128 bodů, RGB - 262 tisíc barev - PM-OLED řadič
  • DC/DC konvertor 5V / 12V pro napájení OLED displeje

S uvedenými prostředky je možné dosáhnout zobrazení 4,4 barevných snímků za sekundu v rozlišení 160 x 120 obrazových bodů. Zdrojový kód je napsán v jazyce C a vyvinut byl s pomocí Vinculum-II IDE, dostupným na webových stránkách výrobce.


Obr. 2: Blokové schéma vývojové desky V2EVAL

Architektura aplikace
Aplikace odpovídá modelu firmware VNC2, definovaného v Aplikační poznámce AN151 (Vinculum-II User Guide – FTDI) z roku 2010. Složena je pouze ze dvou samostatných vláken. První vlákno - usbReader je odpovědné za připojení k webové kameře, která je podporována rozhraním USB Host, konfiguraci kamery, snímání a ukládání datového toku do vyrovnávací paměti. Druhé vlákno - DisplayOutput je naopak odpovědné za konverzi dat získaných z webkamery ve formátu YUV, do formátu RGB a samozřejmě se stará i o odeslání RGB dat na displej.

Dvojitý buffer, který je využíván pro ukládání dat a přístup k datům pro jejich zobrazení, je synchronizován pomocí jednoduchých semaforů.

Architektura, která je uvedená na obr. 3 vychází ze standardních spotřebitelských aplikací.


Obr. 3: Architektura aplikace

Hardwarové rozhraní
Použitý modul OLED displeje z produkce Densitron podporuje dva provozní režimy, které je v aplikaci potřeba realizovat. Režim sběrnicového rozhraní se využívá při startu a konfiguraci vlastností displeje. Jakmile je konfigurace ukončena, přepne se displej do režimu RGB rozhraní, které se využívá k rychlému přenosu obrazových dat. Provozní režim RGB rozhraní se tedy využívá ve chvíli, kdy je potřeba na OLED displeji zobrazit získaná RGB data.

Každý z těchto provozních režimů podporuje svou vlastní instrukční sadu, která je samozřejmě dostupná včetně popisu jednotlivých instrukcí v dokumentaci řadiče.


Obr. 4: Blokové schéma obvodu SEPS525

Sběrnicové rozhraní:
Displeje Densitron OLED jsou nejprve konfigurovány pro provoz v 8-bitovém sběrnicovém režimu. Jednotlivé komunikační piny SEPS525 (což je řadič v displeji) jsou připojeny k GPIO pinům obvodu Vinculum-II, jak je znázorněno na obr. 5. Bližší popis komunikačního rozhraní je dostupný v dokumentaci SEPS525, která je uvedena v odkazech pod článkem.


Obr. 5: Provozní režim 8-bitového sběrnicového rozhraní

RGB rozhraní:
Jakmile je displej nakonfigurován, je možné jej přepnout do provozu v 6-bitovém datovém režimu RGB rozhraní. Jednotlivé propojení nyní využívaných pinů SEPS525 a GPIO pinů obvodu Vinculum-II je uvedeno na obr. 6. Bližší popis datového RGB rozhraní je rovněž dostupný v dokumentaci SEPS525, která je uvedena v odkazech pod článkem.


Obr. 6: Datový režim 6-bitového RGB rozhraní

Závěr:
Další kroky spočívají již ve vývoji vlastní řídicí aplikace a včetně kompletních zdrojových kódů jsou k dispozici na stránce uvedené aplikační poznámky - Vinculum-II Webcam Application Using OLED Display.

Odkazy & Download:
Domovská stránka výrobce
Přehled distributorů a kontaktů

VNC2 - Vinculum-II Programmable USB 2.0 Host
Vinculum-II Webcam Application Using OLED Display
AN158 - Vinculum-II Webcam Application Using OLED Display
AN151 - Vinculum-II User Guide – FTDI

Zdrojové soubory projektu z AN158
Technická dokumentace k SEPS525







GooglePlus1 FaceBook Twitter del.icio.us DiGG Google StumbleUpon Google Buzz Email RSS PDF Tisk

Komentáře (4):

Zobrazit starší 30 dnů (4)...

host
4. Dne 24. 02. 2011 v 18:11 zaslal host
Pěkné, ale...
To všechno je sice moc pěkný, ale kdo se má podle výrobce učit programovat další platformu. Už takhle musí člověk umět s PIC, AVR, MSP a dalšími. Podle mě jsou podobně kompakní "SoC" dobrý řešením, ale je jich už moc a kromě jazyka u nich není vůbec žádný standard.


Název příspěvku: Vaše jméno: host
                 
  Zakázat formátování [Zakáže kódování a nahrazování smajlíky.]
Připojit soubory
reklama:
PBTM s externí anténou
Modul s BTM-112 od firmy Rayson usnadňuje jeho použití a doplňuje modul o konektor pro připojení externí ziskové antény.
Skladem od 389 Kč

Informace uvedené v článcích jsou platné v době jejich vydání a samotné články jsou určeny pouze jako zdroj informací. Autor článku ani správce webu nenesou žádnou zodpovědnost za případné újmy na majetku a zdraví. Názvy společností a výrobků, loga a další multimediální materiál mohou být ochrannými známkami příslušných společností.
RSS kanály: | |
+420 723 846 377
info@pandatron.cz
Všechna práva vyhrazena | mobilní verze | © Copyright 2000 - 2016 ISSN 1803-6007