目录
一、前言
上篇文章写到PHP怎么与硬件串口交互之实时接收硬件发送的数据,这里同样是以天平为例,介绍怎么向硬件设备发送数据,
需求:向硬件发送指令等数据,同时能够再次接收到硬件发送回来的信息
【PHP】PHP实现与硬件串口交互,接收硬件发送的实时数据(上)_php串口通信-CSDN博客
二、 效果图
每隔1.5s发送一次数据(右侧),再每个1.5s接收一次数据(左侧)
三、安装PHP扩展
下载并安装dio扩展,下载地址PECL :: Package :: dio 0.2.0 for Windows,注意要与使用的PHP版本保持一致,下载后将php_dio.dll文件拷贝到/Extensions/php/php7.0.9nts/ext/目录下,再打开php.ini,删除掉“extension=dio”前面的分号,如果没有则直接添加即可,最后重启Apache
四、添加模拟串口
使用“VSPD”添加两个模拟串口,详细可参看“【PHP】PHP实现与硬件串口交互,接收硬件发送的实时数据(上)_php串口通信-CSDN博客”
五、PHP发送数据给硬件
后端逻辑:
1、接收前端发送的数据
2、设置参数:com4、baud、data、stop,参数要与上传串口调试工具上的参数一致
3、打开串口,并发送数据
前端逻辑:
1、设置定时器,每1.5s自动发送一次数据
2、计算发送次数
PHP代码
/**
* 发送数据 页面
*/
public function put()
{
return $this->fetch();
}
/**
* 发送指令
* com8接收端
*/
public function putCom(){
$in = input('post.data');
$end = '\r\n'; //结束符
//定义com接收端口 baud 波特率 data 数据位 stop 停止位 由供应商提供
$com='COM8'; $baud = '9600'; $data='8'; $stop = '1';
set_time_limit(0);
exec('mode '.$com.': baud='.$baud.' data='.$data.' stop='.$stop.' parity=n xon=on',$output);
//打开串口 O_RDWR读写模式 O_RDONLY只读
$ck = @fopen($com, 'w+');
//如果打开串口失败,停止脚本,并输出“打开串口COM3失败”
if(!$ck){
return apiResponse('110',"打开串口" . $com . "失败");
}
//向串口发送数据;
fwrite($ck, $in);
//关闭端口
fclose($ck);
return apiResponse('200','success');
}
前端代码
<html>
<head>
<title>实时发送COM串口数据</title>
<script type="text/javascript" src="/static/index/js/jquery-1.11.3.min.js" ></script>
<script type="text/javascript" src="/static/index/layui/layui.js"></script>
<link rel="stylesheet" type="text/css" href="/static/index/layui/css/layui.css">
</head>
<body>
<fieldset class="layui-elem-field layui-field-title" style="margin-top: 20px;">
<legend>实时发送COM串口数据</legend>
</fieldset>
**自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。**
**深知大多数嵌入式工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!**
**因此收集整理了一份《2024年嵌入式&物联网开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。**
![img](https://img-blog.csdnimg.cn/img_convert/54eec41904c43f32f4a19bb4d73f9f5c.png)
![img](https://img-blog.csdnimg.cn/img_convert/258ac1306b8984f24d4aa05c2b20723f.jpeg)
![img](https://img-blog.csdnimg.cn/img_convert/4605cdbaf2eb9425ca670f1b4f383be5.png)
**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上嵌入式&物联网开发知识点,真正体系化!**
![img](https://img-blog.csdnimg.cn/img_convert/4d7d708e26339b667fe77b2c460647c0.png)
![img](https://img-blog.csdnimg.cn/img_convert/1e836b597c47f4497118272d6bd4d932.png)
**由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新**
**如果你觉得这些内容对你有帮助,可以+V:Vip1104z获取!!! (备注:嵌入式)**
<img src="https://img-community.csdnimg.cn/images/73bb5de17851459088c6af944156ee24.jpg" alt="img" style="zoom: 67%;" />
# 最后
**资料整理不易,觉得有帮助的朋友可以帮忙点赞分享支持一下小编~**
**你的支持,我的动力;祝各位前程似锦,offer不断,步步高升!!!**
s://img-community.csdnimg.cn/images/73bb5de17851459088c6af944156ee24.jpg" alt="img" style="zoom: 67%;" />
# 最后
**资料整理不易,觉得有帮助的朋友可以帮忙点赞分享支持一下小编~**
**你的支持,我的动力;祝各位前程似锦,offer不断,步步高升!!!**
**[更多资料点击此处获qu!!](https://bbs.csdn.net/topics/618376385)**