你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

UDP client 端能发送,但是无法接到数据(跳不到接受回调...

[复制链接]
fan-347685 发布时间:2015-8-10 11:00
UDP client 端能发送出去,但是无法接到数据(跳不到接受回调函数),,帮看看什么问题,各位????是神州的开发板源码,,不知道为什么无法接受到数据
% f* {: K8 Y% }- z#define UDP_SERVER_PORT      8006, G2 v" k/ K: t) K/ a
#define UDP_CLIENT_PORT      4
* k6 ~+ P2 h( R2 n6 ]#define TCP_PORT      4
" Y" a4 K; A8 [9 [( ]+ S1 A3 v& A#define UDP_CLIENT_IP                                255,255,255,255+ \% x1 h+ T) N
; M, t" i/ ]# {4 V0 q" {

- e% v! Z- f* u, Q3 B3 jvoid client_init(void)
0 e) k$ c2 _, K) H! S! ~# D{
( e0 S6 |) q8 @9 z   struct udp_pcb *upcb;2 h# g/ g. g1 ]# @. R: A8 V
   struct pbuf *p;8 p! Q& {8 r8 N) y" Z' w
                             5 m. |/ T5 z$ h4 j8 q. q' Q3 \
   /* Create a new UDP control block  */
6 H1 b1 O. U2 _   upcb = udp_new();   # j, l: R3 }! _4 w* Y" o
         SET_IP4_ADDR(&ip_udp_server,UDP_CLIENT_IP);. ?+ O! n: d& @6 w$ e
         p = pbuf_alloc(PBUF_TRANSPORT, sizeof(Sent), PBUF_RAM);' `# J. z5 B6 ]9 S3 A( z/ T
         p->payload = (void*)Sent;
0 s& @2 ]* A6 ?4 u5 n8 w7 S7 U6 w' I- Q( R% o( S% Q
         udp_bind(upcb, IP_ADDR_ANY, 4);; z3 s. _6 \% H* ]0 k: J
         udp_connect(upcb, &ip_udp_server, UDP_SERVER_PORT);         # o9 [, D6 |8 t& b2 ]4 m0 w% H+ [
         udp_send(upcb, p);
5 b3 D9 b, ~* v* t) d# w        udp_recv(upcb, udp_client_callback, NULL);
5 P& R# F. {2 v$ O+ P, U( F4 x0 B: _7 F/ |9 c0 Z
        /* Free the p buffer */% v  h% i( N& `% v8 t
        pbuf_free(p);+ c2 C/ R) Q# x- w& b& p
}
8 ~( j7 X0 q# g! `" h0 M% T% r/ R# X; l7 ~+ O; P5 T7 a6 s
void udp_client_callback(void *arg, struct udp_pcb *upcb, struct pbuf *p, struct ip_addr *addr, u16_t port)3 q# n" T4 n0 r6 D4 r7 d& }
{( u  M6 G8 s9 n1 |8 x" ^; A( z
  struct tcp_pcb *pcb;
; f- w- d7 W* J4 G. F" `  __IO uint8_t iptab[4];. V0 ^7 s. Q$ S+ z5 Y* P1 {
  uint8_t iptxt[20];( M& ~1 {! R9 v/ b' e
  /* Create a new TCP control block  */
$ l4 E+ j5 ^3 K! ?  pcb = tcp_new();- a. w( t( T" b+ g

: G+ ~  E! u+ ?" L5 Y- N- F: b  /* Assign to the new pcb a local IP address and a port number */: P  Y1 A. z& l
  tcp_bind(pcb, IP_ADDR_ANY, TCP_PORT);
9 w. I7 T' K& v1 L/ f
) S+ P2 A  P# v( h. G6 I4 u5 p4 u, [  /* Connect to the server: send the SYN */5 n" B4 h* D! p
  tcp_connect(pcb, addr, TCP_PORT, tcp_client_connected);6 M- N9 O& e" U& f

# C1 T# ~$ T: b( j  ?& Y  /* Free the p buffer */& y) B- d/ @; s4 W$ _% T
  pbuf_free(p);
1 [' Q9 |9 Y/ K; _}
$ x2 H& z% o$ t% u0 N% L5 F
5 {% A& A3 h3 \$ z$ j& @5 t( H' ^$ S. Y/ {

udp server端

udp server端
赞 收藏 评论3 发布时间:2015-8-10 11:00

举报

3个回答
JackieLaura 回答时间:2015-8-10 11:33:51
客户端IP是不是有问题啊。。。
stary666 回答时间:2015-8-10 14:18:39
看看,,,,,,,,,,,,
fan-347685 回答时间:2015-8-10 17:59:06
JackieLaura 发表于 2015-8-10 11:331 {: M2 U4 |$ M! n% W$ K. F
客户端IP是不是有问题啊。。。
. O* H# D( Q; |/ {
  tcp_bind(pcb, IP_ADDR_ANY, TCP_PORT);你是不是指,绑定的本地IP_ADDR_SNY地址有问题?
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版