Ok, ist im Wiki: Mikrocontroller, verlinkt auf: Programmierung
Gruß
kaputtnik
Anmeldungsdatum: Beiträge: 9245 |
Ok, ist im Wiki: Mikrocontroller, verlinkt auf: Programmierung Gruß |
||
Ehemaliger
![]() Anmeldungsdatum: Beiträge: 28316 |
Hallo, schön. Sie schlimm ist die Seite doch gar nicht. Hat IMHO jetzt auch schon einen passablen Inhalt. Gruß, noisefloor |
||
![]() Anmeldungsdatum: Beiträge: Zähle... |
Hey ho. Also was man vielleicht noch einbinden könnte, wär: - Betonen das man Assembler wirklich nicht können muss um µC's zu programmieren ^^ - Welche Programme brauch ich um meinen Code zu Überspielen - Wie man den entsprechenden Code umwandelt (zb.: <name>.c in <name>.hex) damit Programme wie PonyProg damit umgehen können - Evtl. Verlinkung auf das Thema Makefiles, denn um den C-Code in Hex-Code umzwandeln hab ich zB ne Makefile gebaut, da es unfassbar nervig ist die Befehle händig einzugeben Weiss nicht.... ist halt denk ich recht schwierig zu entscheiden was wichtig ist und was nicht. Denn es steht ja jedem offen mit was er Programmiert, in welcher Sprach und mit welcher Hardware. EDIT: Und was vielleicht dringend rein gehört. Was man letzt endlich brauch um mal anzufangen. Also irgend ein Evo Board von Pollin oder so. USB Adapter, RS232 Kabel u.ä. |
||
Anmeldungsdatum: Beiträge: 9245 |
Servuzs PaterSigmund ☺ möchtest Du den Artikel ergänzen? Dann schieben wir ihn einfach in die Baustelle. Dort kannst Du nach Herzenslust und ungestört arbeiten. Gruß |
||
![]() Anmeldungsdatum: Beiträge: 161 |
Ich kann mal versuchen was vorzubereiten. Dann würd ich das erst mal hier rein posten, so das die Leute die wirklich Ahnung haben das dann noch korregieren können. "Muss"/"Darf" mich damit zwar momentan beschäftigen, aber der Pro bin ich darin halt auch noch nicht. |
||
Anmeldungsdatum: Beiträge: 9245 |
Ja, Prima ☺ Gruß |
||
![]() Anmeldungsdatum: Beiträge: 161 |
Also hab da mal was gemacht. Rechtschreibtechnisch hab ichs leider nicht so wirklich drauf, von daher bitte ich dieses schon mal zu entschuldigen. Ausbaufähige AnleitungDieser Anleitung fehlen noch einige Informationen. Wenn Du etwas verbessern kannst, dann editiere den Beitrag, um die Qualität des Wikis noch weiter zu verbessern. Anmerkung: Diese Seite dient als Einstieg zur Mikrocontrollerprogrammierung. Es fehlen noch weitere Artikel zu anderen Mikrocontrollern Inhaltsverzeichnis Mikrocontroller (µC) sind Halbleiterchips, bei denen Prozessor und Peripherie in einem Chip integriert sind. Oft sind auch der Arbeits- und Programmspeicher teilweise oder komplett in dem gleichen Chip integriert. Mikrocontroller befinden sich in vielen technischen Geräten (z.B. MP3-Player, Router, Mobiltelefone), die heute im Alltag weit verbreitet sind und Elektronikbastler verwenden sie bei ihren Hobbyprojekten. Für Linux existieren viele Werkzeuge für die Entwicklung von Mikrocontroller-Software, wie Cross-Compiler für verschiedene Prozessorarchitekturen und Programme für das Übertragen des Programmcodes auf den jeweiligen Mikrocontroller. Mikrocontroller werden meistens in Assembler oder C programmiert. Andere Programmiersprachen wie Ada, BASIC, C++ oder Pascal kommen jedoch auch zum Einsatz. Es gibt für einige Chips sogar Implementierungen von Python- oder Java-VMs. Die Programmentwicklung für Mikrocontroller, d.h. das Erstellen und Compilieren des Quellcodes, geschieht gewöhnlich auf dem PC. Zum Testen muss das Programm dann auf den Mikrocontroller übertragen werden. Ausnahme sind Prozessorarchitekturen, für die ein Software-Emulator zur Verfügung steht. In diesem Fall ist es auch möglich, ein Programm direkt auf dem PC zu testen. Oft ist ein Programmtest in einem Software-Emulator jedoch nicht ausreichend, denn Mikrocontroller werden in der Regel verwendet, um externe Geräte (LED-Anzeigen, Motoren, ...) anzusteuern und man möchte bei einem Test natürlich auch überprüfen, ob man diese Geräte korrekt ansteuert. Benötigte Hardware¶Um in die µC Welt einzusteigen benötigt man nicht nur Programmierkenntnisse. Es ist ratsam sich anfangs so genannte Evaluationsboards zu kaufen, welche einem fertig verschaltete µC's bieten. Dabei hat der User die qual der Wahl, jedoch langen für den Anfang preiswerte Boards vollkommen aus. Hier seien mal einige genannt:
Der Vorteil bei dem Pollin AddOn Board ist, dass es relativ frei verdrahtbar ist. Es sind lediglich die Pins der Bauteile nach außen geführt, so dass der User die Schaltung selbst bestimmen kann ohne das Vorkenntnisse im Bereich Elektrotechnik von Nöten sind. Cross-Compiler¶Ein Cross-Compiler erzeugt Maschinencode für ein System, dessen Prozessorarchitektur anders ist und/oder bei dem ein anderes Betriebssystem installiert ist, als bei dem System, auf dem der Cross-Compiler ausgeführt wird. Für Linux existieren Cross-Compiler für verschiedene Prozessorarchitekturen: In-System-Programmierung¶Programme für die In-System-Programmierung (ISP) stehen für die folgenden Mikrocontroller-Familien zur Verfügung:
C Programmierung auf AVR¶Zum Programmieren eins Atmel AVR Chips benötigt man einen beliebigen Editor und den entsprechenden Compiler samt Bibliotheken welches dann den C-Code übersetzt. Im Falle des AVR benötigt man folgende Pakete:
Beim compilieren muss der Chip Typ angegeben werden, dies wird aber wie bei jedem anderen Programm mittels Optionen angefügt. Es ist ratsam sich eine Makefile anzulegen, da die Befehle nicht gerade kurz sind. Hier ein Beispiel wie eine Makefile für den Atmega32 aussehen kann:
Als Beispiel würde das Programm test.c mittels make PROG=test compiliert und mit Hilfe make clean PROG=test würden überschüssige Dateien gelöscht werden. Nachdem nun ein gültiges Dateiformat vorliegt welches der µC versteht. Gilt es nun diesen zu übertragen. Dies kann mittels:
erfolgen. Im Falle der Schnittstelle RS232 kann man das Programm
nutzen. Dabei ist aber darauf zu achten, dass im Bereich Setup der entsprechende Com Port eingestellt wird (ACHTUNG: PonyProg unterstützt kein USB). Es empfiehlt sich außerdem, sofern man weiß welcher Chip einem vorliegt diesen manuell dem Programm zu sagen. Nachdem nun der Chip ordnungsgemäß an den PC angeschlossen ist. Kann das Programm welches nach der Makefile in der Form <name>.hex vorliegt mit Hilfe von PonyProg auf den µC geschrieben werden. Probleme beim Übertragen¶Es ist nicht empfehlenswert USB - RS232 Konverter zu gebrauchen. Der µC lässt sich zwar auslesen jedoch nicht beschreiben. Sonstige Hilfsmittel¶
Links¶
|
||
![]() Anmeldungsdatum: Beiträge: 8985 |
Könnt Ihr mir den Artikel mal in die Baustelle schieben? Ich überarbeite ihn dann mal. Gebt mir aber etwas mehr Zeit als üblich 😉 |
||
![]() Anmeldungsdatum: Beiträge: 8985 |
Ach ja, würde es sich lohnen, einen eigenen Wiki Artikel für AVR zu erstellen? |
||
Anmeldungsdatum: Beiträge: 14259 |
|||
![]() Anmeldungsdatum: Beiträge: 8985 |
|||
![]() Anmeldungsdatum: Beiträge: 161 |
Also ich würde mal behaupten, dass ein AVR Artikel nicht unbedingt hier hin gehört. Dafür gibts ja andere einschlägige Portale die sich damit auseinandersetzen. Meiner Meinung nach sollte das Wiki sich ja um die Arbeit mit und um Ubuntu kümmern, und da würd ein passendes Wiki über AVR doch etwas zu weit führen. |
||
![]() Anmeldungsdatum: Beiträge: 8985 |
Es soll keine umfassende Programmieranleitung werden. Nur die wichtigste Einführung und eventuell ein paar Hinweise auf "einschlägige Portale". Es gibt ja auch Artikel für die ARM Toolchain, MSP430 und sogar einen für Asuro. Das alles in einen Artikel packen wäre zuviel. In den "Mikrocontroller" Artikel gehört IMHO nur eine Einführung und Übersicht über die verschiedenen Typen |
||
![]() Anmeldungsdatum: Beiträge: 1165 |
|||
Ehemalige
![]() Anmeldungsdatum: Beiträge: 4259 |
Hallo, wie ist hier der Stand der Dinge? Gruss |