RTV forum PL | NewsGroups PL

Implementacja 32-bitowego procesora ARM jako urządzenia USB-UART dla Linuxa

Procesor z USB udający device type UART

NOWY TEMAT

elektroda NewsGroups Forum Index - Elektronika Polska - Implementacja 32-bitowego procesora ARM jako urządzenia USB-UART dla Linuxa

Goto page Previous  1, 2, 3, 4  Next

Jarosław Sokołowski
Guest

Wed Nov 11, 2015 11:41 pm   



Pan Piotr Dmochowski napisał:

Quote:
Dzięki. Bardziej mi chodzi o wstanie systemu z nową konfiguracją
w czasie power-on. W tym akurat systemie nie przewiduję wkładania,
ani wyjmowania płytek pod napięciem. Mimo że USB to umożliwia.
Widzę że panowie zafiksowaliście się na tych numerach, co po czym
i dlaczego itp itd.
Nie szkoda czasu na takie szukanie po omacku, które w dodatku ma
wątpliwą gwarancję działania?

???

Quote:
Może warto pójść warstwę wyżej i zrobić mechanizm typu: pytamy moduł co
on za jeden i jakie ma dane, a jak nam odpowiedź pasuje to utrzymujemy
połączenie i pobieramy dane (a jak nam odpowiedź się nie spodoba to
zamykamy port i niech inni próbują). Albo na podstawie odpowiedzi dajemy
cynk do aplikacji, którego portu ma używać żeby otrzymać właściwe dane.
Można zrobić program rozbiegowy który przepyta wszystkie dostępne porty
i przygotuje odpowiedni plik konfiguracyjny dla głównej aplikacji.

Mam wrażenie, że wzmiankowany udev jest właśnie czymś takim, tylko
zrobionym porządnie i uniwersalnie. A nade wszystko JUŻ zrobionym,
więc nie trzeba wiele pisać, wystarczy jedna linijka w pliku reguł.

--
Jarek

Jarosław Sokołowski
Guest

Wed Nov 11, 2015 11:45 pm   



Pan Pszemol napisał:

Quote:
W tej sytuacji w ogóle należy zainteresowć się tworzeniem reguł
umieszczonych w /etc/udev. Tam można dość dokładnie opisać, co
ma się stać po włożeniu czegoś konkretnego do konkretnej dziurki.

Dzięki. Bardziej mi chodzi o wstanie systemu z nową konfiguracją
w czasie power-on. W tym akurat systemie nie przewiduję wkładania,
ani wyjmowania płytek pod napięciem. Mimo że USB to umożliwia.
Czy z punktu widzenia systemu to też obsługuje /etc/udev ?

Tak, nie ma większego znaczenia, czy rozpoznawanie dotyczy sytuacji
wkładania wtyczki w gniazdko, czy startu systemu. Udev jest porządnie
zrobionym podsystemem, można opisać co się chce (i czego się nie chce,
by system robił).

Super - dzięki Wam wszystkim za pomoc...
Niestety cienki bolek ze mnie jesli chodzi o linuxa.
Pewne rzeczy warto wiedzieć w fazie początkowej projektowania
aby sobie później nie pluć w brodę że mogło się zrobić inaczej Wink

No to się wcześniej bierze dowolnego peceta, wtyka mu swoje diwajsy,
patrzy ewentualnie w komunikaty kernela w logach, a potem pisze lub
modyfikuje regułę udev. To są przenośnie rzeczy, w urządzeniu zrobionym
później, będzie to działać tak samo.

--
Jarek

Piotr Dmochowski
Guest

Wed Nov 11, 2015 11:53 pm   



W dniu 2015-11-11 o 23:31, Pszemol pisze:
Quote:
"Piotr Dmochowski" <imie_nazwisko@poczta.onet.pl> wrote in message
news:5643c0a6$0$22826$65785112@news.neostrada.pl...
Dzięki. Bardziej mi chodzi o wstanie systemu z nową konfiguracją
w czasie power-on. W tym akurat systemie nie przewiduję wkładania,
ani wyjmowania płytek pod napięciem. Mimo że USB to umożliwia.
Widzę że panowie zafiksowaliście się na tych numerach, co po czym i
dlaczego itp itd.
Nie szkoda czasu na takie szukanie po omacku, które w dodatku ma
wątpliwą gwarancję działania?
Może warto pójść warstwę wyżej i zrobić mechanizm typu: pytamy moduł
co on za jeden i jakie ma dane, a jak nam odpowiedź pasuje to
utrzymujemy połączenie i pobieramy dane (a jak nam odpowiedź się nie
spodoba to zamykamy port i niech inni próbują). Albo na podstawie
odpowiedzi dajemy cynk do aplikacji, którego portu ma używać żeby
otrzymać właściwe dane. Można zrobić program rozbiegowy który przepyta
wszystkie dostępne porty i przygotuje odpowiedni plik konfiguracyjny
dla głównej aplikacji.

Problem z Twoim pomysłem pojawi się, gdy do szyny USB będą
podłączone dwa identyczne moduły rozmawiające z identycznym
typem urządzeń do kórych użytkownik będzie chciał mieć intymny
dostęp znając ich fizyczną lokalizację i przypisanie do reszty systemu.
Ale jakoś je trzeba rozróżnić. Ja bym wolał dać jakie zworki cz inny

obrotowy przełącznik podający np. kod od 0 do 7, który będzie wysłany
jako fragment odpowiedzi niż uzależniać działanie aplikacji od
kolejności inicjalizacji portów. Jak rozpoznasz dwa takie same moduły
jeżeli po restarcie zmieni się kolejność podłączenia? Możesz
zagwarantować że zawsze jest ta sama sekwencja? Co będzie jak padnie hub
i zmieni się liczba portów, jakieś id czy inny detal i regułka
wyszukująca nie zadziała?

Quote:
Wymiana takiej płytki modułu (po burzy, po awarii) powinna dać
rezultat w postaci automatycznej rekonfiguracji podłączonych
urządzeń w to samo miejsce w architekturze całego urządzenia
i być do odróżnienia od sytuacji gdy ktoś dokłada nową płytkę
a nie wymienia uszkodzonej. Przypominam że płytki są identyczne
pod wpływem typu samej płytki (np. po prostu porty RS485)
i pod wpływem typu urzadzęń do jakich akurat są podłączone.
Ja bym jednak nie mieszał funkcji, złącze niech przekazuje dane, moduł

niech raportuje co przekazuje lub do czego sam jest podłączony.

--
Pozdrawiam
Piotrek

Jarosław Sokołowski
Guest

Thu Nov 12, 2015 12:08 am   



Pan Piotr Dmochowski napisał:

Quote:
Problem z Twoim pomysłem pojawi się, gdy do szyny USB będą
podłączone dwa identyczne moduły rozmawiające z identycznym
typem urządzeń do kórych użytkownik będzie chciał mieć intymny
dostęp znając ich fizyczną lokalizację i przypisanie do reszty systemu.
Ale jakoś je trzeba rozróżnić. Ja bym wolał dać jakie zworki cz inny
obrotowy przełącznik podający np. kod od 0 do 7, który będzie wysłany
jako fragment odpowiedzi niż uzależniać działanie aplikacji od
kolejności inicjalizacji portów. Jak rozpoznasz dwa takie same moduły
jeżeli po restarcie zmieni się kolejność podłączenia?

KERNEL=="sd[a-z]", ACTION=="add|change", \
ENV{DEVPATH}=="/devices/*/1-1/1-1:1.0/host*", SYMLINK+="USB1"

KERNEL=="sd[a-z]", ACTION=="add|change", \
ENV{DEVPATH}=="/devices/*/1-2/1-2:1.0/host*", SYMLINK+="USB2"

....i kolejne analogiczne linijki opisujące reszte portów w systemie.

Akurat jakiś tydzień temu miałem potrzebę, by takie same urządzenia
usb-storage były rozpoznawane na podstawie dziurki, do której zostały
podłączone. I są -- tworzy się dla nich link /dev/USBn, w zależności
od fizycznego umiejsowaienia, a niezależny od kolejności odnajdowania
(tak jak to jest w przypadku samych urządzeń /dev/sda, /dev/sdb...).
Tego właśnie potrzebowałem i dokładnie to mam.

Quote:
Możesz zagwarantować że zawsze jest ta sama sekwencja? Co będzie
jak padnie hub i zmieni się liczba portów, jakieś id czy inny detal
i regułka wyszukująca nie zadziała?

Obrotowe przełączniki, to ja miałem w urządzeniach podłączanych do
łańcucha SCSI. Dziękuję, wystarczy, przypuszczam, że juz nie chcę.

--
Jarek

Pszemol
Guest

Thu Nov 12, 2015 1:20 am   



"Jarosław Sokołowski" <jaros@lasek.waw.pl> wrote in message
news:slrnn47h7p.5bg.jaros@falcon.lasek.waw.pl...
Quote:
Pan Pszemol napisał:

W tej sytuacji w ogóle należy zainteresowć się tworzeniem reguł
umieszczonych w /etc/udev. Tam można dość dokładnie opisać, co
ma się stać po włożeniu czegoś konkretnego do konkretnej dziurki.

Dzięki. Bardziej mi chodzi o wstanie systemu z nową konfiguracją
w czasie power-on. W tym akurat systemie nie przewiduję wkładania,
ani wyjmowania płytek pod napięciem. Mimo że USB to umożliwia.
Czy z punktu widzenia systemu to też obsługuje /etc/udev ?

Tak, nie ma większego znaczenia, czy rozpoznawanie dotyczy sytuacji
wkładania wtyczki w gniazdko, czy startu systemu. Udev jest porządnie
zrobionym podsystemem, można opisać co się chce (i czego się nie chce,
by system robił).

Super - dzięki Wam wszystkim za pomoc...
Niestety cienki bolek ze mnie jesli chodzi o linuxa.
Pewne rzeczy warto wiedzieć w fazie początkowej projektowania
aby sobie później nie pluć w brodę że mogło się zrobić inaczej ;-)

No to się wcześniej bierze dowolnego peceta, wtyka mu swoje diwajsy,
patrzy ewentualnie w komunikaty kernela w logach, a potem pisze lub
modyfikuje regułę udev. To są przenośnie rzeczy, w urządzeniu
zrobionym później, będzie to działać tak samo.

Ale moich diwajsów jeszcze przecież nie ma...
Całą infrastrukturę projektujemy od nowa.

I na ten przykład widzę że kolega dał na naszych diwajsach
jako pomysł właśnie taki obrotowy przełącznik, którym
wybiera się cyfrę od 0-9 śrubokrętem płaskim a ja takich
rzeczy strasznie nie lubię. Było to akceptowalne może
w latach 80-tych ale dziś? Smile Come on....

Mam więc teraz już dzięki Wam dwie opcje do przedyskutowania.
I za to dziękuję.

Pszemol
Guest

Thu Nov 12, 2015 3:08 am   



"Jarosław Sokołowski" <jaros@lasek.waw.pl> wrote in message
news:slrnn47ijj.63n.jaros@falcon.lasek.waw.pl...
Quote:
Pan Piotr Dmochowski napisał:

Problem z Twoim pomysłem pojawi się, gdy do szyny USB będą
podłączone dwa identyczne moduły rozmawiające z identycznym
typem urządzeń do kórych użytkownik będzie chciał mieć intymny
dostęp znając ich fizyczną lokalizację i przypisanie do reszty systemu.
Ale jakoś je trzeba rozróżnić. Ja bym wolał dać jakie zworki cz inny
obrotowy przełącznik podający np. kod od 0 do 7, który będzie wysłany
jako fragment odpowiedzi niż uzależniać działanie aplikacji od
kolejności inicjalizacji portów. Jak rozpoznasz dwa takie same moduły
jeżeli po restarcie zmieni się kolejność podłączenia?

KERNEL=="sd[a-z]", ACTION=="add|change", \
ENV{DEVPATH}=="/devices/*/1-1/1-1:1.0/host*", SYMLINK+="USB1"

KERNEL=="sd[a-z]", ACTION=="add|change", \
ENV{DEVPATH}=="/devices/*/1-2/1-2:1.0/host*", SYMLINK+="USB2"

...i kolejne analogiczne linijki opisujące reszte portów w systemie.

Akurat jakiś tydzień temu miałem potrzebę, by takie same urządzenia
usb-storage były rozpoznawane na podstawie dziurki, do której zostały
podłączone. I są -- tworzy się dla nich link /dev/USBn, w zależności
od fizycznego umiejsowaienia, a niezależny od kolejności odnajdowania
(tak jak to jest w przypadku samych urządzeń /dev/sda, /dev/sdb...).
Tego właśnie potrzebowałem i dokładnie to mam.

Tak ma być i u nas Smile Identyfikacja co gdzie wsadzone, bez wpływu na to
kiedy wsadzone albo bez wpływu na to że 2-giej płytki brak, bo chwilowo
wyjęta do serwisu, ale 1-sza oraz 3 i 4-ta są i działają normalnie, pod tymi
samymi adresami co były - nic się nie może przesuwać aby zasłonić dziurę,
nic nie może się dublować bo coś się nie do końca odłączyło i zablokowało
COM5 i nagle COM6 się pojawił, jak to się dzieje w Windows.

Quote:
Możesz zagwarantować że zawsze jest ta sama sekwencja? Co będzie
jak padnie hub i zmieni się liczba portów, jakieś id czy inny detal
i regułka wyszukująca nie zadziała?

Obrotowe przełączniki, to ja miałem w urządzeniach podłączanych do
łańcucha SCSI. Dziękuję, wystarczy, przypuszczam, że juz nie chcę.

Też mam jakiś uraz archaizmu do wszelkich dip-switchy czy rotary-switchy Smile

Pszemol
Guest

Thu Nov 12, 2015 3:09 am   



<stchebel@gmail.com> wrote in message
news:9f54e8cc-15d0-4a4e-9c6a-bad9aa01b048@googlegroups.com...
Quote:
W dniu wtorek, 10 listopada 2015 04:15:34 UTC+1 użytkownik Pszemol
napisał:
Jak trudno jest udawać USB UART (np. taki jak w chipsach FTDI)
mając do dyspozycji 32-bitowy procesor z USB, np. ARM
(Cortex M3 firmy NXP, np. LPC1788 lub M4 LPC4088)?

Buduję urządzenie, które będzie podłączane do linuxa...
Będzie się komunikowało strumieniem danych dobrze
reprezentowanym przez coś ala UART i pasowałoby
się przedstawić do tego linuxa jako dodatkowy port...

Mam więc opcję kupić gotowy chipset USB-UART i połączyć
z jego UARTem któryś UART z mojego Cortexa M3.
Ale to wydaje się być trochę nadmiarowe, bo tenże Cortex
M3 ma już port USB-Device. Gdybym chciał uniknąć
kładzenia na płytce chipsetu USB-UART i wejść z USB
wprost na port device mojego Cortexa - jak ciężko jest
w tym procku udawać że jest się UARTem dla USB Hosta?

Istotne jest aby aplikacja używająca moje urządzenie
widziała tylko port szeregowy i najchętniej aby nie było
konieczności pisania specjalnego drivera pod linuxa.

Niestety mam ciuta złe doświadczenia z FTDI, drivery D2XX są ŹLE opisane,
tryb FT245 serial mode działa faktycznie szybko (35MB/s), ale przy
konfiguracji FTDI=>FPGA=>PC trza trochę się narobić. Zarówno w HW jak i
SW. Jak czytasz z FIFO dane, są prawidłowe, ale przesunięte w "w fazie" o
kilka adresów. Jak chcesz, to mogę Ci przesłać międzymordzie zrobjone po
mojemu (Xilinx/VHDL).
Podaj adres - wyślę.

Dziękuję bardzo ale ani tam nie będę miał FTDI ani nie FPGA.

Guest

Thu Nov 12, 2015 3:57 am   



W dniu wtorek, 10 listopada 2015 04:15:34 UTC+1 użytkownik Pszemol napisał:
Quote:
Jak trudno jest udawać USB UART (np. taki jak w chipsach FTDI)
mając do dyspozycji 32-bitowy procesor z USB, np. ARM
(Cortex M3 firmy NXP, np. LPC1788 lub M4 LPC4088)?

Buduję urządzenie, które będzie podłączane do linuxa...
Będzie się komunikowało strumieniem danych dobrze
reprezentowanym przez coś ala UART i pasowałoby
się przedstawić do tego linuxa jako dodatkowy port...

Mam więc opcję kupić gotowy chipset USB-UART i połączyć
z jego UARTem któryś UART z mojego Cortexa M3.
Ale to wydaje się być trochę nadmiarowe, bo tenże Cortex
M3 ma już port USB-Device. Gdybym chciał uniknąć
kładzenia na płytce chipsetu USB-UART i wejść z USB
wprost na port device mojego Cortexa - jak ciężko jest
w tym procku udawać że jest się UARTem dla USB Hosta?

Istotne jest aby aplikacja używająca moje urządzenie
widziała tylko port szeregowy i najchętniej aby nie było
konieczności pisania specjalnego drivera pod linuxa.

Niestety mam ciuta złe doświadczenia z FTDI, drivery D2XX są ŹLE opisane, tryb FT245 serial mode działa faktycznie szybko (35MB/s), ale przy konfiguracji FTDI=>FPGA=>PC trza trochę się narobić. Zarówno w HW jak i SW. Jak czytasz z FIFO dane, są prawidłowe, ale przesunięte w "w fazie" o kilka adresów. Jak chcesz, to mogę Ci przesłać międzymordzie zrobjone po mojemu (Xilinx/VHDL).
Podaj adres - wyślę.

Guest

Thu Nov 12, 2015 4:08 am   



W dniu czwartek, 12 listopada 2015 02:57:32 UTC+1 użytkownik stch...@gmail.com napisał:
Jak chcesz, to mogę Ci przesłać międzymordzie zrobjone po mojemu (Xilinx/VHDL).
Quote:
Podaj adres - wyślę.

ZROBIONE, a nie ZROBJONE -- upsss. paluch mi się "omksnął" na klawiaturze.

Jarosław Sokołowski
Guest

Thu Nov 12, 2015 7:39 am   



Pan Pszemol napisał:

Quote:
Jak rozpoznasz dwa takie same moduły jeżeli po restarcie zmieni się
kolejność podłączenia?

KERNEL=="sd[a-z]", ACTION=="add|change", \
ENV{DEVPATH}=="/devices/*/1-1/1-1:1.0/host*", SYMLINK+="USB1"

KERNEL=="sd[a-z]", ACTION=="add|change", \
ENV{DEVPATH}=="/devices/*/1-2/1-2:1.0/host*", SYMLINK+="USB2"

...i kolejne analogiczne linijki opisujące reszte portów w systemie.

Akurat jakiś tydzień temu miałem potrzebę, by takie same urządzenia
usb-storage były rozpoznawane na podstawie dziurki, do której zostały
podłączone. I są -- tworzy się dla nich link /dev/USBn, w zależności
od fizycznego umiejsowaienia, a niezależny od kolejności odnajdowania
(tak jak to jest w przypadku samych urządzeń /dev/sda, /dev/sdb...).
Tego właśnie potrzebowałem i dokładnie to mam.

Tak ma być i u nas Smile Identyfikacja co gdzie wsadzone, bez wpływu na to
kiedy wsadzone albo bez wpływu na to że 2-giej płytki brak, bo chwilowo
wyjęta do serwisu, ale 1-sza oraz 3 i 4-ta są i działają normalnie, pod tymi
samymi adresami co były - nic się nie może przesuwać aby zasłonić dziurę,
nic nie może się dublować bo coś się nie do końca odłączyło i zablokowało
COM5 i nagle COM6 się pojawił, jak to się dzieje w Windows.

W przypadku portów szeregowych rozwiązuje się to analogicznie -- udev
dla urządzenia widzianego jako UART wpiętego do dziurki numer 4 (i tylko
do niej) robi alias /dev/bulbulator i sprawa załatwiona.

Quote:
Możesz zagwarantować że zawsze jest ta sama sekwencja? Co będzie
jak padnie hub i zmieni się liczba portów, jakieś id czy inny detal
i regułka wyszukująca nie zadziała?

Obrotowe przełączniki, to ja miałem w urządzeniach podłączanych do
łańcucha SCSI. Dziękuję, wystarczy, przypuszczam, że juz nie chcę.

Też mam jakiś uraz archaizmu do wszelkich dip-switchy czy rotary-switchy Smile

Ale jakieś numery seryjne warto mieć, jeśli jest taka możliwość. Karty
sieciowe rozpoznaje się w udev przez ich MAC, a potem obsługuje się w
sposób indywidualny. Nazwę urządzenia (typu eth3) też można tam zmienić).

--
Jarek

Marek
Guest

Thu Nov 12, 2015 9:26 am   



On Wed, 11 Nov 2015 17:30:43 +0100, Zbych <abuse@onet.pl> wrote:
Quote:
Masz do wyboru:
1. numer seryjny

No to specyfikacja USB narzuca, nie powinny być wpięte do hosta dwa
lub więcej urządzeń z tym samym nr seryjnym w deskryptorze.

--
Marek

Jakub Rakus
Guest

Thu Nov 12, 2015 12:33 pm   



W dniu 10.11.2015 o 13:02, Mario pisze:

Quote:
A to swoja droga ... izolatora na USB jeszcze nie ma ?

Zdaje się że są jakieś szybkie izolatory, które można by dać na linie USB.


Jest taka kostka ADUM4160. Sprawdziłem, działa w porządku, tylko trzeba
"ręcznie" jej wskazać poziomem na dwóch pindolkach czy gadamy po USB FS
czy LS.

--
Pozdrawiam
Jakub Rakus

Mario
Guest

Thu Nov 12, 2015 3:16 pm   



W dniu 2015-11-12 o 14:27, brak pisze:
Quote:
On Wednesday, November 11, 2015 at 1:44:37 AM UTC+1, Pszemol wrote:
"Mario" <Mario@w.pl> wrote in message news:n1u05r$ad7$1@dont-email.me...
Dlaczego nie mozesz bezposrednio polaczyc procesora
z kontrolerem UART-em skoro ma to byc trwale/stale polaczenie?

O jakim kontrolerze piszesz?
Dla rozroznienia zwyczajowo procesor typu Cortex-M nazywa sie kontrolerem vel uC
natomiast procesot typu Cortex-A procesorem.


Czyli uważałeś, ze chce połączyć Cortex-M z Cortex-A?


--
pozdrawiam
MD

brak
Guest

Thu Nov 12, 2015 3:27 pm   



On Wednesday, November 11, 2015 at 1:44:37 AM UTC+1, Pszemol wrote:
Quote:
"Mario" <Mario@w.pl> wrote in message news:n1u05r$ad7$1@dont-email.me...
Dlaczego nie mozesz bezposrednio polaczyc procesora
z kontrolerem UART-em skoro ma to byc trwale/stale polaczenie?

O jakim kontrolerze piszesz?
Dla rozroznienia zwyczajowo procesor typu Cortex-M nazywa sie kontrolerem vel uC

natomiast procesot typu Cortex-A procesorem.

Quote:
On chyba łączy te urządzenie z prockiem do
komputera z Linuksem. Raczej można się spodziewać, że ten komputer nie
będzie miał w ogóle UART.
Taaaa. To nie jest PC in procesorem Intel, np. i.MX6 posiada 5 UART-ow.



Quote:
A swoją drogą płytka komputera głownego ma 3 UARTy, ale
to za mało, i na dodatek nie są izolowane, więc nie będę ich używał.
Zwykle komputery nie maja optoizolacji to nie ta polka.


brak
Guest

Thu Nov 12, 2015 5:17 pm   



On Thursday, November 12, 2015 at 3:17:00 PM UTC+1, Mario wrote:
Quote:
W dniu 2015-11-12 o 14:27, brak pisze:
On Wednesday, November 11, 2015 at 1:44:37 AM UTC+1, Pszemol wrote:
"Mario" <Mario@w.pl> wrote in message news:n1u05r$ad7$1@dont-email.me....
Dlaczego nie mozesz bezposrednio polaczyc procesora
z kontrolerem UART-em skoro ma to byc trwale/stale polaczenie?

O jakim kontrolerze piszesz?
Dla rozroznienia zwyczajowo procesor typu Cortex-M nazywa sie
kontrolerem vel uC natomiast procesot typu Cortex-A procesorem.

Czyli uważałeś, ze chce połączyć Cortex-M z Cortex-A?

Jak trudno jest udawać USB UART (np. taki jak w chipsach FTDI)
mając do dyspozycji 32-bitowy procesor z USB, np. ARM
(Cortex M3 firmy NXP, np. LPC1788 lub M4 LPC4088)?

Buduję urządzenie, które będzie podłączane do linuxa...

oraz

Quote:
Tak, ma być na stałe podłączone do "jednopłytkowego"
"peceta" embedded na ARMie 1GHz przez port USB3.1.
Moje USB-Device będzie USB2.0, w tej samej skrzynce.

Z powyzszych informacji tak wynika. A co autor mial na mysli to trzeba dopytac autora.

Goto page Previous  1, 2, 3, 4  Next

elektroda NewsGroups Forum Index - Elektronika Polska - Implementacja 32-bitowego procesora ARM jako urządzenia USB-UART dla Linuxa

NOWY TEMAT

Regulamin - Zasady uzytkowania Polityka prywatnosci Kontakt RTV map News map