CH395 Socket3 Socket4 Socket5 配置成TCP_Client,只有Socket3能正常收發(fā)數(shù)據(jù),Socket4 Socket5不能收發(fā)數(shù)據(jù)

CH395 Socket3 Socket4 Socket5 配置成TCP_Client,只有Socket3能正常收發(fā)數(shù)據(jù),Socket4 Socket5不能接收數(shù)據(jù)(無接收中斷),能發(fā)心跳包,但數(shù)據(jù)是錯的,且是固定的有規(guī)律數(shù)據(jù),重新分配過緩存了,??

static void Socket_R_S_Buf_Modify(void )? // 定義6個 Socket收發(fā)緩沖區(qū) 大小

{

? ?CH395SetSocketRecvBuf(0,0,4);? ? ?// Socket 0 ,接收緩沖區(qū)4*512 = 2K,發(fā)送緩沖區(qū)4*512 = 2K

? ?CH395SetSocketSendBuf(0,4,4);??

??

? ?CH395SetSocketRecvBuf(1,8,4);? ? ?// Socket 1?

? ?CH395SetSocketSendBuf(1,12,4);??

??

? ?CH395SetSocketRecvBuf(2,16,4);? ? // Socket 2?

? ?CH395SetSocketSendBuf(2,20,4);??

??

? ?CH395SetSocketRecvBuf(3,24,4);? ? // Socket 3?

? ?CH395SetSocketSendBuf(3,28,4);??

??

? ?CH395SetSocketRecvBuf(4,32,4);? ? // Socket 4?

? ?CH395SetSocketSendBuf(4,36,4);??

??

? ?CH395SetSocketRecvBuf(5,40,4);? ? // Socket 5?

? ?CH395SetSocketSendBuf(5,44,4);

}

請版主幫助分析解決,急啊

image.png

您好,CH395默認開啟四個socket,需要增加socket數(shù)量則另外要分配緩沖區(qū)。

(1)需要重新分配緩沖區(qū)數(shù)量,保證每個socket有收發(fā)緩存可使用。鑒于您進行了此步驟,可排除相關(guān)問題。

(2)驅(qū)動代碼宏定義中的_SOCK_INF的socket信息和socketbuff外部緩存也需要定義足夠組量。

(3)在判斷全局中斷狀態(tài)類型的時候,由兩個字節(jié)表示;鑒于后四個socket存在問題,檢查第二個字節(jié)的標志是否正確讀到,可使用邏輯分析儀檢查實際物理電壓波形。

(4)后三個TCP_Client的socket,請檢查是否有相同的目的IP、目的端口或者本地端口號存在,造成沖突。

(5)使用芯片前可先按照官方例程風格及內(nèi)容移植,確認代碼正常使用之后,在按照需求進行更改,以此避免其他影響。



只有登錄才能回復,可以選擇微信賬號登錄

国产91精品新入口,国产成人综合网在线播放,九热这里只有精品,本道在线观看,美女视频a美女视频,韩国美女激情视频,日本美女pvp视频