Forum: Mikrocontroller und Digitale Elektronik µC Anfänger mit C


von Max (Gast)


Lesenswert?

Hallo,

ich will mich mit der Programierung von µC in C beschäftigen.
Mit C weil ich das, nächstes Jahr in der Schule, brauche.
Komme aus dem Bereich Elektrotechnik (SPS)
Mit Elektronik hatte ich bis jetzt nicht viel zu tun, die Grundlagen 
sind aber
da.
Wo finde ich die Grundlagen zu C?
Kann ich vielleicht irgendwo ein Editor mit einem Simulator runterladen?
Wie gehe ich am efektivsten vor?

Gruß Max

von Sonic (Gast)


Lesenswert?

C-Compiler WIMAVR (GCC)bei
http://sourceforge.net/project/showfiles.php?group_id=68108
und das AVR-Studio 4.13 von ATMEL bei
http://www.atmel.com/dyn/products/tools_card.asp?tool_id=2725

Ich würde aber (falls du mit AVRs programmieren willst) mit Assembler 
anfangen, um die Hardwarestruktur der µC besser kennenzulernen.
Hier gibts auch ein prima Tutorial:
http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial

Viel Spaß!

von Ulrich (Gast)


Lesenswert?

lade dir avrstudio und winavr runter. damit hast du einen Simulator und 
c-Compiler am laufen.

Am das effektivste und auch das einzigste Verfahren nennt sich "Try and 
Error"

;-)
Mfg
Ulrich

von Ulrich (Gast)


Lesenswert?

stimmt natürlich!!!. ERstmal Datenblatt runterladen und mit assembler 
programmieren.

Dies hilft ungemein weiter wenn mal was nicht funktioniert und wenn der 
code schneller und kleiner werden soll!!

von Sonic (Gast)


Lesenswert?

Ach ja..
Als In-System-Programmer kann ich den AVRISP von ATMEL empfehlen, bei 
Reichelt knapp 40€. Die Eigenbauteile wie Ponyprog und so machen grade 
für Anfänger viele Probleme. Das Experimentierboard STK500 ist zum 
Einstieg auch empfehlenswert und später z.B. zum retten 'verfuster' µC 
Gold wert!

von Severino R. (severino)


Lesenswert?

Grundlagen zu C: der Klassiker
"C Programming Language"  von Brian W. Kernighan und Dennis Ritchie von 
Prentice Hall International

oder kostenlos zum Download:
http://www.galileocomputing.de/openbook/c_von_a_bis_z/


Wenn Du eine ausgewachsene C/C++ Entwicklungsumgebung willst, dann gibt 
es vom Microsoft das Visual C++ Express Edition zum kostenlosen 
Download.

Oder von Borland etwas ähnliches unter www.turboexplorer.com

Für Programme ohne grafische Benutzeroberfläche, also für 
textorientierte Programme, gibt es alte DOS-Versionen von Turbo C von 
Borland unter:
http://dn.codegear.com/museum

Oder von HT-Soft das Pacific C:
http://www.htsoft.com/downloads/demos.php

All diese Pakete erstellen aber Programme für Windows / DOS.

Wenn Du C direkt mit einem Compiler für Mikrocontroller lernen willst, 
dann gibt es von Microchip eine Student-Version von C18 und von C30.
Aber hier solltest Du Dich am Mikrocontroller orientieren, den Du später 
mal programmieren willst. Es gibt praktisch für alle Controller einen 
oder mehrere C-Compiler.
Weisst Du denn schon, welche Controllerfamilie?

Severino

von Max (Gast)


Lesenswert?

Danke erstmal für die Antworten.
Habe mir neulich so ein Einsteigerset von myAVR gakauft, da ist aber 
alles in Assembler und mit dem Editor komme ich nicht klar.
http://myavr.de/
Meint ihr das geht für den Anfang?
Soll ich dann doch lieber mit Assembler anfangen?


von Severino R. (severino)


Lesenswert?

Für's Verständnis von C brauchst Du eigentlich keine 
Assembler-Kenntnisse (Böse Zungen behaupten zwar, C sei ein besserer 
Makro-Assembler ;-)

Für's Verständnis von Mikrocontrollern ist Assembler dagegen sehr 
hilfreich.

Severino

von Sonic (Gast)


Lesenswert?

Also der richtige Weg ist natürlich 'von der Pike auf' zu lernen, also 
mit Assembler. Das kostet natürlich Zeit und Energie die man sich nehmen 
muss. Viele benutzen auch Bascom (BASIC-Compiler), was einfach und 
schnell zu programmieren ist aber die Hardware als 'Blackbox' behandelt. 
Die Wahl hast du alleine: entweder die Grundlagen verstehen (Assembler) 
oder schnellen Erfolg ohnen Basiswissen (Bascom).
Außerdem sind die Datenblätter von ATMEL extrem wichtig, die 
µC-Spezifischen Kleinigkeiten muss man dort immer suchen!

von Werner B. (Gast)


Lesenswert?

Um nochmal in die "zuerst Assembler" Bresche zu schlagen...
Aus meiner Erfahrung haben fast alle die sich mit "C" beschäftigen und 
Assembler nie (oder nur wenig) benutzt haben Probleme damit zu verstehen 
was Pointer sind (und wie man sie einsetzt). Und "C" LEBT von Pointern. 
Wer sich den generierten Code ansehen  und "verstehen" kann was 
passiert, hat wesentlich bessere Karten.

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.