串口通信与网络通信的应用研究的论文_第1页
串口通信与网络通信的应用研究的论文_第2页
串口通信与网络通信的应用研究的论文_第3页
串口通信与网络通信的应用研究的论文_第4页
串口通信与网络通信的应用研究的论文_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

-本文为网络收集精选范文、公文、论文、和其他应用文档,如需本文,请下载-串口通信与网络通信的应用研究的论文本文从网络收集而来,上传到平台为了帮到更多的人,如果您需要使用本文档,请点击下载按钮下载本文档(有偿下载),另外祝您生活愉快,工作顺利,万事如意!摘要:该文通过可移动摄像头控制系统,探讨了以windows与linux平台为基础的两个操作系统之间的串口通信和网络通信,通过基于s3c2410的嵌入式串口通信的实现提出了具体可行的操作。该系统的硬件主体设计以三星s3c2410处理器为核心控制器件,实现在arm平台上的基本功能。关键词:嵌入式;socket;串口通信;网络通信本文的背景是研究通过对摄像头的远程控制从而对运动图像加以采集和处理。该系统的音视频编解码部分,是基于windows系统用vc进行的开发,实现对图像视频的编解码处理,摄像头的远程控制系统主要是通过linux系统设计。统通过串口和网络进行传输和控制。系统采用c/s模型,pc机作为client端,根据采集到的数据进行编解码后,发送出对摄像头的控制命令,通过网络传输到arm9平台上,arm平台作为server端在接收到client端发送的命令后,通过串口发送命令来控制摄像头。1 串口通信linux下串口通信基本原理linux系统将设备和文件的操作都作为对文件的处理,所以对设备的操作,内核会返回一个文件描述符,需要将其作为参数传给相对应的函数。linux中所有的设备文件都放在“/dev”目录下,通过“ttys+编号”命名相应的串口资源,所以对应路径是“/devttys*”。因而可以相对文件读写那样访问一个串口设备。linux下的串口设置首先要对串口进行设置,在完成对波特率等的设置。struct termiostcflag t c iflag;tcflag t c oflag;tcflag t c cflag;tcflag t c lflag;cc t c cc nccs;open()函数:int fd = open (“/dev/ttys *”, o rdwr|o noctty|o ndela y);然后调用read()和write()函数读写端口,返回实际读写的字节数,如果有错误发生则返回-1。读取串口结束后,首先恢复串口原始属性,然后才可以关闭串口并退出程序。串口控制应用程序下面给出本系统中一个通过串口控制摄像头的函数的一部分结构:void sendmsg(int pan,int tilt)struct timeval timeout;static char *driver = “/dev/ttys1”;_sec = 0;_usec = 0;formcmd(buf,pan,tilt);fd = uart_open(driver,b9600);write(fd,buf,16);close(fd);2 网络通信socket基本原理介绍socket是一种通信机制,客户/服务器系统既可以在本地单机上运行,也可以在网络中运行。首先需要了解socket中的一些重要函数:1) 创建socket:int socket( intdomain, inttype, intprotocol);2) 配置socket:bind函数指定本地信息int bind( intsocket, const structsockaddr* address, size_taddress_len);3) 使用listen( )和accept( )函数获取远端信息:int listen(int socket, int backlog);int accept(int socket, struct sockaddr* address, size_t* address_len);4) 通信处理:send( ),write( ),recv( ),read( )。5) 通信结束:使用closesocket( )。windows和linux下socket应用程序客户端程序:创建一个未命名的套接字,然后把它连接到服务器套接字server_socket上,向服务器写一个字符,再读回经服务器处理后的一个字符。服务器端程序:首先创建一个服务器套接字,绑定到一个名字,然后创建一个监听队列,接收来自客户程序的连接。下面我们分别在windows和linux下进行socket编程,实现二者之间的通信,具体函数实现的主要部分如下:windows下作为client端:socketclient=socket(af_inet,sock_stream,0);_addr=inet_addr(“);while(1)send(socketclient,sendbuffer,16,0);closesocket(socketclient);wsacleanup();linux下作为server端:server_sockfd = socket(af_inet, sock_stream, 0);server_addr = inet_addr(“);bind(server_sockfd, (struct sockaddr *)&server_address, server_len);listen(server_sockfd, 5);client_sockfd = accept(server_sockfd, (struct sockaddr *)&client_address, &client_len);while(1)read(client_sockfd, str,16);close(client_sockfd); 3 结束语本文设计了基于嵌入式平台上可移动摄像头远程控制,对串口通信和网络通信的原理和机制加以阐述,对串口驱动和网络驱动的编写提出了具体的方法,并且在实际的操作应用中给出了具体函数的编写。本文所提供的处理方法已在实际的项目中的得到应用,对于其他的通过串口通信和网络通信控制的设备,具有参

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论