|
|
|
Mit Serieller Schnittstelle Buffer in Gerät vollschreiben |
|
| Dieter |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 19.11.2011, 12:15
Titel: Mit Serieller Schnittstelle Buffer in Gerät vollschreiben
|
 |
| |
 |
|
Hi,
ich hab ein Gerät mit nem 256 Byte großem Buffer. Über die serielle Schnittstelle gehen 125kByte/s. Der Buffer wird aber nur mit 44100Byte/s geleert.
Nach jedem empfangenen Byte wird die Anzahl der Bytes im Buffer zurückgesendet.
So sende ich die Werte aus dem Array...also immer direkt mehrere Werte in den Sendebuffer schreiben.
fwrite() kann ja nur ca alle 1ms aufgerufen werden, das ist aber zu langsam, deswegen muss ich mehrere Byte bei einem Sendevorgang verschicken.
Ich will jetzt nach jedem fwrite(paket) den letzten gesendeten Wert der vom Gerät kommt auswerten und dann gucken wieviele Bytes ich beim nächsten mal senden kann.
Das Problem ist dass mein Empfangsbuffer nur 1Byte groß ist, da sonst immer gewartet wird bis alle Bytes empfangen wurden bis der Buffer voll ist und das kostet zu viel Zeit.
Ich will nach dem fwrite direkt mit so wenig Verzögerung wie möglich das letzte empfangene Byte haben und auswerten.
Jemand ne Idee wie ich dieses Handshaking umsetzen kann?
|
|
|
|
|
|
|
|
|
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
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2025
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.
|
|