[MATLAB] délai d'une milliseconde (résolu, Shengrun Bluetooth (CC2541) envoie un problème de perte de paquets trop rapide)

Description du problème :
basé sur MATLAB21b, lorsque j'ai utilisé le port série pour effectuer le test de communication Bluetooth, j'ai constaté qu'il y avait un problème de perte de paquets lors de l'envoi de 200 octets à la fois.

Résolvez la clé :

1. Mise en paquets des données
2. Retard de niveau milliseconde

retard en millisecondes

pause(n)
arrête temporairement l'exécution de MATLAB. L'unité par défaut du paramètre n est la seconde. n est un nombre non négatif supérieur à 0.
Pour obtenir un délai d'une milliseconde :pause(n/1000)

Exemple de retard

pause(2) ; % 暂停2s
pause(20/1000) ; % 暂停20ms

Solutions

Consultez la fiche technique de mon utilisation de Bluetooth Shengrun Bluetooth (CC2541) et trouvez ce qui suit :
insérez la description de l'image ici
Divisez les données en paquets uniques de moins de 17 octets
et utilisez la pause (20/1000) pour faire une pause de 20 ms après l'envoi de chaque paquet.
Ensuite, répétez la transmission de paquets jusqu'à ce que la transmission de données soit terminée.

Je suppose que tu aimes

Origine blog.csdn.net/qq_44078824/article/details/123680234
conseillé
Classement