Goto page 1, 2 Next
Andrzej W.
Guest
Mon Nov 05, 2007 3:19 pm
Witam,
Zastanawiam się, czy ze strony elektroników było by zainteresowanie
sterownikiem do PC (Windows/Linux) umożliwiającym wymianę danych między
mikrokontrolerem a PC.
W mikrokontrolerze trzeba by było skonfigurować dwa endpointy i obsługę
transmisji usb, po stronie PC mielibyśmy do dyspozycji funkcje
wyślij/odbierz dane i tyle.
Gdy zaczynałem przygodę z USB w mikrokontrolerach sterownik był tym
czego nie potrafiliśmy przeskoczyć.
Teraz jest on gotowy, a programista jest otwarty na współpracę.
Jak myślicie, czy warto poświęcić czas by go udostępnić, czy to się
komuś przyda?
--
Pozdrawiam,
Andrzej
Piotr \"PitLab\" Laskowsk
Guest
Mon Nov 05, 2007 3:38 pm
Quote:
Zastanawiam się, czy ze strony elektroników było by zainteresowanie
sterownikiem do PC (Windows/Linux) umożliwiającym wymianę danych między
mikrokontrolerem a PC.
Jakich mikrokontrolerów? Bo obecność USB w peryferiach mikrokontrolera nie
jest rzeczą powszechną.
Quote:
Jak myślicie, czy warto poświęcić czas by go udostępnić, czy to się
komuś przyda?
Jasne. Gotowiec na start to świetna sprawa. Potrafi zaoszczędzić kilka dni
pracy.
Kiedys przegryzałem się przez USB dla kontrolerów Cypressa i ładnych kilka
dni siedziałem zanim coś rozsądnie zaczeło działać.
--
Piotrek.
http://www.pitlab.pl
Mario
Guest
Mon Nov 05, 2007 3:40 pm
Andrzej W. pisze:
Quote:
Witam,
Zastanawiam się, czy ze strony elektroników było by zainteresowanie
sterownikiem do PC (Windows/Linux) umożliwiającym wymianę danych między
mikrokontrolerem a PC.
W mikrokontrolerze trzeba by było skonfigurować dwa endpointy i obsługę
transmisji usb, po stronie PC mielibyśmy do dyspozycji funkcje
wyślij/odbierz dane i tyle.
Na czym oparte? LibUSB (przenośność Linux/cygwin) czy tylko windowsowe?
Jak duże bloki danych
Quote:
Gdy zaczynałem przygodę z USB w mikrokontrolerach sterownik był tym
czego nie potrafiliśmy przeskoczyć.
Teraz jest on gotowy, a programista jest otwarty na współpracę.
Jak myślicie, czy warto poświęcić czas by go udostępnić, czy to się
komuś przyda?
Jeśli soft otwarty te pewnie byliby zainteresowani. Na przykład ja.
--
Pozdrawiam
MD
Andrzej W.
Guest
Mon Nov 05, 2007 3:50 pm
Piotr "PitLab" Laskowski pisze:
Quote:
Jakich mikrokontrolerów? Bo obecność USB w peryferiach mikrokontrolera nie
jest rzeczą powszechną.
Projekt ma obejmować oprogramowanie do PC oraz opis formatu w jakim dane
będą docierać do mikrokontrolera i konfiguracji USB.
Odpowiedz więc brzmi właściwie dla wszystkich obsługującego USB.
Obsługę USB w samym mikrokontrolerze trzeba będzie już zrobić sobie samemu.
--
Pozdrawiam,
Andrzej
Andrzej W.
Guest
Mon Nov 05, 2007 3:57 pm
Mario pisze:
Quote:
Na czym oparte? LibUSB (przenośność Linux/cygwin) czy tylko windowsowe?
Sterowniki napisane są w C. (Windows/DDK, Linux/gcc)
Quote:
Jak duże bloki danych
Protokół transmisji pomyślany jest tak, by nie limitował ilości
przesyłanych danych.
Dane przesyłane są w paczkach 32 bajtowych, z tego co pamiętam.
Quote:
Jeśli soft otwarty te pewnie byliby zainteresowani. Na przykład ja.
Tak, planujemy by soft był dostępny za darmo również do zastosowań
komercyjnych.
--
Pozdrawiam,
Andrzej
MT
Guest
Mon Nov 05, 2007 7:08 pm
Rozumiem ze to softwarowy sterownik wykorzystujacy jakies 2 piny GPIO do
transmisji ?
Mario
Guest
Mon Nov 05, 2007 8:25 pm
MT pisze:
Quote:
Rozumiem ze to softwarowy sterownik wykorzystujacy jakies 2 piny GPIO do
transmisji ?
Ja zrozumiałem, że to ma być uniwersalny sterownik dla PC aby ułatwić
elektronikom uruchamianie mikrokontrolerów z USB na pokładzie. Ale może
się mylę?
--
Pozdrawiam
MD
"Polska to takie dziecko z downem, trzeba je kochać ale cudów to nie
należy się spodziewać" (znalezione na bash.org.pl).
Mario
Guest
Mon Nov 05, 2007 8:26 pm
Andrzej W. pisze:
Quote:
Mario pisze:
Na czym oparte? LibUSB (przenośność Linux/cygwin) czy tylko windowsowe?
Sterowniki napisane są w C. (Windows/DDK, Linux/gcc)
Jak duże bloki danych
Protokół transmisji pomyślany jest tak, by nie limitował ilości
przesyłanych danych.
Dane przesyłane są w paczkach 32 bajtowych, z tego co pamiętam.
Jeśli soft otwarty te pewnie byliby zainteresowani. Na przykład ja.
Tak, planujemy by soft był dostępny za darmo również do zastosowań
komercyjnych.
Jak będziecie gotowi udostępnić stronkę projektu to dajcie info na grupę.
--
Pozdrawiam
MD
Andrzej W.
Guest
Mon Nov 05, 2007 8:29 pm
Mario pisze:
Quote:
Ja zrozumiałem, że to ma być uniwersalny sterownik dla PC aby ułatwić
elektronikom uruchamianie mikrokontrolerów z USB na pokładzie. Ale może
się mylę?
Tak, dokładnie o tym myślę.
--
Pozdrawiam,
Andrzej
Mewsik
Guest
Mon Nov 05, 2007 8:53 pm
Myślę że to bardzo dobry pomysł
Mister
Guest
Mon Nov 05, 2007 9:42 pm
Quote:
Sterowniki napisane są w C. (Windows/DDK, Linux/gcc)
W DDK jest kilka gotowych sterowników pod usb jako sampli więc nic nie
trzeba pisać

tylko przekompilować.
Quote:
Jak duże bloki danych
Protokół transmisji pomyślany jest tak, by nie limitował ilości
przesyłanych danych.
Dane przesyłane są w paczkach 32 bajtowych, z tego co pamiętam.
Co to za protokół ? EP w FS ma 64B w HS 512 więc czemu ograniczasz do 32 B?
Bufor OHCI/ EHCI jest bodajże 4KB więc jak chcesz słać paczki 32B w
rozsądnej szybkości?
Pytanie pozostaje otwarte : jakiego rzędu transfery spodziewasz się uzyskać?
Jak rozwiążesz sprawę VIDu ? szczególnie w zastosowaniach komercyjnych?
MiSter
Andrzej W.
Guest
Mon Nov 05, 2007 11:34 pm
Mister pisze:
Quote:
W DDK jest kilka gotowych sterowników pod usb jako sampli więc nic nie
trzeba pisać

tylko przekompilować.
Jeśli ktoś to robi na co dzień to pewnie bułka z masłem, pytanie tylko
ile osób na tej grupie używa DDK.
Quote:
Co to za protokół ? EP w FS ma 64B w HS 512 więc czemu ograniczasz do 32 B?
Bufor OHCI/ EHCI jest bodajże 4KB więc jak chcesz słać paczki 32B w
rozsądnej szybkości?
Pytanie pozostaje otwarte : jakiego rzędu transfery spodziewasz się uzyskać?
Rozwiązanie ma być przeznaczone raczej dla ludzi zaczynających zabawę z
USB w mikrokontrolerach, ma ono ułatwić start, nie aspiruje do bycia
lekiem na całe zło.
Quote:
Jak rozwiążesz sprawę VIDu ? szczególnie w zastosowaniach komercyjnych?
Czy aby się trochę nie zapędzasz, co to ma wspólnego z biblioteką dla
PC? Równie dobrze mógłbyś mi zarzucić, że nie przedstawiłem pomysłu na
zdobycie funduszy potrzebnych na zakup odpowiedniego mikrokontrolera...
--
Pozdrawiam,
Andrzej
Adam Dybkowski
Guest
Tue Nov 06, 2007 1:14 am
Andrzej W. pisze:
Quote:
Zastanawiam się, czy ze strony elektroników było by zainteresowanie
sterownikiem do PC (Windows/Linux) umożliwiającym wymianę danych między
mikrokontrolerem a PC.
W mikrokontrolerze trzeba by było skonfigurować dwa endpointy i obsługę
transmisji usb, po stronie PC mielibyśmy do dyspozycji funkcje
wyślij/odbierz dane i tyle.
To ma sens jedynie jeżeli będą (docelowo) dostępne sterowniki windozowe
podpisane przez WHQL, m.in. do Visty 32- i 64-bitowej. W innym przypadku
lepiej wykorzystać już gotowy, sprawdzony sterownik (np. do układu
FT245, udostępniający wirtualny port COM) i skupić się na przygotowaniu
biblioteki dla mikrokontrolera "udającej" układ FT245. Można też jeszcze
prościej - oprogramować w mikrokontrolerze klasę CDC ACM i skorzystać z
dobrodziejstwa standardowego sterownika usbser.sys (w Windows) lub
wbudowanego sterownika Linuxa.
Podsumowując: zabawa z własnymi sterownikami dla PC jest fajna, ale
najpierw lepiej się skupić na oprogramowaniu od strony mikrokontrolera i
użyciu gotowego certyfikowanego sterownika. Bo gadać z portem COM
(choćby wirtualnym) w pececie to chyba każdy umie.
--
Adam Dybkowski
http://www.amwaw.edu.pl/~adybkows/
Uwaga: przed wysłaniem do mnie maila usuń cyfry z adresu.
Andrzej W.
Guest
Tue Nov 06, 2007 8:31 am
Adam Dybkowski pisze:
Quote:
....
lepiej wykorzystać już gotowy, sprawdzony sterownik (np. do układu
FT245, udostępniający wirtualny port COM)
... Można też jeszcze
prościej - oprogramować w mikrokontrolerze klasę CDC ACM i skorzystać z
dobrodziejstwa standardowego sterownika usbser.sys (w Windows) lub
wbudowanego sterownika Linuxa.
Czy jest dostępna gdzieś dokumentacja jak zorganizować obsługę FT245 lub
usbser.sys po stronie mikrokontrolera?
Jeśli tak, to jest to chyba najprostsze rozwiązanie, choć sam RS nie
jest dla mnie dobrym pomysłem na organizację komunikacji.
--
Pozdrawiam,
Andrzej
MKi
Guest
Tue Nov 06, 2007 4:59 pm
Quote:
.... lepiej wykorzystać już gotowy, sprawdzony sterownik (np. do
układu FT245, udostępniający wirtualny port COM) ... Można też jeszcze
prościej - oprogramować w mikrokontrolerze klasę CDC ACM i skorzystać
z dobrodziejstwa standardowego sterownika usbser.sys (w Windows) lub
wbudowanego sterownika Linuxa.
Czy jest dostępna gdzieś dokumentacja jak zorganizować obsługę FT245 lub
usbser.sys po stronie mikrokontrolera?
Jeśli tak, to jest to chyba najprostsze rozwiązanie, choć sam RS nie
jest dla mnie dobrym pomysłem na organizację komunikacji.
Jak dla mnie, najprostsze rozwiązanie to wykorzystanie klasy HID.
Sterownik gotowy w systemie, oprogramowanie tylko klienckie.
Jaka prostota instalacji!
Co prawda obsługa HID w Windows jest taka hm... barokowa,
ale w końcu - co takie nie jest w Windows. Mi się udało napisać
na podstawie samej dokumentacji MSDN, ale "letko" nie było.
Maksymalny transfer, jaki udało mi się wyciągnąć to 64000B/s,
czyli dokładnie teoretyczny zasięg (64 bajty w pakietach co 1ms).
Oczywiście pozostaje wciąż zrobienie klasy HID w mikroprocesorze
- ja miałem szczęście i procesorek, który wybrałem (SiLabs) miał
tę klasę oprogramowaną w jednej z not aplikacyjnych. Oczywiście
trzeba było poprzerabiać, ale było z czego zacząć.
Pozdrowienia,
MKi
Goto page 1, 2 Next