ubuntuusers.de

Treiber Programmieren

Status: Gelöst | Ubuntu-Version: Kein Ubuntu
Antworten |

Niualj

Avatar von Niualj

Anmeldungsdatum:
31. Juli 2014

Beiträge: 116

Soweit ich weiß kann man ja mit C Treiber Programmieren. Ich wollte nun über usb externe Geräte steuern also z.b. einen Schalter oder Transistor. Wie kann ich das lernen? Ist das gefährlich für den PC wegen Überspannung und so?

Naubaddi

Avatar von Naubaddi

Anmeldungsdatum:
28. Oktober 2009

Beiträge: 744

Hi,

geht von ganz einfach bis kompliziert, am einfachsten geht es über einen USB->RS232 Konverter. Die RS232 hat 4 Eingänge und 2 Ausgänge, nicht viel aber dafür einfach. Ob etwas kaputt geht beim Experimentieren liegt an der Schaltung die angeschlossen wird, nix ist unmöglich.

Vor ca. 20 Jahren habe ich mit ELEXS angefangen was es auch Heute noch gibt.

Grüßle

Niualj

(Themenstarter)
Avatar von Niualj

Anmeldungsdatum:
31. Juli 2014

Beiträge: 116

Also kann man das alles bei ELEXS lernen?

Naubaddi

Avatar von Naubaddi

Anmeldungsdatum:
28. Oktober 2009

Beiträge: 744

Hi,

Nö, es geht auch ohne wenn man sich damit beschäftigt, z.B.

  • lesen wie eine RS232 funktioniert

  • lesen wie man den PC vor der angeschlossenen Schaltung schützen kann

  • eine Programmiersprache wählen z.B. Gambas

  • mit einfachen Schaltungen anfangen, eine blinkende LED oder ein Taster der abgefragt wird

  • ...

ELEXS sollte ein Beispiel sein wie man anfangen könnte.

Grüßle

noisefloor Team-Icon

Anmeldungsdatum:
6. Juni 2006

Beiträge: 29567

Hallo,

IMHO solltest du dir - wenn du wirklich daran Interesse hast - einen Raspberry Pi zulegen. Der ist (auch) genau für so was konzipiert und im Netz gibt es bergeweise Anleitungen für Bastelprojekte, von total einfach bis komplex.

Da das gängigsten OS für den Raspi Raspian ist, eine angepasstes Debian, solltest du dich da als Ubuntu-Nutzer schnell zurecht finden.

Gruß, noisefloor

Niualj

(Themenstarter)
Avatar von Niualj

Anmeldungsdatum:
31. Juli 2014

Beiträge: 116

noisefloor schrieb:

Da das gängigsten OS für den Raspi Raspian ist, eine angepasstes Debian, solltest du dich da als Ubuntu-Nutzer schnell zurecht finden.

Was ist denn An so'nem Rasberry Pi besser, lohnt sich Preis Leistung und so? Ist ja nicht sehr Teuer. Gibts da einen Haken?

Ähem..Ubuntu-Nutzer... ☺ aber mit Debian komme ich zurecht.

Aber das Pi(Python Interpreter) spricht mich ja sehr an.

Niualj

(Themenstarter)
Avatar von Niualj

Anmeldungsdatum:
31. Juli 2014

Beiträge: 116

Kann man den eigentlich auch an VGA Bildschirm anschließen?

Update: Adapter gefunden.Graphische Oberfläche auch.

Update2:Muss ich denn alles allein rausfinden? Man muss nur über SD booten, danach geht es auch über USB.

noisefloor Team-Icon

Anmeldungsdatum:
6. Juni 2006

Beiträge: 29567

Hallo,

der Raspi hat 40 GPIO Pins, über die externe Hardware direkt angesteuert werden kann. Keine Fummelei über den USB-Port etc.

Und wenn du den Raspi mal wegen "Ungeschicktheit" bei Elektronikbasteleien himmelst, dann tun die 35,- Euro sicherlich nicht so weh, als wenn du deinen normalen Rechner für X Hundert Euro abrauchen lässt 😉

Update2:Muss ich denn alles allein rausfinden?

Zum Raspi gibt es ca. 1 Mio Webseiten mit allen nur erdenklichen Infos, auch auf deutsch. Außerdem gibt es auch deutschsprachigen Foren, die sich nur mit dem Raspi beschäftigen.

Gruß, noisefloor

Held-der-Arbeit

Anmeldungsdatum:
9. Januar 2006

Beiträge: 332

Wie gut sind denn Deine Kenntnisse in C und hast Du schon mal Mikrocontroller programmiert?

Darin solltest Du nämlich solide Kenntnisse haben (Zeiger, Register usw.) bevor man sich an Treiber-Programmierung wagt.

Ansonsten schau mal hier:

https://lwn.net/Kernel/LDD3/

Das Buch ist zwar nicht mehr ganz aktuell, aber man lernt trotzdem wie Linux-Treiber grundsätzlich funktionieren und wie man sie programmiert.

Kurzum: Du hast dir eine interessantes aber auch lernintensives Thema vorgenommen.

Niualj

(Themenstarter)
Avatar von Niualj

Anmeldungsdatum:
31. Juli 2014

Beiträge: 116

Wie kann man den Mikrocontroller programmieren ohne sie mit dem Computer zu verbinden? Also ich habe noch keine programmiert.

Held-der-Arbeit

Anmeldungsdatum:
9. Januar 2006

Beiträge: 332

Also Du brauchst schon einen PC um Software für den Mikrocontroller zu programmieren.

Wenn deine Software dann fertig ist, dann spielst Du sie per Kabel auf das Mikrocontroller-Board.

Hast Du schon mal was von Arduino gehört oder gelesen?

elostio

Avatar von elostio

Anmeldungsdatum:
2. Februar 2006

Beiträge: 424

Wohnort: Guayaquil

Hi, wenn du dir in deimen Budget einen raspberry pi erlauben kannst würde ich dir auch diesen unbedingt empfehlen. Arduino ist nett aber mit dem Pi2 hast du auch einen vollwertigen PC um alles mögliche zu machen. Die Community ist auch groß genug - auch ich besitze einen und würde dir natürlich auch im Zuge des Forums helfen so weit es zeitlich geht 😉

Viel Spass mit was auch immer du für die passende Lösung erachtest.

lg

Dakuan

Avatar von Dakuan

Anmeldungsdatum:
2. November 2004

Beiträge: 6504

Wohnort: Hamburg

Ich denke, dass es an dieser Stelle angebracht ist, die Unterschiede zwischen Arduino (UNO) und Raspberry Pi nochmal deutlich zu machen.

  • Der Raspberry Pi tendiert eher in Richtung PC, d.h. er kann auch "stand alone" betrieben werden, wenn er erst einmal eingerichtet ist. Man kann da Tastatur und Bildschirm anschließen und mit den I/O Ports experimentieren.

  • Der Arduino ist eher ein komfortabler Mikrocontroller, der das Programmierinterface mit auf dem Board hat. Um dieses allerdings ansprechen zu können (Über USB) ist eine entsprechende Software erforderlich. Diese Software ist in Java geschrieben und somit unter verschiedenen Betriebssystemen lauffähig. Der Arduino hat kein Betriebssystem und führt nur das einmal aufgespielte Programm aus.

Ich denke das sollte man wissen, bevor man sich für einen der beiden entscheidet. Das hat jetzt zwar auch nix mit Treiber Programmierung zu tun, hilft aber vielleicht dabei zu klären, ob einer der beiden Kandidaten eine mögliche Alternative zur ursprünglichen Aufgabe sein könnten.

Preislich sind beide etwa in derselben Kategorie.

Held-der-Arbeit

Anmeldungsdatum:
9. Januar 2006

Beiträge: 332

Wobei man sagen muss, dass ein Arduino standardmäßig in einen vereinfachten C-Dialekt programmiert wird.

Fall Du also, deine Programmierkenntnisse für Ausbildung, Studium oder Beruf erweitern möchtest empfehle ich eher die Programmierung in richtigen C.

Hier mal einige Links:

Arduino in reinem C programmieren:

https://balau82.wordpress.com/2011/03/29/programming-arduino-uno-in-pure-c/

http://canthack.org/2010/12/programming-the-arduino-in-pure-c/

Alternative (Hier kannst/musst Du alles selber bauen/löten. Das bedeutet der Lerneffekt ist höher):

http://www.mikrocontrollerspielwiese.de/

Allgemeine Infos:

http://www.mikrocontroller.net/

Antworten |