当前位置: 首页 > news >正文

营销网站费用长春微网站

营销网站费用,长春微网站,佛山网站建设联系电话,桂林象鼻山的由来一、前言 目的#xff1a;借助虚拟串口软件#xff08;VSPD#xff09;模拟硬件串口发送数据#xff0c;使用PHP语言实现接收硬件发送的数据。 我这里的需求是连接天平#xff0c;把天平的称量数据实时的传送到PHP使用。 使用工具#xff1a;vspd串口调试工具 使用语…一、前言 目的借助虚拟串口软件VSPD模拟硬件串口发送数据使用PHP语言实现接收硬件发送的数据。 我这里的需求是连接天平把天平的称量数据实时的传送到PHP使用。 使用工具vspd串口调试工具 使用语言PHP 二、效果图 三、准备 1、虚拟串口软件 使用到的工具有VSPD和串口调试工具其中VSPD是模拟硬件串口串口调试工具是模拟硬件发送数据两者配合使用工具已打包可直接下载使用vspd串口调试工具 2、安装PHP扩展 下载并安装dio扩展下载地址PECL :: Package :: dio 0.2.0 for Windows注意要与使用的PHP版本保持一致下载后将php_dio.dll文件拷贝到/Extensions/php/php7.0.9nts/ext/目录下再打开php.ini删除掉“extensiondio”前面的分号如果没有则直接添加即可最后重启Apache 四、VSPD和串口调试工具使用 1、VSPD VSPD可通过上面链接下载下载解压后直接运行vspd.exe按提示安装即可。 安装成功后在右侧添加端口注意端口是成对添加或删除的两个端口可以互相收发数据。端口添加成功后打开电脑“设备管理器”中的端口就可以看到新添加的两个端口。 2、串口调试工具 无需安装直接运行文件夹里的exe文件即可在左侧设置好参数串口号、波特率、数据位、停止位等这些一般由设备供应商提供。最后点击“打开串口”按钮。 3、测试串口是否可以互相收发数据 再打开一次串口调试工具选择串口COM4注意必须是再VSPD里添加的串口组对之间才能互相通信互相发送、接收数据设置波特率等参数与COM3一致在右侧下面的发送数据区输入数据点击发送则在COM3端口就会收到发送的数据同样在COM3的发送数据区输入数据则在COM4的接收数据区也可以接收到数据两个是互相的。 如果能互相收发数据表示两个端口是正常的。 五、PHP实时接收COM串口的数据 后端实现逻辑 1、使用php_dio扩展读取串口传送来的数据 2、设置参数com4、baud、data、stop参数要与上传串口调试工具上的参数一致 3、开始连接串口并循环读取数据以获得实时变化的数据 4、关闭串口 5、下面代码较为简单要考虑更多会出现错误的情况比如说com端口连接失败的情况读取数据为空时的情况等 5、apiResponse()是自己写的一个返回json格式的函数 前端实现逻辑 1、使用定时器轮询请求结接口并把返回的数据实时的更新到input上 2、定义全局变量change用来标识新请求回来的数据是否和上次一致即串口传送的数据是否发生变化 3、定义全局变量flag用来标识数据未发生变化时请求的次数 4、其实第一步已经实时获取到了串口发送的数据如果没有特殊的后续操作第2和3步可以不用。因为我这里的需求是接收天平的实时数据当天平数据稳定时说明天平上没有再添加重量所以加了这两步用来触发其他事件比如说如果连续5次请求数据都没有发送变化即flag5时此时就可以判定天平上的重量没有发生变化就可以进行后续操作了。 PHP代码 /**前端显示页面 */ public function index(){return $this-fetch(); }/*** 读取天平数据 前端通过ajax请求以获取实时数据*/ public function getCom(){//定义com口 接收端口 COM3发送则COM4位接收反之亦然baud 波特率 data 数据位 stop 停止位 由供应商提供$comCOM4; $baud 9600; $data8; $stop 1;set_time_limit(0);exec(mode .$com.: baud.$baud. data.$data. stop.$stop. parityn xonon,$output);//打开串口 O_RDWR读写模式 O_RDONLY只读$ck dio_open($com . :, O_RDWR);//如果打开串口失败停止脚本并输出“打开串口COM3失败”if(!$ck){return apiResponse(110,打开串口 . $com . 失败);}//读取串口数据//读取长度$len 80;//当数据为空时do{// 读取串口数据并将读取到的数据赋给变量$shuju$shuju dio_read($ck,$len);}while($shuju null);// 获取浮点值并反转 如果传过来的数据为83.100我们需要的正确的数据是1.38// $shuju floatval(strrev($shuju));// 关闭串口dio_close($ck);//读取发送串口的数据return apiResponse(200,success,$shuju);} 前端代码 html headtitle实施接收COM串口数据/titlescript typetext/javascript src/static/index/js/jquery-1.11.3.min.js /scriptscript typetext/javascript src/static/index/layui/layui.js/scriptlink relstylesheet typetext/css href/static/index/layui/css/layui.css /head bodyfieldset classlayui-elem-field layui-field-title stylemargin-top: 20px;legend实施接收COM串口数据/legend/fieldsetform classlayui-form layui-form-pane action stylewidth:60%; margin: 0 auto;div classlayui-form-item div classlayui-block label classlayui-form-labelCOM数据/labeldiv classlayui-input-block input typetext namedata autocompleteoff classlayui-input value/div/div/divdiv classlayui-form-item style padding: 10px; background-color: #F2F2F2; div classlayui-carddiv classlayui-card-header stylefont-size: 18px与上一次是否发送变化/divdiv classlayui-card-body idresult stylefont-size: 16px/div/div/div /form/bodyscriptlayui.use([form,element], function(){var form layui.form,$ layui.jquery,element layui.element;// setTimeout(getCom, 1000);$(document).ready(function(){c setInterval(getCom,1500); //每1.5秒执行一次});// 记录数据是否发生变化var change 0;// 记录未发生变化次数var flag 0;function getCom() {$.ajax({url:getCom,type:GET,dataType:JSON,success:function (res) {console.log(res)if (res.code 200) {$(#result).empty();var html $(input[namedata]).val(res.data)if (change res.data) {// 未发生变化flaghtml span stylecolor:green未发生变化:flag/span}else{// 发生了变化flag 0 //数据发生变化后重置变化次数change res.datahtml span stylecolor:red发生了变化/span}$(#result).append(html)}else{layer.msg(res.data)}}})} })/script /html
http://www.eeditor.cn/news/123787/

相关文章:

  • 医药做网站seo培训优化课程
  • 一键网站制作安徽专业网站建设设计
  • 宣武成都网站建设基于html5的网站建设论文
  • 微信网站特征建设一个淘宝客网站
  • 企业如何申请网站网站建设购买模板
  • 哪个网站微博做的最好wordpress怎样更改文章阅读次数
  • 集约化网站建设的核心烟台网站排行榜
  • 外贸网站推广平台有哪些多姿wordpress
  • 青岛网站定制多少钱6度建筑人才网
  • 做app需要先做网站吗微商软文大全
  • 怎样创建网站快捷方式学完网站建设再可以学什么
  • 最超值的锦州网站建设万网虚拟主机wordpress
  • 学校资源网站建设方案免费开发微信小程序的平台
  • 莱芜百度网站建设本地服务器怎么做网站
  • 邯郸现代建设集团网站网站建设 动态添加内容
  • 成都建设官方网站南宁做棋牌网站的公司
  • 做水果网站首页的图片素材金诚财富网站是谁做的
  • 网站建设四个步骤把自己的网站卖给别人后对方做违法吗
  • 怎么做国外的网站推广网站建设企业济南
  • 深圳营销网站关键字有哪些
  • 希尔顿酒店网站建设的优点在线做简历的网站
  • 网站建设项目报价单wordpress 图加载中
  • 网站设计与开发范本手机ui界面设计
  • 建门户网站哪家最好苏州网站建设数据网络
  • 天津实体店网站建设网站标题收录
  • 桂林网站制作多少钱建设制作外贸网站的公司
  • 改行做网站十六局门户网
  • 如何dns解析网站wordpress在评论框中加文字
  • 网站建设基础百度百科专业建设网站公司排名
  • app使用什么做的网站接私活 做网站