Forum: Mikrocontroller und Digitale Elektronik Ich möchte weg von Fertigprodukten


von André (Gast)


Lesenswert?

Hallo :)

Zur Zeit arbeite ich mit dem Arduino. Da diese Entwicklungsumgebung 
einen Grenzen setzt, möchte ich gerne weg von diesen Fertigprodukten.

Meine Idee ist, einen ATMEGA selber zu programmieren. Dazu bräuchte ich 
allerdings eine IDE, in den ich mein Programm schreiben kann, einen 
Compiler, der mein geschriebenes Programm in Maschinensprache umwandelt 
und per USB an den ATMEGA sendet, ein Programm, womit ich selber über 
Buttons und Checkboxen (wie bei VBA in Excel) mir ein Bedienungsprogramm 
schreiben kann, welches dann eine ausführbare Datei sein soll (z.B. eine 
*.exe).

Hat jemand eine Idee welche Programme dafür am besten geeignet sind?

Lieben Gruß, André

von Hans W. (Firma: Wilhelm.Consulting) (hans-)


Lesenswert?

da schon öfter behandelt nur ein paar stichworte zum googlen bzw zum 
nachlesen in der artikelsammlung:

avr-gcc (win-avr unter windows), avrdude, avrisp, und wenn ich deinen 
kenntnisstant einbeziehe irgend so ein .net/...# teil... also irgendwas 
aus dem visual-studio express


73

von OAmp (Gast)


Lesenswert?


von Sebastian (Gast)


Lesenswert?

Windows oder Linux? Unter Windows gibt es das AVR Studio und die aus 
AVR-GCC hervorgegangene Atmel-Toolchain, beides als kostenlosen 
Download. Unter Linux, siehe oben.

Für die Entwicklung von PC-Software mit einer schnell zusammenklickbaren 
Oberfläche verwende ich persönlich gern Lazarus (ähnlich wie früher 
Delphi), aber das ist eine andere Sprache (Pascal statt C). Mit etwas 
Einarbeitung kommt man aber zu schnellen Ergebnissen, gerade was die 
Oberfläche angeht.

von André (Gast)


Lesenswert?

Vielen Dank für die ganzen Antworten :-)

Das ganze soll auf Windows basieren.

von Cyblord -. (cyblord)


Lesenswert?

André schrieb:
> Vielen Dank für die ganzen Antworten :-)
>
> Das ganze soll auf Windows basieren.

Dann lade dir doch einfach das Atmel Studio. Das ist doch genau dafür 
da.

von Mike (Gast)


Lesenswert?

André schrieb:
> Zur Zeit arbeite ich mit dem Arduino. Da diese Entwicklungsumgebung
> einen Grenzen setzt, möchte ich gerne weg von diesen Fertigprodukten.

Wieso setzt sie dir Grenzen?
Die Arduino IDE stellt dir ein Haufen fertige Funktionen und 
Definitionen zur Verfügung - nicht mehr und nicht weniger. Als Compiler 
wird genauso wie bei Atmel Studio u.a. GCC verwendet, also ein ganz 
normaler Compiler-

> Meine Idee ist, einen ATMEGA selber zu programmieren.

Dann tue das, die Arduino IDE hindert nicht daran. Du mußt nur 
akzeptieren, dass es noch eine Programmebene oberhalb von setup() und 
loop() gibt, die du sonst sowieso als erstes selber anlegen müßtest.

von MaWin (Gast)


Lesenswert?

André schrieb:
> Ich möchte weg von Fertigprodukten

Dann nimm den Sand hinter meinen Haus, daraus kann man Silizium machen, 
Chips fertigen, und hat alles selbst gemacht.

von T.roll (Gast)


Lesenswert?

Ach bestehen Halbleiter jetzt nur noch aus Silizium? Das macht sie ja 
gleich noch viel billiger.

von André (Gast)


Lesenswert?

Mike schrieb:

>Wieso setzt sie dir Grenzen?
>Die Arduino IDE stellt dir ein Haufen fertige Funktionen und
>Definitionen zur Verfügung - nicht mehr und nicht weniger. Als Compiler
>wird genauso wie bei Atmel Studio u.a. GCC verwendet, also ein ganz
>normaler Compiler-

Ich musste mir extra einen Arduino Mega kaufen, weil mir der Speicher 
des Arduino Uno nicht ausreicht.

Der Nachteil nun ist, das der IC auf den Arduino-Mega keine DIP-genormte 
Pins hat. Die Pins des ATMEGA2560 sind viel zu klein um diese später auf 
eine Platine zu löten. Daher hatte ich den IC ATMEGA 1284P-PU im Auge 
gefasst. Er hat die richtige Speichergröße die ich brauche und ist 
DIP-genormt, sodass ich diesen auf einen IC-Sockel stecken kann. Nur 
leider hat dieser IC mehr Pins als der IC auf den Arduino-Uno. Und die 
IDE des Arduinos würde diesen IC auch nicht erkennen, da dieser im 
Programm nicht vorgesehen ist. Das meine ich mit Grenzen setzen.

Daher möchte ich den ATMEGA 1284P-PU selber fertig löten mit allen 
notwendigen Bauteilen, doch das Programmieren würde dann nicht mehr mit 
der Arduino-IDE funktionieren. Daher brauche ich ein anderes Programm 
wie z.B. das AVR Studio. Ich hoffe das funktioniert damit dann.

von Mike (Gast)


Lesenswert?

André schrieb:
> Und die IDE des Arduinos würde diesen IC auch nicht erkennen, da dieser
> im Programm nicht vorgesehen ist.

Dann könntest du dir z.B. dein Board in der Arduino IDE anlegen, so 
wie das unter
http://arduinoexplained.blogspot.de/2012/03/custom-board-programming-on-arduino-10.html
beschrieben ist.

von André (Gast)


Lesenswert?

Ach echt? Das funktioniert? Da muss ich mich mal genau belesen. Kann ich 
auch das Compiler-Programm außerhalb von der Arduino-IDE verwenden?

So z.B.: Compiler.exe MeinProjekt.ino

Dann müsste ich nicht immer die Arduino-IDE aufrufen um fertige Projekte 
zu kompilieren und zu überspielen.

von Arsenico (Gast)


Lesenswert?

Zurück zur Natur !

von Cyblord -. (cyblord)


Lesenswert?

Arsenico schrieb:
> Zurück zur Natur !

Zweige und Laub...

von Wilhelm F. (Gast)


Lesenswert?

Lade dir von Microchip das MPLAB herunter, eine komplette 
Entwicklungsumgebung.

Man kann damit die Bausteine schon simulieren, wenn man sie gar nicht 
mal besitzt.

Irgend einen Kit haben die auch immer, der samt Stromversorgung rein nur 
an USB funktioniert.

von Mike (Gast)


Lesenswert?

André schrieb:
> Kann ich auch das Compiler-Programm außerhalb von der Arduino-IDE
> verwenden?
Im Prinzip schon, das läuft aus der Kommandozeile/"DOS"-Box oder wie 
immer du es nennen möchtest. Aber warum?

> Dann müsste ich nicht immer die Arduino-IDE aufrufen um fertige Projekte
> zu kompilieren und zu überspielen.

Wenn das Projekt fertig ist, reicht es den .elf oder .hex-File auf den 
Prozessor zu spielen, z.B. mit einem ISP Programmer und AVRdude.

von a. b. (andreb)


Lesenswert?

cyblord ---- schrieb:
> Arsenico schrieb:
>> Zurück zur Natur !
>
> Zweige und Laub...

Und am Strand Silikate an elektrolytischer Lösung
Überall beruflicher Stress :-\

von Oliver S. (phetty)


Lesenswert?

In der Küche bin ich lange weg von Fertigprodukten. Aber beim Basteln 
greife ich gern drauf zurück.
Den überteuerten Ardinomist kann man abhaken, aber wozu gibts denn 
Chinamann uns seine schönen Clones?
Da bekommt man feine Sachen wie Ethernet usw für wenig Geld und muss 
sich nicht um Platinen oder sowas kümmern.

von Rolf Magnus (Gast)


Lesenswert?

T.roll schrieb:
> Ach bestehen Halbleiter jetzt nur noch aus Silizium?

Natürlich nicht. In dem Chip steckt auch viel Liebe drin, wie bei Omas 
Apfelkuchen.

von <-o..o-> (Gast)


Lesenswert?

Rolf Magnus schrieb:
> Natürlich nicht. In dem Chip steckt auch viel Liebe drin, wie bei Omas
> Apfelkuchen.

Neben Silizium enthalten moderne Chips vor allem schwarzen, grauen oder 
weißen Rauch. Eventuell gesprickt mit leisen oder lauten Knacksern.

von Andreas D. (rackandboneman)


Lesenswert?

Die diversen Rauche stecken auch im Apfelkuchen, kommen aber nicht ganz 
so schnell heraus.

...

Wenn man wirklich möglichst viel zu Fuss machen will ist vor allem eine 
Kommandozeilenumgebung mit einer gewissen Ergonomie vorteilhaft ... und 
da ist eine BASH in einem guten Terminalemulator (die man auf jedem 
modernen Betriebssystem haben kann) den Windows-Bordmitteln doch meiner 
Meinung nach weit überlegen.

Texteditoren für Programmierer gibt es auch zuhauf... Probier mal 
Notepad++, PSPAD, Emacs-w32* ...

*Emacs auf Windows ist immer ein bisschen holprig von der Integration, 
und sehr sehr idiosynkratisch .. aber dafür sind die automatische 
Einrückung und das Syntax-Highlighting von fantastischer Qualität.

von Boris O. (bohnsorg) Benutzerseite


Lesenswert?

Glückwunsch zur Überschreitung der physikalischen Beschränkungen, ebenso 
Glückwunsch für die exakte Artikulation der Absicht. Ich befürchte 
allerdings, dass ein Mikrocontroller die falsche Einstellung zur Lösung 
deines (unbekannten und speicherintensiven) Problems ist. Nur weil er 
mit der Vorsilbe micro 10^-6 suggeriert sind Probleme damit nicht 
automatisch auf diesen Maßstab verkleinert.

Man darf die verwendeten Bibliotheken gern ausdünnen, Funktionen die man 
nicht benötigt, darf man gern entfernen und auch unbenutzte Variablen 
können verschwinden (so der Compiler und Linker nicht schlau genug 
eingestellt sind, das wegzuoptimieren). Braucht man noch immer zuviel 
Speicher, gibt es diesen in Form von externen Bausteinen zum dazukaufen. 
Das ist nicht wirklich rasant (keine Speicherverwaltung, selbst 
verkabelt), aber prinzipiell möglich.

Wenn noch immer der Speicherbedarf zur Problemlösung den verfügbaren 
Rahmen sprengt, ist eine andere Architektur angeraten, eine mit 
Speicherverwaltung, vielleicht sogar paralleler Verarbeitung, einer 
Arithmetisch-Logischen-Untereinheit usf. Wie wäre ein Raspberry PI, ein 
x86 SoC (System on a Chip) oder etwas ARM-Architektur mit Android?

Nicht das Problem ist das Problem, sondern die Einstellung zum Problem 
ist das Problem.

von André (Gast)


Lesenswert?

Mal eine ganz andere Frage.

Gibt es Kurse, in denen man Grundkenntnisse erlernen kann? Wo man sein 
Steckboard mitbringen kann? Wo man eine Einführung in C++ usw. bekommen 
kann?

von Markus H. (dasrotemopped)


Angehängte Dateien:

Lesenswert?

Arduino oder Atmel Studio, verstehe ich nicht

Gruß,

dasrotemopped

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.