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

网站开发服务费记账山东建设厅科技处网站

网站开发服务费记账,山东建设厅科技处网站,什么叫做网站维护,wordpress 店铺插件1、SerialPortHelper「Android串口通信」介绍原项目地址https://github.com/freyskill/SerialPortHelperAndroid串口通讯助手可以用于需要使用串口通信的Android外设#xff0c;该库有如下特点#xff1a;1、串口通信部分使用C实现#xff0c;在笔者接触的部分设备上实测该库有如下特点1、串口通信部分使用C实现在笔者接触的部分设备上实测使用C实现与Google官方提供的Demo的方式要快2、支持且必须设置串口接收最大数据长度初始化库时填入该参数这样设置的原因是考虑在实际使用中规定的串口通信协议格式一般会固定有最大长度方便对数据进行处理3、支持命令一发一收通过对串口的读写线程进行同步控制命令会先加入到队列然后依次发送和接收前提需要设置超时时间以及超时处理参考下面第4、5点4、支持超时设置设置超时时间后如果命令在设置的时间内未反馈则会根据设置的操作进行重发或退出该命令5、支持超时重发可以N次重发具体按需设置与退出退出会调用接收回调的 onComplete 方法。2、运行apk演示使用该库简单实现的串口调试助手工具原来作者编译的版本有点问题点击发送的时候会死掉我重新修改了一份大家在使用的时候如果有什么问题可以提出来。使用界面串口apk使用界面数据收发界面3、Apk 下载地址APK下载-SerialPortHelperV1.0.1-20201225.apkhttps://github.com/freyskill/SerialPortHelper/blob/master/SerialPortHelperV1.0.1.apk如果github下载比较慢可以关注公众号「嵌入式Linux」,回复「serial」获取下载链接。4、软件接入方式Step 1. Add the JitPack repository to your build fileAdd it in your root build.gradle at the end of repositories:allprojects {repositories {...maven { url https://www.jitpack.io }} } Step 2. Add the dependencydependencies {implementation com.github.freyskill:SerialPortHelper:v1.0.1 } 5、使用说明初始化需要设置maxSize也可以设置isReceiveMaxSize该参数默认为false详细说明如下int maxSize;  // 设置串口读取的最大数据长度boolean isReceiveMaxSize; // 设置是否接收命令按最大长度进行返回比如串口协议定义的格式长度为16个字节这样可以设置maxSize为16然后设置该参数为true则接收的命令就会返回16个字节的长度。提示 设置isReceiveMaxSize为true是为了处理命令返回不完整的情况例如完整命令长度为16但是串口读的过程分几次返回。SerialPortHelper serialPortHelper  new SerialPortHelper(32); SerialPortHelper serialPortHelper  new SerialPortHelper(32,true); 5.1.初始化串口//方式一快速接入方式设置好串口地址或者地址和波特率即可数据位、停止位、校验类型分别默认为8、1、N。 SerialPortHelper serialPortHelper  new SerialPortHelper(32); //serialPortHelper.openDevice(dev/ttyS0); serialPortHelper.openDevice(dev/ttyS0,11520); // 数据接收回调 serialPortHelper.setSphResultCallback(new SphResultCallback() {Overridepublic void onSendData(SphCmdEntity sendCom) {Log.d(TAG, 发送命令  sendCom.commandsHex);}Overridepublic void onReceiveData(SphCmdEntity data) {Log.d(TAG, 收到命令  data.commandsHex);}Overridepublic void onComplete() {Log.d(TAG, 完成);}}); //方式二通过SerialPortConfig设置相关串口参数//串口参数 SerialPortConfig serialPortConfig  new SerialPortConfig(); serialPortConfig.mode  0;            // 是否使用原始模式(Raw Mode)方式来通讯 serialPortConfig.path  path;         // 串口地址 serialPortConfig.baudRate  baudRate; // 波特率 serialPortConfig.dataBits  dataBits; // 数据位 取值 位 7或 8 serialPortConfig.parity    checkBits;// 检验类型 取值 N ,E, O serialPortConfig.stopBits  stopBits; // 停止位 取值 1 或者 2// 初始化串口 serialPortHelper  new SerialPortHelper(16); // 设置串口参数 serialPortHelper.setConfigInfo(serialPortConfig); // 开启串口 isOpen  serialPortHelper.openDevice(); if(!isOpen){Toast.makeText(this,串口打开失败,Toast.LENGTH_LONG).show(); } // 数据接收回调 serialPortHelper.setSphResultCallback(new SphResultCallback() {Overridepublic void onSendData(SphCmdEntity sendCom) {Log.d(TAG, 发送命令  sendCom.commandsHex);}Overridepublic void onReceiveData(SphCmdEntity data) {Log.d(TAG, 收到命令  data.commandsHex);}Overridepublic void onComplete() {Log.d(TAG, 完成);} }); 5.2.数据发送与接收// 发送数据 serialPortHelper.addCommands(sendHexTxt);   // 发送十六进制字符串 serialPortHelper.addCommands(sendComBytes); // 发送字节数组// 发送数据实体 SphCmdEntity comEntry  new SphCmdEntity(); comEntry.commands  commands; // 发送命令字节数组 comEntry.flag  flag;         // 备用标识 comEntry.commandsHex  DataConversion.encodeHexString(commands);  // 发送十六进制字符串 comEntry.timeOut  100;       // 超时时间 ms comEntry.reWriteCom  false;  // 超时是否重发 默认false comEntry.reWriteTimes  5;    // 重发次数  comEntry.receiveCount  1;    // 接收数据条数默认为1 serialPortHelper.addCommands(comEntry); // 数据接收回调 serialPortHelper.setSphResultCallback(new SphResultCallback() {Overridepublic void onSendData(SphCmdEntity sendCom) {Log.d(TAG, 发送命令  sendCom.commandsHex);}Overridepublic void onReceiveData(SphCmdEntity data) {// 对于接受数据的SphCmdEntity其中需要使用的有 // commandsHex 返回的十六进制数据// commands    返回的字节数组// flag        备用标识例如标识该命令是相关操作Log.d(TAG, 收到命令  data.commandsHex);}Overridepublic void onComplete() {Log.d(TAG, 完成);} }); 5.3、关闭串口serialPortHelper.closeDevice(); 6、常见问题6.1、串口打开失败一般情况就是设备节点的权限不正确可以使用命令查看串口的设备节点权限。7、修改记录20201225-修改在原来的基础上简化了界面把没有需要用的东西给干掉。20201211-修改基础代码和仓库是原来作者的但是原来的代码经常挂掉代码上做了一些修改。后续会有更多的修改。推荐阅读专辑|Linux文章汇总专辑|程序人生专辑|C语言我的知识小密圈
http://www.pierceye.com/news/162939/

相关文章:

  • h5企业模板网站模板江苏专业网站建设公司电话
  • 手机网站建设怎么样企业官网建设的重要性
  • 笑话小网站模板html网站制作标准
  • 大连网站建设哪家专业图片识别搜索引擎
  • 营销网站制作企业邓州市建设局网站
  • 如何从客户网站开发客户请解释网站开发的主要流程.
  • 做网站的价格 外贸最好科技广州网站建设
  • 烟台开发区网站做网站诊断步骤
  • 成都网站建设哪家技术好关于做网站的搞笑段子
  • 网站的设计制作流程计算机网站开发要考什么证
  • 个人域名 公司网站百度推广和网站建设
  • 哪里有做网站服务抖音开放平台是什么
  • 公司网站上传不了图片建设网站条件
  • 精美公司网站源码婚礼策划网站设计
  • 线上设计师网站网络维护是什么意思
  • 培训网站建设阿里云如何建设网站
  • 手机网站列表模板做一钓鱼网站吗
  • 太原网站建设方案策划请问有重庆有做网站吗
  • 网站备案购买语音网站怎么做
  • ftp上传文件到网站深圳成品网站超市
  • 网站开发时app打开很慢建设网站还要云服务器吗
  • 网站设计方案应该怎么做网站自适应开发
  • 徐州手机网站设计青龙县建设局网站
  • 罗湖网站建设费用帮忙做文档的网站
  • 如何在720云网站做全景视频域名注册网站查询工具
  • 网站定制开发流程和功能wordpress怎么看访问
  • 浙江省互联网建设网站python开发手机网站开发
  • 做网站需要多少钱一年动漫制作技术是学什么
  • 刘洋网站建设 够完美保卫处网站建设
  • 个人怎么申请营业执照北京朝阳区优化