完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
我用两台SPI进行通信,其中从机收到主机发来的数据后会将数据发给TCP服务器,TCP服务器发送给从机的数据也会经过SPI发送给主机。
但是我发现从机发给TCP的数据不对,无论发送什么字符,TCP显示的都是“tiCoIsAio”这样的字符。请问这会是什么原因? 还有一个问题是服务器发送给从机的数据收不到,这又是什么原因? 希望能够解决我这个问题,万分感谢。 下面是我的从机TCP传输数据代码: int SpiTransfer(unsigned long ulBase, int iSockID) [ // unsigned long ulUserData; unsigned long ulDummy; char cTxBuf[100],i; char cRxBuf[100]; // char cGetChar; int iStatus; int iCounter=0; while(1) [//SPI接收的数据 MAP_SPIDataGet(ulBase,&ulDummy); MAP_UARTCharPut(UARTA0_BASE,ulDummy);//显示字符 cTxBuf[iCounter++]=ulDummy; iStatus=sl_Send(iSockID,cTxBuf,iCounter,0);//将字符发送给TCP服务器 if(iStatus<=0) [//错误处理 ASSERT_ON_ERROR(sl_Close(iSockID)); UART_PRINT("发送数据失败nr"); break; ] //recv tcp iStatus = sl_Recv(iSockID,cRxBuf,100,0); if(iStatus > 0) [ //iStatusRecv = sl_Send(iSockID, cRxBuf, iStatus, 0); MAP_SPIDataPut(ulBase,iStatus); MAP_UARTCharPut(UARTA0_BASE,iStatus); for(i = 0; i < iStatus; i++ ) [ UART_PRINT("%2c nr", cRxBuf); //UART_PRINT("202 nr"); ] ] ] return(iStatus); ] |
|
相关推荐
7个回答
|
|
应该不会,你有没有用例程里面的spi_demo测试一下,主机发送到丛机的数据打印出来是对的吗?
如果有答案已经回答了您的问题,请标注为已回答。 Please close your question if it has been solved. ------------------------------------------------------------------ |
|
|
|
一个黄人 发表于 2018-6-21 03:11 有试过了,主机从机的数据是没问题的。并且在我这个程序中,从机串口还是能显示正确的数据,就是TCP的数据错误的 |
|
|
|
有没有单独测试TCP通信的数据是否正确,TCP的数据错误是发送之前出现错误还是接收解码部分出现错误, |
|
|
|
之前用串口跟TCP通信的时候是没问题的。数据的传输都是正确没问题的。 这次用SPI,我能够在从机的串口看到主机发送给从机的内容是正确的。 所以我认为TCP的数据错误应该是发生在接收解码部分。或者是否是我发送数据的函数格式不正确? |
|
|
|
这是我的源代码~试了许久还是发现TCP的数据不对。 |
|
|
|
cTxBuf[iCounter++]=ulDummy; iStatus=sl_Send(iSockID,cTxBuf,iCounter,0);//将字符发送给TCP服务器 每新接收一个字符,就把所有已经接收的字符都发往sever,应该这个逻辑有问题,应该只发当前接收的字符过去吧 |
|
|
|
zhoujing_oae 发表于 2018-6-21 04:39 是的,这个问题已经解决了~谢谢回答。 |
|
|
|
只有小组成员才能发言,加入小组>>
NA555DR VCC最低电压需要在5V供电,为什么用3.3V供电搭了个单稳态触发器也使用正常?
672 浏览 3 评论
MSP430F249TPMR出现高温存储后失效了的情况,怎么解决?
599 浏览 1 评论
对于多级放大电路板,在PCB布局中,电源摆放的位置应该注意什么?
1052 浏览 1 评论
736 浏览 0 评论
普中科技F28335开发板每次上电复位后数码管都会显示,如何熄灭它?
523 浏览 1 评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
158浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
122浏览 14评论
在使用3254进行录音的时候出现一个奇怪的现象,右声道有吱吱声,请教一下,是否是什么寄存器设置存在问题?
124浏览 13评论
TLV320芯片内部自带数字滤波功能,请问linein进来的模拟信号是否是先经过ADC的超采样?
122浏览 12评论
TPA6304-Q1: TPA6304 两片公用一组I2C的话,其中一片配置不成功怎么办
165浏览 10评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-23 12:26 , Processed in 0.803825 second(s), Total 60, Slave 54 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号