电脑与6678通过网口通信.docx

电脑与6678通过网口通信.docx

ID:57828273

大小:273.27 KB

页数:11页

时间:2020-09-02

电脑与6678通过网口通信.docx_第1页
电脑与6678通过网口通信.docx_第2页
电脑与6678通过网口通信.docx_第3页
电脑与6678通过网口通信.docx_第4页
电脑与6678通过网口通信.docx_第5页
资源描述:

《电脑与6678通过网口通信.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、一、通过TCP/IP协议通信:1.目标:将PC机中C盘目录下的a.bmp文件通过网口传递给66782.准备工作:(CCSv5.2;C++2010;EVM6678L)1).将PC的IP设为192.168.2.1012).将6678设为静态IP和NoBoot模式,各按键设置如图所示。3).编译PC端C++程序时,需添加相应的网络应用的库函数WS_32.lib。具体步骤如下:项目→XXX(文件名)属性→配置属性→链接器→输入→附加依赖项→WS_32.lib3.程序说明:1)PC端C++程序#include#includeusingname

2、spacestd;#include#include#includeintmain(){constintDEFAULT_PORT=700;//6678程序端口号//初始化WORDwVerisonRequested;WSADATAwsaData;interr,iLen=0;wVerisonRequested=MAKEWORD(2,2);err=WSAStartup(wVerisonRequested,&wsaData);if(err!=0){cout<<"加载WinSock失败!";return0;}cout<<"加载Wi

3、nSock成功!"<

4、协议类型,和程序端口号,//6678作为服务器addrSrv,PC端做客户端addrCliaddrCli.sin_family=AF_INET;//通信协议addrCli.sin_addr.S_un.S_addr=inet_addr("192.168.2.101");//IPaddrCli.sin_port=htons(500);//端口号//inet_addr()和htons()为字节序转换函数,由于计算机字节序和网络字节序相反,需通过上述函//数进行变换addrSrv.sin_family=AF_INET;addrSrv.sin_addr.S_un.S_addr=inet

5、_addr("192.168.2.100");addrSrv.sin_port=htons(DEFAULT_PORT);//将PC端的socket与6678端的socket进行绑定err=bind(sockClient,(SOCKADDR*)&addrCli,sizeof(SOCKADDR));if(err!=0){cout<<"bind()fail:"<

6、ary);staticcharbmpBuf[768][1024][3],ack;//bmpBuf用于存放读入的bmp位图数据BITMAPbmpHeader,*pbmpHeader=&bmpHeader;//用于存放bmp文件头memset(pbmpHeader,0,sizeof(BITMAP));BITMAPINFOHEADERbmpInfoHeader,*pbmpInfoHeader=&bmpInfoHeader;//用于存放bmp位图信息//头memset(pbmpInfoHeader,0,sizeof(BITMAPINFOHEADER));in((char*)pbmpH

7、eader,sizeof(BITMAP));//读入bmp文件头in((char*)pbmpInfoHeader,sizeof(BITMAPINFOHEADER));//读入bmp位图信息头cout<

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。