WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Senden auf serieller Schnittstelle ergibt Murks...

 

Epfi
Forum-Meister

Forum-Meister



Beiträge: 1.134
Anmeldedatum: 08.01.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.06.2009, 20:57     Titel: Senden auf serieller Schnittstelle ergibt Murks...
  Antworten mit Zitat      
Moin!

Habe hier einen Mikrocontroller liegen, dem ich Zahlen von 1...255 über die serielle Schnittstelle schicken kann und er antwortet mir mit eben jener Zahl.

Das klappt auch ganz gut. Aber nur bis 127 (also bis zum Ende des positiven 7 Bit Zahlenraums) und dann geht es schief. Es wird nur noch 63 gesendet (Ende des pos. 6 Bit Zahlenraums). Und zwar bis einschließlich 159 (das sind 32 Werte). Von 160 bis 255 klappt es dann wieder einwandfrei.

Kurz:
Code:

...
Soll: 126,   Ist: 126
Soll: 127,   Ist: 127
Soll: 128,   Ist: 063
Soll: 129,   Ist: 063
...
Soll: 158,   Ist: 063
Soll: 159,   Ist: 063
Soll: 160,   Ist: 160
Soll: 161,   Ist: 161
...
 


Das Problem ist definitiv auf Matlab zurückzuführen, wenn ich meine Werte übers Terminal schicke, klappt es wunderbar.

Mein Code:
Code:

s=serial('COM1');
s.Baudrate=115200;
s.Parity = 'none';
s.DataBits = 8;
s.StopBits = 1;
s.RequestToSend = 'off';
s.BytesAvailableFcnMode = 'byte';
s.BytesAvailableFcnCount = 2;
s.BytesAvailableFcn = @GetData;
fopen(s)
for jCount = 120:170
    fprintf(s, '%c', jCount); %sendet Zeichen, Echo kommt von selbst und wird im workspace in sollwert gespeichert
    disp(sprintf('Soll: %03d,\tIst: %03d', jCount, sollwert));
end
fclose(s)
delete(s)
clear s
 


Irgendjemand eine Idee, was da schiefläuft?

Grüße, Markus
Private Nachricht senden Benutzer-Profile anzeigen


Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

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.