Jak programować sprzęt? [zamknięte]

Jestem biegłym programistą Visual Basic. Chciałbym się dowiedzieć, jak ludzie programują sprzęt. Na przykład widziałem, jak ludzie tworzą Zegarki LED, pudełka itp. Jak to osiągnąć? Czy można to zrobić za pomocą VB lub Javy? Mam doświadczenie w czytaniu kodu C, C++. Znam IO tylko w języku C i C++.

Author: Joel Coehoorn, 2011-06-21

6 answers

Prawdopodobnie szukasz programowalnego mikrokontrolera. Jeśli masz doświadczenie w C/C++/Java, checkout Arduino. Jego chip jest zaprogramowany przy użyciu języka podobnego do C. Ta strona " How Tos " może pomóc Ci zacząć. Istnieje również kilka dobrych książek, które pomogą Ci iść do przodu:

  1. Interaktywność Programowania .
  2. poruszanie rzeczy mechanizmy DIY dla wynalazców, hobbystów i artystów

Okablowanie jest platformą podobną do Arduino.

Zobacz też język programowania Forth . Istnieje wiele ciekawych " tiny Komputery ", które można programować tym dość nietypowym językiem. Oto lista częściowa:

  1. Forth Inc
  2. Greenarrays
  3. Zilog Z8
  4. PIC18Fxx2

Dwie słynne książki:

  1. Start Forth
  2. Thinking Forth (klasyk w literaturze Inżynierii Oprogramowania.)
 19
Author: Vijay Mathew,
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
2011-06-22 06:04:00

Jak ludzie programują Sprzęt

Jeśli przez "hardware" masz na myśli samodzielne urządzenie (system wbudowany), to proces wymaga cross-compilation. Kod urządzenia jest napisany w języku wysokiego poziomu na komputerze host, skompilowany i przekonwertowany do postaci odpowiedniej do pobierania na urządzenie docelowe.

Kompilator krzyżowy generuje kod wykonywalny dla platformy innej niż ta, na której jest uruchomiony-na przykład AVR cross-compiler wygeneruje kod dla mikrokontrolera AVR, ale kompilator działa na komputerze. Powszechnie stosowane są assembly i C, a w pewnym stopniu C++, Java i Ada.

Jeśli przez "sprzęt" rozumiesz jakieś urządzenie podłączone do komputera przez jakiś port (szeregowy, równoległy, USB), to programowanie wymaga interakcji przez ten port, prawdopodobnie również wymagającej sterownika urządzenia.

Czy można to zrobić za pomocą VB lub Javy?

Nie jestem pewien co do VB (może są VB Kompilatory WinCE i jego ilk). Java jest używana w bardziej złożonych / większych systemach wbudowanych (np. telefony komórkowe), głównie w celu opracowania aplikacji użytkownika dla urządzenia.

Tworzenie zegarków LED, pudełek itp. Jak to osiągnąć?

Jeśli jesteś zainteresowany stworzeniem czegoś takiego jak zegarek LED, musisz nauczyć się programować mikrokontroler. Co najmniej potrzebne są dwa komponenty: mikrokontroler i trochę sprzętu, który ładuje na niego Programy (a programista ). Możesz zainwestować w Radę Rozwoju lub zbudować ją samodzielnie. Oczywiście potrzebny będzie również cross-compiler oraz sotware, który współdziała z programerem, aby mógł załadować kod.

Jestem zwolennikiem AVR, więc sugerowałbym to. Inne opcje to PIC, niektóre warianty urządzeń 8051, PSoC1 i MSP ti. AVR-GCC (nakładka na kompilator krzyżowy), avrdude (oprogramowanie, które współgra ze sobą), AVR-GCC (nakładka na kompilator krzyżowy), AVR-GCC (nakładka na kompilator krzyżowy), avrdude (oprogramowanie, które współgra ze sprzętem programisty) i biblioteką C (avr-libc) + kilka przydatnych narzędzi. Programowanie sprzętu może być tak proste jak DAPA / bsd na USB (AVRISP, USBasp, Usbprog)itp.

Lub, jeśli twój komputer nadal ma port równoległy, możesz spróbować sterować zestawem Diod Led za pomocą aplikacji napisanej w VB. Sprawdź http://www.lvr.com/parport.htm Po szczegóły.

 6
Author: ksk,
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
2011-06-21 18:37:49

Polecam zacząć od czegoś takiego jak arduino, który jest dobrym miejscem do rozpoczęcia programowania blisko sprzętu. Jest to płyta prototypowa z wbudowanymi diodami LED i innymi rzeczami, w zależności od tego, który model otrzymasz. Możesz użyć C / C++ lub dowolnego innego języka, który może być skompilowany do formatu zgodnego ze sprzętem docelowym (mikrokontroler ATMega wierzę w arduino).

Zobacz: http://www.google.com/search?client=ubuntu&channel=fs&q=arduino&ie=utf-8&oe=utf-8

 2
Author: iceaway,
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
2011-06-21 15:11:23

Jeśli chcesz po prostu podłączyć coś do portu szeregowego/równoległego komputera i "rozmawiać" z nim, możesz użyć większości języków. W Visual Basic będziesz potrzebował biblioteki dll, aby to osiągnąć. Java też może to zrobić. Jeśli chcesz zaprogramować układ mikrokontrolera, najlepiej naucz się C, ponieważ jest to język używany do programowania większości z nich, chociaż niektóre z nich akceptują basic, java, processing i C++.

 1
Author: Vitor,
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
2011-06-21 15:15:15

Istnieje wiele podstawowych znaczków, których możesz użyć, aby zamoczyć stopy. parallax na przykład wykonali swoją działalność w oparciu o podstawowe systemy wbudowane. Jeśli chcesz iść do przodu na tym poziomie programowania, naprawdę musisz nauczyć się C, aby uzyskać jak najwięcej zasięgu, a ja bardzo polecam asemblera, przynajmniej kilka różnych zestawów instrukcji.

 0
Author: old_timer,
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
2011-06-21 16:30:32

Może Cię zainteresować Gadgeteer . Mam grać z zestawem kilka tygodni temu, i to jest niesamowita zabawa. Obecnie nie można zrobić VB, ale można zrobić C # i VB nadchodzi bardzo szybko .

 0
Author: Joel Coehoorn,
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
2012-03-10 03:17:01