我把这段程序直接放到 simple_socket_server 例程里,不能用。有错误
不知道是什么原因,请版主赐教
#define SERVPORT 8000
#define MAXDATASIZE 100 /*每次最大数据传输量 */
int sockfd, recvbytes;
char buf[MAXDATASIZE];
struct hostent *host;
struct sockaddr_in serv_addr;
if((host=gethostbyname("11.36.243.6"))==NULL) {
exit(1);
}
if ((sockfd = socket(AF_INET, SOCK_STREAM, 0)) == -1){
exit(1);
}
serv_addr.sin_family=AF_INET;
serv_addr.sin_port=htons(SERVPORT);
serv_addr.sin_addr = *((struct in_addr *)host->h_addr);
bzero(&(serv_addr.sin_zero),8);
if (connect(sockfd, (struct sockaddr *)&serv_addr,
sizeof(struct sockaddr)) == -1) {
exit(1);
}
while(如果内存中有数据){IORD_32DIRECT(BASE, OFFSET)=buf
从内存中取数据,放入buf中
if ((recvbytes=send(sockfd, buf, MAXDATASIZE, 0)) ==-1) {
perror("recv出错!");
exit(1);
}
}
楼主指的是什么simple socket,跑得是什么os,是否支持socket的操作???
我买的是100M网络扩展模块与FPGA/SOPC学习开发套件
采用LAN91C111网络芯片
基于NiosII的Simple Socket Server 和Web Server例子
我刚接触NIOS,所以不太了解。
想实现以太网的数据传输。
那你先看看他给你的技术支持。对于socket的绑定操作等,需要有操作系统的支持,裸机的代码是肯定不能识别socket的。
你用的是UCOS吧。
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) | Powered by Discuz! 7.0.0 |