Hallo Leute und zwar hab ich folgendes vor: Eine Dll für das myAVR Board USB MK2 Board wie hier im Link, http://shop.myavr.de/Systemboards/myAVR%20Board%20MK2,%20best%C3%BCckt.htm?sp=article.sp.php&artID=40 hier der dll link http://www.velleman.eu/downloads/0/user/usermanual_k8055_dll_d.pdf die gleichen Funktionen hat. Da ich aber das myAVR Board über Serielle Schnittstelle steuern will, ist jetzt meine Frage: Ist es überhaupt möglich über eine dll eine Serielle Schnittstelle anzusteuern? Wenn mit welchem Programm kann man eine solche dll Datei programmieren bzw gibt es schon irgendwo Anleitungen dazu
>Ist es überhaupt möglich über eine dll eine Serielle Schnittstelle >anzusteuern? Ja, ist möglich. Serielle Schnittstellen unter Windows anzusprechen ist aber etwas komplizierter (Meine Meinung). >Wenn mit welchem Programm kann man eine solche dll Datei programmieren >bzw gibt es schon irgendwo Anleitungen dazu Visual Studio + Google.
Peter schrieb: > Ist es überhaupt möglich über eine dll eine Serielle Schnittstelle > anzusteuern? wie Loriot sagte, möglich aber sinnlos. Dafür gibt es Funktionen des Betriebssystems. Oder anders gesagt, die DLL ist schon da. Gruss Reinhard
Wieso ? In der dll kann man doch das finden des Richtigen Comports + Kommunikationsprotol + Checksummenberechnung bzw. fertige Funktionen wie Firmwareupdate usw. implementieren.
Willst du einfach nur eine DLL basteln, die andere Anwendungen nutzen können um auf deine konkrete Hardware einfacher zugreifen zu können oder wie oder was? Oder welchen Zweck soll die DLL haben? Wie man ne dll erzeugt dürfte google etliche Treffer finden. Für VisualStudio wirst du da konkret auf codeproject.com vermutlich etliche Artikel finden (da gibts auch Artikel über die serielle Schnittstelle)
Also die dll soll die Funktionen haben, den Mikrocontroller über Serielle Schnittstelle Daten zu empfangen und senden. In der dll wird ein Protokoll zusammengestellt und an den Mikrocontroller gesendet, um Digitale und Analoge (PWM) Ausgänge zu setzten und Digitale und Analoge Eingänge einzulesen. Es geht darum aus LabVIEW eine dll einzubinden die die Unterprogramme verwendet. Für das Velleman Board gibs eine dll und in der Schule wird damit gearbeitet. Ich würde aber gerne mit dem myAVRBoard Arbeiten bzw das Interesse an der eigenen dll ist auch da. Funktionen in C# schreiben um den Controller anzusteuern ist kein Problem aber die einzelnen Funktionen in LabVIEW aufzurufen gibs noch Probleme. LabVIEW unterstützt nur _stdcall oder c. Jemand eine Idee wie man das Problem gelöst bekommt?
Hallo, hast du dir das hier mal durchgelesen? So weit ich das sehe brauchst du keine DLL. das Protokoll der zu sendenden Daten kannst du dir per Firmware im MK2 zusammenbauen. Am COM-Port bist du schon drann und den Datenstrom auseinandernehmen kann LabView erledigen. http://shop.myavr.de/index.php?sp=download.sp.php&suchwort=LabView da ist ne Beschreibung und ein Beispielprojekt für das was du machen willst drin ;-) Gruß
Du könntest Dir eine DLL erstellen auf die Labview zugreift. Hierin wird dann das Protokoll umgesetzt. Diese DLL wiederum nutzt interne Windows-Funktionen für den Zugriff auf die serielle Schnittstelle. Also dafür wäre dann keine DLL notwendig. Wegen Zugriff auf serieller Schnittstelle unter Windows einfach mal googeln. Oder hier im Forum suchen. Ich habe hier selbst schon eine ganze Klasse zum Zugriff auf die serielle Schnittstelle reingestellt. Einige andere auch. Der Zugriff auf die serielle dürfte damit einfach sein und Dir erheblich Arbeit sparen Eine DLL kannst Du auch mit dem gcc erstellen. Den kannst Du Dir kostenlos downloaden. Mit Eclipse oder Dev-C++ sollte es dann einfach sein.
Du solltest dein Projekt in einfache lösbare Schritte aufteilen: 1. Ein C (oder c#) Programm, das mit dem µC über die serielle Schnittstelle Daten austauscht. Wenn das funktioniert: 2. Ein Protokoll ausarbeiten und in das PC Programm und den µC implementieren, das alle Kommunikationselemente enthält, die du benötigst Wenn das funktioniert: 3. Herausfinden welche Schnittstelle eine DLL haben muss (auch API genannt), daß Labview sie einbinden und ansprechen kann. 4. Eine DLL mit Dummydaten schreiben und die in Labview einbinden. Wenn das alles funktioniert dann: 5. wirfst du Punkt 2 und 4 zusammen und baust in deine DLL das Protokoll und die Ansteuerung der seriellen Schnittstelle ein.
Habe ich mal gemacht füre LabView ist ganz eingfach gibt es auch ne beschreibung von NI. http://www.labviewforum.de/attachment.php?aid=5973
Also Protokoll steht schon. In C# eine Dll schreiben auch kein Problem mit Funktionen. Mein Problem ist jetzt nur noch das die Funktionen bei LabVIEW noch nicht sichtbar sind.
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.