从CH582M的串口输出如下,速度在变,请问这是丢数了吗?是APP接收丢数,还是CH582M没有发送成功?
如何保证不丢数且速率能达到>6KB/s?
从CH582M的串口输出如下,速度在变,请问这是丢数了吗?是APP接收丢数,还是CH582M没有发送成功?
如何保证不丢数且速率能达到>6KB/s?
添加调试信息
static void peripheralConnectEventCB( uint32_t timeUs )
{
? ? uint8_t ret8;
? ? if( speed_test_enable )
? ? {
? ? ? ? while(1)
? ? ? ? {
? ? ? ? ? ? if( ret8=peripheralChar4Notify(speed_test_buf, peripheralMTU - 3) )
? ? ? ? ? ? {
? ? ? ? ? ? ? ? //发送失败
? ? ? ? ? ? ? ? PRINT("%d", ret8);? ? ? //添加的调试信息输出
? ? ? ? ? ? ? ? break;
? ? ? ? ? ? }
? ? ? ? ? ? else
? ? ? ? ? ? {
? ? ? ? ? ? ? ? peripheralTxDataLen += peripheralMTU - 3;
? ? ? ? ? ? ? ? PRINT("O");
? ? ? ? ? ? }
? ? ? ? }
? ? }
}
实测为:
OOOOO22OOO22OOOOO22O22OOOO22OOOO22OOOO22OOOO22OOOO22OOOO22OOOO22OOOO22OOOO22OOOO22OOOO22OOOO22OO22OOOO22OOOO2222OOOOO22OOO22OOOOO22OOO22OOOOO22OO22OOOO22OOOO22OOOO22OOOO22OOOO22OOOO22OOOO22OOOO22OO22OOOOO22OOO22OOOOO22OOO22OOOOO22OOO22OOOO22OOOO22OOOO22OOOO22OOOO2222OOOOO22OOO22OOOOO22OOO22OOOOO22OOO22OOOOO22OOO22OOOO22OOOO22OOOO22OOOO22OOOO2222OOOOO22OOO22OOOOO22OOO22OOOOO22OOO22Tx: 4980B/s
请问,发送失败时输出的22(即0x16)是下面定义吗?什么意思?
#define blePending? ?0x16 //!< Waiting
通过给待发送的noti数据增加编号,并在Central例程中打印出来,发现编号连续,未丢包。还挺好。
不过,还是请WCH技术稍微介绍一下楼上贴的问题。
传输速度受到很多因素影响,速度很难保持在某一个特定的值;你上面显示的是传输速度变慢并不是丢数。你可以说明一下你的具体应用;我们根据你的应用进行具体分析。
waiting这里是挂起等待等上一包数据发送完成。