版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、本文实例讲述了PHP实现连接设备、通讯和发送命令的方法。分享给大家供大家参考。具体如下:开发的BS架构的软件(PHP),需要跟设备进行通讯,在此记录一下,欢迎各位指正:1. 采用php socket技术使用TCP/IP连接设备参数$service_port 连接端口参数$address 发送IP地址参数$in 发送命令?123456789101112131415161718192021222324252627282930function Send_socket_connect($service_port, $address, $in) /创建 TCP/IP socket$socket = so
2、cket_create(AF_INET, SOCK_STREAM, SOL_TCP) or die("could not create socket!");/设置超时时间$timeout = 2;$time = time();/设置非阻塞模式socket_set_nonblock($socket);/超时判断while (!socket_connect($socket, $address, $service_port) $err = socket_last_error($socket);/ 连接成功,跳出循环if ($err = 10056) break;/连接失败,判断超
3、时时间,停止if (time() - $time) >= $timeout) socket_close($socket);print('网络异常,请检查网络连接!');exit();/ 刷新频率(250毫秒)usleep(250000);/设置阻塞模式socket_set_block($socket);/发送命令到设备socket_write($socket, $in, strlen($in);/关闭连接socket_close($socket);Send_socker_xdcoder $buffer为返回值?1234567891011121314151617181920
4、212223242526272829303132333435function Send_socket_xdcoder($service_port, $address, $in) /创建 TCP/IP socket$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP) or die("could not create socket!");/设置超时时间$timeout = 2;$time = time();/设置非阻塞模式socket_set_nonblock($socket);/超时判断while (!socket_co
5、nnect($socket, $address, $service_port) $err = socket_last_error($socket);/ 连接成功if ($err = 10056) break;/连接失败,判断超时时间,停止if (time() - $time) >= $timeout) socket_close($socket);echo "<script>alert('网络异常,请检查网络连接!');</script>"exit();/ 刷新频率(250毫秒)usleep(250000);/设置阻塞模式sock
6、et_set_block($socket);/发送命令到设备socket_write($socket, $in, strlen($in);/接收设备命令返回数据$buffer = socket_read($socket, 1024, PHP_NORMAL_READ);/关闭连接socket_close($socket);/输出返回值return $buffer;2. 采用php socket技术使用UDP协议连接设备,实现通讯和发送命令参数$service_port 连接端口参数$address 发送IP地址参数$in 发送命令?123456789101112function Send_soc
7、ket_connect_udp($service_port, $address, $in) /采用php socket技术使用UDP协议连接设备$socket = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);socket_set_option($socket, SOL_SOCKET, SO_RCVTIMEO, array("sec" => 2, "usec" => 0);/发送命令socket_sendto($socket, $in, strlen($in), 0, $address, $servi
8、ce_port);socket_recvfrom($socket, $buffer, 1024, MSG_WAITALL, $address, $service_port);/关闭连接if (empty($buffer) echo "<script>alert('网络异常,请检查网络连接!');</script>"Send_socket_xdcoder_udp $buffer 为返回值?123456789101112131415function Send_socket_xdcoder_udp($service_port, $addre
9、ss, $in) /采用php socket技术使用UDP协议连接设备$socket = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);socket_set_option($socket, SOL_SOCKET, SO_RCVTIMEO, array("sec" => 2, "usec" => 0);/发送命令socket_sendto($socket, $in, strlen($in), 0, $address, $service_port);socket_recvfrom($socket, $bu
10、ffer, 1024, MSG_WAITALL, $address, $service_port);/关闭连接socket_close($socket);if (!empty($buffer) return $buffer; else echo "<script>alert('网络异常,请检查网络连接!');</script>"3. 采用RS232串口技术连接设备,实现通讯和发送命令参数$com 串口号参数$baudratr 波特率参数$in 发送命令?1234567891011121314151617function rs232_c
11、onnect($com, $baudrate, $in) set_time_limit(10);/使用 'windows下设置窜口参数'exec("mode " . $com . " BAUD=" . $baudrate . " PARITY=n DATA=8 STOP=1 odsr=off");/ "打开端口串口$com"$f = fopen($com, 'w+');/判断串口是否正常打开if (!$f) /echo "<script>alert('Error when open $com!');</script>"die("Error when open $com");/向串口发送数据;fwrite($f, $in);/关闭端口 fclose($f);/串口操作结束还有一个关于命令16进制转
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 辰阳明德小学S版四年级语文下册教案(表格式)
- 博大精深的中华文化教学参考教案新人教必修
- 《萝卜回来了》教学设计
- 《物流运输实务》电子教案
- 旅游景区导游聘用合同范本
- 养猪场租赁合同:养殖产业转型
- 医疗美容医师聘用合同
- 健身房宿舍管理员招聘启事
- 咖啡馆冬季空调租赁合同范文
- 影剧院指示牌安装协议
- 【课件】庆祝新中国成立75周年主题班会课件
- 云南开放大学事业单位公开招聘82人高频500题难、易错点模拟试题附带答案详解
- 2024-2025学年新教材高中政治 第二单元 世界多极化 4.1 时代的主题教案 新人教版选择性必修1
- Unit 11 Trees (Period 1)(教学设计)-2024-2025学年沪教牛津版(深圳用)英语六年级上册
- 2024年汽车行业社媒营销趋势分析报告
- 国画课程设计报告
- 2024年四川省专利审查协作中心招聘笔高频考题难、易错点模拟试题(共500题)附带答案详解
- 竹子主题活动课程设计
- QC/T 242-2024汽车车轮静不平衡量要求及检测方法
- 肌肉注射操作并发症的预防及处理
- 人教新目标版英语八上Unit 3《Im more out-going than my sister》精美说课稿
评论
0/150
提交评论