Od czego mogę zacząć od programowalnego sprzętu?

Od dłuższego czasu miałem ochotę nauczyć się chociaż trochę programowania sprzętu i pomyślałem, że zapytam tutaj, aby uzyskać kilka punktów początkowych. Jestem w miarę sprawnym programistą z doświadczeniem w Delphi i Objective-c, ale nigdy nawet nie słuchałem portu / interupt urządzenia (nawet nie znam terminologii), nie mówiąc już o zaprogramowaniu jakiegoś sprzętu.

Na początek chciałbym móc to zrobić,

    Kupie prosty zestaw z 2,3 lub 10 buttons
  • podłącz urządzenie do mojego komputera przez USB
  • Posłuchaj urządzenia i napisz jakiś kod, aby zrobić coś po naciśnięciu przycisku.

Myślę, że to dobre miejsce na początek, ktoś ma wskazówki na temat sprzętu do kupienia lub Jak mogę to zacząć?

Author: Dan, 2010-08-25

9 answers

Lubię Arduino , Łatwy w użyciu, open source i świetna społeczność!

Dobrze zacząć i używa podzbioru C / C++.

Posiada również wiele dostępnych akcesoriów, takich jak GPS, Bluetooth, Wifi itp]}

Moje doświadczenia z Arduino były tylko dobre, od momentu, gdy wyciągasz go z pudełka (i instalujesz bezpłatny kompilator na Windows / Mac / Linux), do budowania swojego pierwszego "szkicu" (projektu lub aplikacji dla Arduino).

Tworzenie aplikacji jest łatwe, masz metodę Setup, która jest wywoływana podczas uruchamiania, a następnie metodę loop, która jest zapętlona podczas działania Arduino.

Następnie wszystko, co musisz zrobić, to podłączyć wejścia lub wyjścia do pinów na tablicy Arduino, powiedzieć Kod, co to są i mam nadzieję, że otrzymasz pożądane wyjście.

[2]} Jeszcze jedna dobra rzecz w Arduino (i innych jestem pewien) jest to, że teraz masz zastosowanie do tych starych zepsutych drukarek, lub 2x CD-Rom jest, że nikt nie chce, i każda inna odrobina przestarzałej technologii. To niesamowite, co można znaleźć w serwerowni! Pracowałem tylko nad małymi projektami, takimi jak Podłączanie LCD, odczytywanie temperatury pokojowej i różnych podobnych projektów. Ale bazując na tym, co zrobiłem, jestem zadowolony z Ardunio, daje dobrą bazę do programowania wbudowanego i jeśli to nie wystarczy, zawsze możesz iść większy! Moje 2 centy!
 20
Author: PostMan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-09-01 21:41:55

Istnieje również hot-off-the press netduino , który używa. NET Micro Framework i Microsoft Visual C # Express. Nie wiem, czy to lepsze niż Arduino, ale to inna opcja.

 3
Author: gary,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-09-01 16:54:37

Zacznij od programowania AVR dla mikroprocesorów. Tak, to może być trochę za niski poziom. ale znam wiele osób, które zaczynały od programowania sprzętowego. kompilator można znaleźć tutaj. http://winavr.sourceforge.net / i dobry tutorial tutaj: http://www.ladyada.net/learn/avr/

 2
Author: Auxiliary,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-09-01 15:08:37

Poprzedni plakat wspomniał o Arduino, ale należy również rozważyć Teensy . To w zasadzie to samo, ale cena jest trochę lepsza. Masz również możliwość korzystania z niego w trybie "Arduino" lub raw AVR. Nie wiem, czy Arduinos daje Ci obie opcje.

Jest strona porównawcza gdzie widać, że Teensy ma lepszy sprzęt. Wbudowany USB daje mu znacznie lepszą wydajność.

 2
Author: cmcginty,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-09-03 18:43:56

Zdecydowanie sugerowałbym wypróbowanie różnych mikrokontrolerów. Arduino kontrolery są ładne i mają numer z tutoriale .

Jednak nie jest to jedyna opcja. W szkole pracowałem z fotkami z Mikroczipami , które są również całkiem miłe dla sceny hobbystycznej. Fajną rzeczą w PIC było to, że nasz podręcznik mikrokontrolerów obsługiwał go, więc musieliśmy zobaczyć aplikację, gdy uczyliśmy się teorii.

 1
Author: quanticle,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-09-01 16:35:53

Jeśli dobrze rozumiem twoje pytanie, nie interesuje Cię programowanie wbudowane. Chcesz kupić coś, co działa od samego początku i sterować nim z systemu Windows.

Jeśli chodzi o przyciski, nie ma wiele do zrobienia w systemie Windows. Są to elementy sterujące HID, a okna obsługują wszystkie interfejsy za Ciebie. Nic ciekawego.

W takim przypadku możesz chwycić dowolny Joystick i użyć DirectInput (część technologii DirectX.) do interakcji z nim. Z force feedback you może zrobić kilka fajnych rzeczy.

Ciekawszym projektem byłoby kupno kontrolki Wii i napisanie kilku ciekawych aplikacji. Spójrz na tę stronę, aby dowiedzieć się, co mam na myśli:

Http://johnnylee.net/projects/wii/

Ponieważ Windows nie ma wsparcia dla Wii Controller, naprawdę można zrobić trochę pracy Tutaj:)

 1
Author: Max Kielland,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-09-06 03:36:48

Widzę, że lubisz Delphi, więc możesz rzucić okiem na AvrCo Multitasking Pascal dla AVR. Możesz spróbować w http://www.e-lab.de . Wersja MEGA8/88 jest darmowa. Istnieje mnóstwo sterowników, symulator, JTAG debugger online i programator z wizualizacją wszystkich standardowych urządzeń (dla uruchomienia, można zrobić prosty programator LPT z zaledwie kilku rezystorów). Może również tworzyć programy dla wszystkich urządzeń Arduino, ponieważ AVR jest w ich palenisku. ATMEL STK500 to dobry początkujący płyta z diodami LED, przełącznikami i kilkoma innymi urządzeniami peryferyjnymi. Jeśli wolisz open source, WinAVR z GCC może być twoją ścieżką.

 1
Author: avra,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-09-06 13:51:11

Jak już wspomniano, Arduino jest dobrym wyborem. Społeczność jest duża i pomocna. Fajną rzeczą jest to, że możesz przejść do "prawdziwego" języka za pomocą portu GCC dla AVR micros, jeśli chcesz. W moim najnowszym projekcie zrobiłem to-prototyp większości z Arduino, a następnie napisać go ponownie w C.

Rozpoczęcie od przycisków i diod led to świetny pomysł. Zbuduj pewność siebie w pracy z podstawowym sprzętem najpierw, przed modding Wii!

Niektóre linki:

  • Windows GCC kompilator krzyżowy (instalacja 1 krok) dla AVR: WinAVR
  • Zestaw klonów Arduino
  • Adafruit jest kolejnym dobrym źródłem sprzętu startowego i porad technicznych.]}
  • the embedded StackOverflow
 1
Author: John Lopez,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-04-12 07:29:54

Każdy program, który już piszesz, współdziała ze sprzętem, jest monitor, klawiatura, mysz, głośnik itp. Uzyskanie prostej konfiguracji, w której program może radzić sobie z przyciskami na urządzeniu USB, nie nauczy cię tak wiele o pracy ze sprzętem. Jest to częściowo kwestia tego, jak nisko chcesz wejść w stos oprogramowania i jak wiele chcesz dowiedzieć się o tym, co dzieje się w punkcie, w którym kończy się oprogramowanie.

    Kup sobie kopię " the Art of Elektronika". To jest względnie łatwy odczyt i obejmuje wszystko między prawem Ohma a mikroprocesorem i da ci dobry obraz tego, co robi cały system. Przeczytaj. # Patrz Digikey Możesz kupić wszystko związane ze sprzętem od rezystorów, kondensatorów, układów scalonych, tanich płyt łatwo online i za rozsądne ceny.

Inne odpowiedzi wymieniły Microchip PIC i Atmel AVR, czyli małe i proste mikrokontrolery. Obie firmy mają bogate zastosowanie notatki, sprawdź ich stronę internetową, przeczytaj notatki z aplikacji. Możesz uzyskać tanie tablice oceny dla powyższego lub coś podobnego do Arduino wymienionego w innych odpowiedziach. Rozważ zaprojektowanie i zbudowanie własnej planszy, aby zmusić się do nauki podstaw. Znajdź przyjaciela, który jest EE lub poważnym hobbystą, który nie miałby nic przeciwko, aby pomóc ci z kilkoma wskazówkami.

Jeśli chcesz dowiedzieć się więcej o sprzęcie PC, możesz rzucić okiem na kilka prostych sterowników urządzeń (np. drukarki lub portu szeregowego) pod Windows( Pobierz WinDDK), Linux lub nawet DOS. Programowanie pod czymś takim jak DOS na PC pozwala na stosunkowo łatwą interakcję ze sprzętem PC, można użyć portu drukarki do odczytu przycisków itp.

Linki (jestem nowym użytkownikiem więc nie mogę linkować bezpośrednio):

Www.amazon.com/Art-Electronics-Paul-Horowitz/dp/0521370957

Www.digikey.com/

Www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=2879

Www.atmel.com/products/avr/

 1
Author: Guy Sirton,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-09-12 19:08:54