读取字符串并通过UART将二进制文件发送到STM32

问题描述 投票:0回答:1

我希望使用UART接口从PC到STM32微控制器读取和发送数千行。

行看起来像:

1089,1089,1089,1089
1089,1089,1089,1089
1101,1101,1101,1101
1126,1126,1126,1126
1259,1221,1208,1270
1285,1248,1236,1295
1312,1277,1266,1322
1337,1303,1292,1347
1351,1316,1304,1361
...

STM32应首先保存二进制数据,然后能够逐行读取并每隔100ms设置一次PWM值。

  1. 如何使用QT Creator将字符串转换为二进制/十六进制(通过UART发送字符串是多少字节)?
  2. 什么是在STM32上保存bin行数(最多20000行)的更好方法 - 数组?二进制文件?
  3. 我应该使用外部存储吗?

谢谢!

qt hex stm32 uart
1个回答
0
投票
  1. 您可以使用QString::toInt()QByteArray::toInt()函数将字符串或bytearray转换为整数。如果以字符串形式发送一行,则一行将为16字节(包括LF(0x0A)字符)。如果以二进制形式发送,则行的大小将减小。但是我建议使用一种使用校验和的标准协议。
  2. 3 - 取决于内部存储器的大小和您的需求。可以使用EEPROM或FLASH等外部存储器
© www.soinside.com 2019 - 2024. All rights reserved.