Hallo miteinander, ich will eine Schaltung entwickeln mit welcher man via LWL einen Lastteil schalten kann (IGBT). Die schaltung soll mit einem LC-Display ausgestattet sein und eine superhelle LED schalten. Einstellungen: Man soll folgende Funktionen verwirklichen können: LED permanent EIN bzw. AUS und Ausgangsignale von ca. 100ms bis 100s (Stufenweise). Da ich nur eine LED habe wird natürlich nur immer eine Impulsdauer gewählt. Bis vor einiger Zeit habe ich mit PICs gearbeitet und mit Assembler programmiert, da ich bei meinem letzten Projekt enorme Probleme hatte, die µC sind schlicht und ergreifend zu langsam (liegt teilweise auch an programmierung - aber meine distanzierung steht unwiderruflich fest), möchte ich einen Atmega(evtl den 64er) mit C# programmieren. Ich denke dass das Display mir die größten Probleme bereiten dürfte, allerdings stell ich dieses mal hinten an. Hat zufällig jemand ein vergleichbares Programm schon mal geschrieben und könnte es mir geben bzw. mir Hilfestellung leisten, meine Programmierkenntnisse in C sind mehr als begrenzt. Hab mir gerade das Gratisbuch zu C bestellt (mikrocontroller.net sei dank =) ) Würde mich sehr über konstruktive Beiträge freuen. MFG
Für C# brauchst du die .NET-Laufzeitumgebung. Ich kann mir nicht vorstellen, dass es die für einen uC gibt. Wenn dir C zu Lowlevel für die GUI-Programmierung deines Displays ist, könntest du ja als "Kompromiss" C++ verwenden.
Elektroniker schrieb: > Sind die Unterschiede so gravierend? ungefähr 80 Megabyte Laufzeitumgebung. Und da sind die unterschiedlichen Sprachphilosophien noch gar nicht mit eingerechnet.
Elektroniker schrieb: > Sind die Unterschiede so gravierend? Ja, zwei völlig unterschiedliche Konzepte und für völlig unterschiedliche Einsatzzwecke entwickelt.
Na denn AVR-Tutorial (ja, ich weiß - ist Assembler. Enthält aber trotzdem viel Nützliches und Wissenswertes) AVR-GCC-Tutorial
Ich fang einfach mit den letzteren an, wird dort eigentlich auch erläutert "wie ich was" programmiere. Anders gesagt, die Befehle.
Elektroniker schrieb: > Ich fang einfach mit den letzteren an, wird dort eigentlich auch > erläutert "wie ich was" programmiere. Anders gesagt, die Befehle. Wenn du erst mal C lernen musst, dann würde ich dir empfehlen dir ein gängiges C-Buch zu kaufen (*) und deine ersten Schritte damit auf dem PC zu machen. Wenn dann ein gewisser C-Grundstock vorhanden ist und auch sitzt, gehts leichter die µC-spezifischen Dinge da reinzupacken. Zur Not: http://openbook.galileocomputing.de/c_von_a_bis_z/ (Auch wenn ich persönlich nicht viel von Online-Lesen halte. Ein gedrucktes Buch kann man neben dem Monitor liegen haben) Gängig ist zb 'die Bibel' Kernighan & Ritchie Programmieren in C
kopiere Dir : lcd-routines.c und lcd-routines.h aus dem Tutorial dann hast Du schon mal ein Erfolgserlebnis mit dem LCD. Axel
Hi >kopiere Dir : lcd-routines.c und lcd-routines.h aus dem Tutorial dann >hast Du schon mal ein Erfolgserlebnis mit dem LCD. Klar. Copy&Paste-Generation. Verstehen muss man es ja nicht. MfG Spess
Elektroniker schrieb: > Bis vor einiger Zeit habe ich mit PICs gearbeitet und mit Assembler > programmiert, da ich bei meinem letzten Projekt enorme Probleme hatte, > die µC sind schlicht und ergreifend zu langsam (liegt teilweise auch an > programmierung - aber meine distanzierung steht unwiderruflich fest), > möchte ich einen Atmega(evtl den 64er) mit C# programmieren. Also wenn Dir die PICs mit Assembler zu langsam sind, dann ist C# aber die denkbar ungünstigste Alternative überhaupt. Mal abgesehen davon, dass Du für C# keinen Compiler für AVR finden wirst. Also, wie schon mehrfach hier empfohlen: C
mit einem Erfolgserlebnis lernt es sich doch leichter. Für diese Aufgabenstellung zuerst ein dickes Buch zu lesen und dann zu beginnen ist recht zäh. Der TE hat doch schon einige Vorkenntnisse und sich auch eine vernünftige Aufgabenstellung gesucht. Axel
Hätte gehofft, dass das hier Objektiv bleibt. Also Manni, geh bitte weiter Minesweeper spielen. Falls du ne Anleitung brauchst, drück F1. =)
Hallo, es gibt C# für kleinere Prozessoren (32 Bit 64k Ram) : http://www.microsoft.com/netmf/about/default.mspx heißt dann .Net Micro Framework
Daniel R. schrieb: > Hallo, es gibt C# für kleinere Prozessoren (32 Bit 64k Ram) : Nur zur Klarstellung: In dem Bereich in dem wir hier uns normalerweise bewegen, also Steuerung einer Waschmaschine oder dergleichen, ist das kein kleiner Prozessor mehr, sondern schon ein sportlicher Bolide. Wenn das Zeugs in den 64k auch so flüssig läuft wie auf den Pocket-PCs, na dann gute Nacht zeitkritische Steuerung.
macht aber mehr Sinn einen Mega 8 oder Mega88 auf internen 1 MHz zu nehmen, den Timer 1 solange zu probieren bis der Interrupt alle 100ms aufgerufen wird und dann die Aufrufe zu zählen. Fertich. Axel
Puh, hört sich für mich nicht so einfach an. Kannst du's kurz erläutern?
Elektroniker schrieb: > Puh, hört sich für mich nicht so einfach an. Im Grunde ist es das aber > Kannst du's kurz erläutern? Steht eigentlich mehr oder weniger alles in den Tutorien drinnen. Das Problem: Er müsste hier bei 0 mit der Erklärung anfangen. Und dann schreibt er im Grunde ein neues Tutorium extra für dich. Auch wenn du schon mit PIC gearbeitet hast: Du solltest die Tuorien wirklich ernst nehmen und von Anfang an durcharbeiten (beide!). Mit deinen Vorkentnissen wird das schnell gehen, aber nur so merkst du dir die kleinen Details.
Elektroniker schrieb: > Bis vor einiger Zeit habe ich mit PICs gearbeitet und mit Assembler > programmiert, da ich bei meinem letzten Projekt enorme Probleme hatte, > die µC sind schlicht und ergreifend zu langsam (liegt teilweise auch an > programmierung - aber meine distanzierung steht unwiderruflich fest), > möchte ich einen Atmega(evtl den 64er) mit C# programmieren. Mit solchen Aussagen wäre ich hier ziemlich vorsichtig. Gerade weil sich hier jeder schräg lacht weil der Wechsel von PIC -> ATMEGA sicherlich nicht deine Unfähigkeit zu Programmieren kaschieren kann. Die maximalen Taktfrequenzen sind bei PIC & ATMEGA identisch genauso wie die Dauer der Ausführung einer Instruction. Ich bin dafür, dass du ordentlich Programmieren lernst (ob nun auf PIC oder ATMEGA ist egal). Wie du in C# einen MEGA programmieren willst da bin ich gespannt. Aber eines kann ich dir sagen: Deine Programme werden auf dem ATMEGA genauso schnell oder langsam sein wie auf dem PIC ... Ich bin ja gespannt wie du einen derart Objektorientierte Sprache wie C# + .net Framework auf den ATMEGA bringen willst. Wenn du's geschafft hast und das laden nicht 2 Stunden braucht, dann hast du garantiert gelernt wie man effizient programmiert. In diesem Sinne ...
Immer langsam mit deinem Sarkasmus. Hab wie gesagt keine lust mehr auf Assembler und mach nun C. Wie gesagt nicht C# sondern C, hättest du auch nachlesen können. Aber deinen Kommentar hättest du dir auch sparen können, versuch mal hilfreich zu sein - Immerhin ist dein Name Lehrmann!
Hallo Elektriker, nimm einen Mega88 und die angehangene Datei und schließ das LCD so wie in der Datei beschrieben an. Dann sollte was auf dem LCD erscheinen. Axel
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.