Forum: PC-Programmierung Microcontroler programieren mit Assambler und C#?


von Manuel S. (manuel88)


Lesenswert?

Hi,

Habe einige Erfahrungen in der Programm programierung von C#. Nun dachte 
ich mir, werde ich mal versuchen mit Hilfe von Assambler und C# ein 
Programm zu machen. Doch da stellen sich noch ein par Fragen die ich 
nicht weis.
Meine Frage ist ob jemand mir nur einen kurzen Code zeigen kann in C# 
sowie der dazugehörige Code für den Microcontroller in Assambler. Dieser 
soll einfach bei Buttonklick einen Portausgang (z.B. Port B_1) auf 1 
schalten und bei erneuten klicken den Port wieder auf 0 sätzen.So kann 
ich mir einmal den Code anschauen wie das ganze aussiet und 
funktioniert. Den Microcontroller verbinde ich am seriellen Prot mit dem 
Computer. Um was es für einen Controllertyp es geht weis ich nicht, bin 
neu in dem Bereich der Programmierung wenn ihr mir sagt wo ich das 
ablesen kann poste ich euch gerne den Typ.

Bin dankbar für jede Hilfe.

Mfg Manuel.

von Lothar S. (magic33)


Lesenswert?

also Fast AVR macht das von Basic nach ASM

für AVR risk8-Bit
gibt es das atmel studio 4.x welches mit gcc (C++) auch die atmel 
simulieren und proggen kann

für die Basic fans ist wohl BASCOM das geeignete Programm

von Manuel S. (manuel88)


Lesenswert?

Hallo, erstmal danke für die Antword mein MC ist der MC908MR52CFUE von 
Freescale mit 52k. Mit Assambler und C# ist das nicht möglich? Denn in 
C# kenn ich mich schon ein bischen aus aber im Bereich MC progrmmieren 
noch gar nicht.

Mfg Manuel

von Arc N. (arc)


Lesenswert?

Das ganze sieht irgendwie so aus:
PC Programm -> Button-Click -> Serielle Schnittstelle -> Controller -> 
Port

Wenn ja, lässt sich der linke Teil mit C# machen, der Teil auf dem 
Controller d.h. Empfangen der Nachricht und Port-Umschalten nicht.

Für das Senden von Nachrichten über die Serielle gibt's ab .NET 2.0 eine 
eigene Klasse: SerialPort, gibt u.a. auch hier div. Threads dazu.
Für den Teil auf dem Controller ist entweder C oder Assembler angesagt.

von Manuel S. (manuel88)


Lesenswert?

Danke, das mit der C# werde ich schon irgendwie hin bekommen. Nur die 
Frage wie siet das mit Assembler aus. Habe ein zweimal etwas darin 
geschrieben aber das hatte nie etwas mit serieller Schnittstelle zu tun 
und daher möchte ich fragen ob mir jemand ein Beispiel dazu macht damit 
ich das verstehe ^^.

Mfg Manuel.

von Marvin M. (Gast)


Lesenswert?

Und warum muss es ein Exot wie der MC908MR52CFUE sein? Um ein bisschen 
serielle Übertragung zu machen und einen Port zu schalten, reicht ein 
ATMEGA-8 (nicht mal 3 Euro bei Reichelt) vollkommen aus, und für diesen 
gibt es massig Tutorials (u.a. auf dieser Seite) und Beispielcode.

von Manuel S. (manuel88)


Lesenswert?

Hallo, ich hab mir den schon zugelegt (geschenkt bekommen ^^) und so 
denke ich mir das ich den benutzen werde für meinen nächsten könnte ich 
mir auch einen Anderen nehmen (danke für den Tipp). Wie gesagt möchte 
ich es am Anfang mit dem versuchen. Kannst du mir da helfen?

Mfg Manuel

von daniel (Gast)


Lesenswert?

und das soll jetzt das KO Kriterium sein?

von Gast (Gast)


Lesenswert?

@ Manuel: Google mal nach MC68HC908, da findest du genug
Beispiele.

von Johnny (Gast)


Lesenswert?

Als kleiner Tipp: Programmiere solche Mikrocontroller nicht in Assembler 
sondern in C. Gerade wenn Du auf dem PC schon in C# programmierst, wirst 
Du damit viel schneller klarkommen.
Einen passenden C Compiler wirst Du bestimmt auftreiben können. Evtl. 
einen kostenlosen IAR mit Codegrössenlimitierung, aber für Deine Zwecke 
reicht das völlig aus.

von Manuel S. (manuel88)


Lesenswert?

Habe mir jetzt Codewarrior, unter google hab ich gesucht aber nichts zu 
serieller schnittstelle programieren gefunden (auser Datenblatt) mit dem 
Dtatenblatt habe ich es versucht aber nicht hinbekommen.

Mfg Manuel

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.