Visual C# — Sterownie urządzeniami przez USB

Visual C# — Sterownie urządzeniami przez USB
Razem głosów: 4 co stanowi: 95% całości.

179a1c9d9a26985e40f8f14e83d15416

W zasadzie nic tu nie będzie odkrywczego i jak zapewne zaraz usłyszę
„o kant cały temat” dlatego też nie będę się specjalnie rozpisywał.

Chciałem wam tylko pokazać jak w prosty sposób można zbudować sterownik
USB do różnych urządzeń, oczywiście tutaj ograniczyłem się tylko do sterowania
typu ON/OFF portami GPIO którymi możemy włączać 8 urządzeń przez przekaźniki np:

…:: Elektronika ::…

od strony elektronicznej potrzebujemy w sumie tylko układ Microchipa MCP2200,
który stanowi przejściówkę USB-UART i którego poza mną chyba nikt z forum nie używa
bo przecież PICo Kocie wytwory są BEEE … może i racja …

a30ea2b1d039a6a7b57597f4b75b16d2

Można nabyć taki moduł gotowy lub też zbudować sobie samemu co opisałem tutaj :

MCP2200

Przejściówka ta nie jest tak doskonała jak FT232 i nie posiada trybu BIT BANG, ale ma coś czego FTDI niema … Mianowicie doskonałą bibliotekę … poza bycia samym UARTEM TTL takim prostym ale wystarczającym i posiadaniu dodatkowych 8 GPIO które mogą być łatwo używane jako Wejście / wyjście ….. aż się prosi o użycie ..

Typowy schemat jest u mnie na stronie ale też i tu go wkleję :

9ca6cd49611d2dc41e17ab2d230fa1f0

Nota układu
Sterowniki

resztę każdy wie jak podłączyć, a jak nie to jego sprawa :)

…:: PROGRAM ::…

Program napiszemy klasycznie w Visual C# korzystając z biblioteki dostarczonej przez producenta , którą można pobrać stąd wraz z opisem i przykładami :

http://ww1.microchip.com/downloads/en/D … -01-28.zip

Nasz program w zasadzie dzięki użyciu SimpleIO-M.dll (wersji zarządzalnej) jest banalnie prosty:

Zatem tworzymy formularz windows i dodajemy na nim 8 przycisków ON i 8 OFF razem
z labelkami opisującymi o które GPIO nam chodzi:

co może wyglądać tak:

6b28a70f33550f9bf024c8712ce1d703

następnie klikamy na pierwszy klawisz ON i wpisujemy w zdarzeniu onClick:

analogicznie postępujemy z klawiszem OFF :

Jak więc widać wszystko jest banalnie proste analogicznie więc postępujemy z kolejnymi klawiszami zmieniając tylko numer GPIO —>> SimpleIOClass.SetPin(1);

I to wszystko niby prawda ?? No nie całkiem na początku programu musimy oczywiście
dodać bibliotekę przez dopisanie w sekcji using:

oraz wykrywanie czy nasz MCP jest podłączony :

Jak widzicie możemy odwoływać się do naszego układu nie tylko przez port COM który nam dodadzą sterowniki do systemu ale tez bezpośrednio przez VID / PID USB , dzięki czemu mamy bezpośredni dostęp do rejestrów układu. Więcej jest opisane w pliku pdf dodanym do biblioteki możliwości jest bardzo wiele, Dzięki temu możemy zbudować sterownik z monitorowaniem innego układu przez UART .. zresztą tylko wyobraźnia was ogranicza z takim świetnym rozwiązaniem.

<——- DODATKOWE INFORMACJE ——————————————————————

Oczywiście w tym miejscu skupiłem się jak wspominałem tylko na najprostszym dostępie do GPIO w układzie MCP2200 co nie znaczy że tylko mamy SET i Clear dostępne.

SimpleIO.dll udostępnia nam szereg funkcji i klas dzięki czemu możemy kontrolować cały układ łącznie z odczytem wartości na pinach , czy zapisem i odczytem EEPROMA.
wystarczy się zainteresować opisem ..

<——————————————————————————————————————-

Tymczasem nasz program:

154b84b3ecaebccdad4c445d938ef00d

Możecie pobrać z podstrony sunSOFT i po testować, na potrzeby pokazania działania został okrojony z pozostałych funkcji  sterowania i wiele w nim rzeczy zostało usuniętych. Miłej zabawy.

Podziel się na:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Blogplay