完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
大家好,我在UDP发送和接收上工作,我可以打开一个套接字并发送远程主机可以接收的数据包。但是当远程主机发送包时,我的UDP客户端不能接收。UDP是准备工作不适合我。在UDP客户端.........案例pt_eth_state_init代码段:{ tcpipstat = tcpip_stack_status(sysobj。TCPIP);如果(tcpipstat & lt;0){ //一些错误sys_console_message(“应用:TCP/IP协议栈的初始化失败!rn”);pt_appdata.state = pt_app_state_service_tasks;} else if(tcpipstat = = sys_status_ready){ //现在栈准备我们可以检查/可用的接口nnets = tcpip_stack_numberofnetworksget();为(i = 0;我& lt;nnets;i++){ Neth = tcpip_stack_indextonet(我)网络名= tcpip_stack;_netnameget(荷兰);netbiosname = tcpip_stack_netbiosname(荷兰);#如果定义(tcpip_stack_use_nbns)sys_console_print(“%s %s的接口在主机-域名启用rn”,网络名,netbiosname);#别的sys_console_print(“%s %s的接口在主机-域名禁用rn”,网络名,netbiosname);# endif //定义(TCpip_stack_use_nbns)} pt_appdata.state = pt_eth_socket;}打破;}案例pt_eth_socket:{地址值= 0x7a01a8c0;udp_socket = tcpip_udp_clientopen(ip_address_type_ipv4,端口,(ip_multi_address *)&;addr);如果(udp_socket = = invalid_socket){ sys_console_message(“无法启动连接rn”);PTyAppDATA状态= PTYEthPixPixTest.Track;SysSCONSORE消息(“开始连接rn”);如果(!)tcpip_udp_isconnected(udp_socket)){ sys_console_message(“UDP没有连接rn”);pt_appdata.state = pt_eth_ping_test;break;}如果(tcpip_udp_putisready(udp_socket)= = 0){ sys_console_message(“UDP把没有准备好rn”);pt_appdata.state = pt_eth_ping_test;break;} tcpip_udp_arrayput(udp_socket,(uint8_t *)udp_buf,4);uint16_t ret = tcpip_udp_flush(udp_socket);sys_console_print(“UDP冲洗ret = %d rn”,RET);超时= sys_tmr_systemcountget() + sys_tmr_systemcountfrequencyget();pt_appdata.state = pt_eth_tcpip_wait_for_response;break;}案例pt_eth_tcpip_wait_for_response:{ char埠提供[ 180 ];memset(缓冲区,0,sizeof(缓冲区));/*如果(sys_tmr_systemcountget() >;超时){ sys_console_message(“R ntimout等待响应rn”);tcpip_udp_close(udp_socket);pt_appdata.state = pt_eth_ping_test;break;} * /如果(!tcpip_udp_isconnected(udp_socket)){ sys_console_message(“R nconnection封闭rn”);pt_appdata.state = pt_eth_ping_test;break;} /*论文部分不进入* /如果(tcpip_udp_getisready(udp_socket)){ tcpip_udp_arrayget(udp_socket,(uint8_t *)缓冲,sizeof(缓冲区)- 1);tcpip_udp_discaRD(udp_socket);sys_console_print(“缓冲区:%s rn”,缓冲);tcpip_udp_close(udp_socket);pt_appdata.state = pt_eth_ping_test;} drv_usart0_writebyte(A);
|
|
相关推荐
2个回答
|
|
我看不出您的代码有什么明显的问题-您使用什么端口来为客户机套接字使用?你在PC端使用什么客户机?有可能得到WiReSARK日志吗?
|
|
|
|
你好,我面临着同样的问题,我有相同的代码,你可以找到任何解决方案,我怀疑端口或IP地址的选择,对于我的情况,我未能使服务器接收客户端已经发送的。我在客户端和服务器端都使用相同的端口,并且我使用打开套接字客户端的IP地址:192.168.100.55,称为远程地址;对于服务器套接字:192.168.100.101(本地地址),我丢失了什么吗?谢谢你的帮助
|
|
|
|
只有小组成员才能发言,加入小组>>
5158 浏览 9 评论
1997 浏览 8 评论
1926 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3169 浏览 3 评论
请问电源和晶体值之间有什么关系吗?PIC在正常条件下运行4MHz需要多少电压?
2222 浏览 5 评论
723浏览 1评论
606浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
494浏览 1评论
PIC Kit3出现目标设备ID(00000000)与预期的设备ID(02c20000)不匹配。是什么原因
620浏览 0评论
519浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-19 14:47 , Processed in 1.383601 second(s), Total 80, Slave 63 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号