Part Number:CC1312R
在rfPacket的示例里发送传输的数组是uint8_t 8位的,如果我要传输16位的数组,是可以把发送的数组改为16位的吗?
Yolande Wang:
您好,
您可以参照此链接的方法检查示例中的Inc文件夹里是否预先定义过:https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1253916/tms320f2800157-possible-to-define-typedef-uint8_t?tisearch=e2e-sitesearch&keymatch=uint8_t%2016#
,
sppt:
不是这个意思,是这个无线电发送的数据包packet他是uint8_t类型的数组,我现在想要发送uint16_t类型的数据可以放进去发送吗?
,
Yolande Wang:
理论上是不能的。
您可以尝试将数据类型修改为uint16,然后修改发送的缓冲区大小,接收端也要进行修改。
在修改代码时进行测试,以确保系统能解析更改后的数组大小。
,
sppt:
是直接修改那个rf结构体的数据类型吗
,
sppt:
他这个pPkt是一个uint8_t类型
,
sppt:
我已经尝试把uint16_t类型放到这个uint8_t类型的数组里在发射之前打印看的数据是对的,但是接收那边数据会乱。
,
sppt:
还有个问题就是这个rfpackRX的接收回调,我想把接收到的数据打印出来,在这个接收回调里打印的话收到两包之后就不会进这个回调了
不打印的话就可以一直进这个回调,请问是什么问题
,
Yolande Wang:
sppt 说:我已经尝试把uint16_t类型放到这个uint8_t类型的数组里在发射之前打印看的数据是对的,但是接收那边数据会乱。
接收端的数据类型也需要修改的。
,
Yolande Wang:
sppt 说:
还有个问题就是这个rfpackRX的接收回调,我想把接收到的数据打印出来,在这个接收回调里打印的话收到两包之后就不会进这个回调了
不打印的话就可以一直进这个回调,请问是什么问题
看起来像是缓冲区满了,确保及时处理掉接收到的数据。
尽可能避免在接收回调中执行耗时的操作,以确保即使处理后续的数据。
,
sppt:
那我要打印接收到的数据该怎么打印,我刚才试了在主函数的while里写打印但是他是一直都在回调函数里,不会走到主函数的while里
,
sppt:
都改了,但是从结果来看还是数据不对
,
sppt:
这个打印的问题我已经解决,现在只有不知道怎么发送uint16_t类型的数据
,
Yolande Wang:
您将uint8改为unit16试试
,
sppt:
感谢您的回复,问题已经解决