资源描述:
《嵌入式系统设计与应用-课程设计报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、仰恩大学计算机与信息学院课题设计报告《嵌入式系统设计与应用》课程设计报告专业:班级: 姓名:学号:指导教师: 8仰恩大学计算机与信息学院课题设计报告目录一、设计目的3二、开发环境3三、设计任务及要求3四、实现过程34.1用户应用程序设计34.2服务器端程序34.3客户端程序54.3编译与运行结果7五、总结78仰恩大学计算机与信息学院课题设计报告一、设计目的(1)、熟悉并掌握在Linux开发环境下C语言程序设计及编译方法、嵌入式系统;(2)、掌握嵌入式linux下基础网络编程:socket编程(3)、独立编写
2、客户机/服务器通信程序;二、开发环境(1)编程环境:在Linux开发环境下设计及编译C语言程序。(2)硬件设备:PXA270开发板,PC机。三、设计任务及要求设计一套可远程调用求和函数并返回客户端的程序。四、实现过程4.1用户应用程序设计1.程序sum.hintsum();2.程序sum.c#includeintsum(){inti=1,sum=0;while(i<=100){sum=sum+i;i++;}returnsum;}4.2服务器端程序/************************
3、*******8仰恩大学计算机与信息学院课题设计报告*服务器端程序server.c*********************************/#include#include#include#include#include#include#include#include#include“sum.h”main(){intsockfd
4、,new_fd,numbytes;structsockaddr_inmy_addr;structsockaddr_intheir_addr;intsin_size,sum;charbuff[100],temp[100];sum=sum();itoa(sum,temp,10);//服务器端建立TCP协议的socked套接字描述符if((sockfd=socket(AF_INET,SOCK_STREAM,0))==-1){perror("socket");exit(1);}printf("socketsuccess!
5、,sockfd=%d",sockfd);//服务器端初始化sockaddr结构体,绑定2323端口my_addr.sin_family=AF_INET;my_addr.sin_port=htons(2323);my_addr.sin_addr.s_addr=INADDR_ANY;bzero(&(my_addr.sin_zero),8);//绑定套接字描述符sockfdif(bind(sockfd,(structsockaddr*)&my_addr,sizeof(structsockaddr))==-1){pe
6、rror("bind");exit(1);}printf("bindsuccess!");//创建监听套接字描述符sockfdif(listen(sockfd,10)==-1){perror("listen");8仰恩大学计算机与信息学院课题设计报告exit(1);}printf("listening....");//服务器阻塞监听套接字,循环等待客户端程序连接while(1){sin_size=sizeof(structsockaddr_in);//如果建立连接,将产生一个全新的套接字if((new_f
7、d=accept(sockfd,(structsockaddr*)&their_addr,&sin_size))==-1){perror("accept");exit(1);}//生成一个子进程来完成和客户端的会话,父进程继续监听if(!fork()){//读取客户端发来的信息if((numbytes=recv(new_fd,buff,strlen(buff),0))==-1){perror("recv");exit(1);}//将从客户端接收到的信息再发回客户端if(send(new_fd,temp,strle
8、n(buff),0)==-1)perror("send");/*本次通信结束*/close(new_fd);exit(0);}/*下一个循环*///close(new_fd);}close(sockfd);}4.3客户端程序/********************************客户端程序client.c*****************************