da dies mein erster Beitrag ist möchte ich zuerst kurz vorstellen.
Ich bin 25 Jahre alt und Studiere Elektrotechnik. Zurzeit befinde ich mich in einem Praktikum, in welchem ich mit Matlab in naher Zukunft zutun haben werde .
Mit Matlab habe ich bis jetzt allerdings praktisch nichts zu tun gehabt, jediglich einige Programmausschnitte in Vorlesungen gesehen. Deren Niveau jedoch sehr niedrig war.
Meine sonstigen Erfahrungen mit programmieren sind Basisvorlesungen in C# und C++.
Spass am programmieren habe ich eigentlich erst jetzt so richtig, seit dem ich in meinem Praktikum mit realen Problemen konfrontiert werde.
Nun zu meiner Frage/Aufgabe:
Ich möchte die Serielle Schnittstelle COM1 verwenden.
Genauer gesagt möchte ich spezielle Werte Schreiben, welche ein Mikrocontroller lesen soll und je nach Wert etwas ausführt.
Ich hoffe damit den COM1 initialisiert und mit fwrite(com1,1,'uchar') beschrieben zu haben.
Ich bin mir nicht sicher ob ich alle wichtigen Parametereinstellungen vorgenommen habe oder ob damit asynchrone Übertragung eingestellt ist.
Die im Code angegebenen habe ich mir aus diesem Forum und anderen abgekupfert. Ob ich Sie so benötige steht noch zur Frage.
Wird eigentlich als Beispiel die Zahl 1 wie in meinem Code als 0000 0001 übertragen ? Oder wird ein Code Übertragen, der die 1 repräsentiert ? ( z.B. ASCII ? )
Auch Syntaxmäßig kann ich zurzeit nur schätzen, Matlab selbst steht mir immoment noch nicht zur Verfügung.
Es wäre sehr nett von Euch, wenn Ihr meinen Code bewerten würdet.
Auch über Verbesserungsvorschläge/Tipps würde ich mich sehr freuen.
Bis dahin mache ich mal ein paar Tutorials für Matlab.
Wenn es die 1 als uchar schreibt, passt es soweit schonmal.
Wichtig für mich ist, dass ich während einem Durchlauf eines Matlab-Scripts an verschiedenen Stellen die Serielle Schnittstelle beschreiben kann.
Und zwar mit verschiedenen uchar Werten.
Der Mikrocontroller soll in einer Schleife prüfen, ob einer dieser uchar Werte anliegt und dementsprechend eine Funktion aufrufen.
Hier mein erster Codeansatz für meinen µC(ATTiny2313):
//Enable The receiver and transmitter and interrup
UCSRB=(1<<RXEN)|(1<<TXEN)|(1 << RXCIE);
}
////////////////////////////////////////////////////////////////////
void Programm_name() {
Ist es sinnvoll/üblich, meinen Com1 nach jeder Übertragung zu schließen und anschließend wieder bei einer neuen Übertragung zu öffnen ?
Wie lange liegt mein uchar-Wert am Com1 überhaupt an ? Reicht diese Zeitperiode aus, um meine komplette while-Schliefe meines µControllers zu durchlaufen und dementsprechend eine Funktion aufzurufen ?
Kennt sich jemand soweit mit µ-Controllern aus, um mir sagen zu können ob mein µ-Controller Programm funktionieren würde?
Leider kann ich auch hier mein Programm noch nicht testen.
Vielen Dank im voraus und viele Grüße
Domi
_________________
Matlabneuling
Einstellungen und Berechtigungen
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.