简介:STM32与上位机之间用通信协议(自己定义)进行串口通信。
怎么判断上位机发过来的指令是正确的,而不是一串乱码?怎么从正确的指令中提取出想要的命令代号,从而实现想要的功能?方法:读取上位机发来的命令,逐位判断命令的包头和包尾,如果能对应上,则这串指令是正确的,然后从指令中提取想要的数据和命令等。
举个栗子:通信协议是自己定义的,不是modbus协议等。

如F05A 15 15251609021214 FF A5F0(都是16进制),F05A是包头,A5F0是包尾,黑色15是命令代号,中间蓝色是我想发的数据,橙色FF是校验位。
只要包头包尾校验正确,基本这串指令不会有问题。
2023/9/1 1:17:50 7.32MB STM32L0 串口中断接收 HAL库
1
以前发布过一个BAT转exe版本,很多杀毒软件报有病毒。
经过2个多月的努力终于完成了做为外行码家,肯定有不少BUG,欢迎大家提出交流。
功能很简单,除了更新屏蔽进程库,还增加了自定义屏蔽和解锁功能最新更新V2020.11.16完善了:2345系列FastWifi布丁压缩360浏览器万能看图新增加屏蔽软件:好看看图巧压轻压DelphinWiFi
2023/8/31 22:21:20 66KB 广告
1
飞思卡尔16位单片机,功能强劲,可以用于开发智能设备,MC9S12X是不错的选择额!
2023/8/31 5:26:43 2.49MB MC9S12X中文数据手册
1
byte[]dd={0x10,0x02,0x00,0x5C,0x5E,0x16};//serialPort1.Write(dd,0,dd.Length);axMSComm1.Output=dd;System.Threading.Thread.Sleep(100);stringq=q8+q7+q6+q5+q4+q3+q2+q1;intdataer=Convert.ToInt32(q,2);//二进制转十进制stringdatah=Convert.ToString(dataer,16);//十进制转十六进制while(datah.Length<2)datah="0"+datah;stringtemp="02007C320100000000000E00050501120A1002000100008200000000040008"+datah;intsum=0;for(inti=0;i<(temp.Length/2);i++)//求校验{intc=Convert.ToInt32(temp.Substring((i*2),2),16);sum=sum+c;}stringcheck=Convert.ToString(sum,16);stringcheckdata=check.Substring(check.Length-2,2);//校验和后两位//textBox1.Text=checkdata;checkdata=checkdata.ToUpper();temp="68202068"+temp+checkdata+"16";byte[]outdata3=newbyte[38];for(inti=0;i<(temp.Length/2);i++){outdata3[i]=Convert.ToByte((temp.Substring(i*2,2)),16);}//serialPort1.Write(outdata3,0,outdata3.Length);axMSComm1.Output=outdata3;
2023/8/29 15:31:55 1.28MB PLC通讯
1
本书高清PDF86M收集自网络,请在资源下载后24H内删除,著作权归原书作者。
如觉得图书非常有用,请自己购买纸质书籍。
Eclipse插件开发必备书籍,向作者致敬。
前言第1篇Eclipse起步篇第1章Eclipse概述第2章Eclipse安装与配置第3章Eclipse集成开发环境第4章EclipsecJava集成开发环境第5章Eclipse中CVS的团队开发第6章EclipsecJUnit工具第2篇Eclipse插件开发篇第7章初识Eclipse插件开发第8章重写HellocWorld模式第9章透视图第10章视图第11章编辑器第12章操作第13章对话框第14章其他扩展点第15章帮助第16章插件国际化第3篇EclipsecRCP开发篇第17章EclipsecRCP起步第18章解析模板生成RCP项目第19章菜单、工具栏、状态栏第20章透视图、视图、编辑器第21章RCP的其他用法第22章发布RCP产品第23章使用eFace进行RCP开发第4篇搭建常见的Eclipse开发环境篇第24章搭建EclipsecJEE开发环境第25章搭建EclipsecJME开发环境第26章搭建EclipsecRuby开发环境第5篇EclipsecRCP实战开发篇第27章RCP项目开发的前期准备第28章RCP项目的具体实施
2023/8/29 6:09:20 86.14MB Eclipse 插件
1
视频监控很重要的一个环节就是多屏切换了,这里主要实现的是1,2,4,8,16,32,64分屏的相互切换,最多是64分屏。
整体而言,在这个多分屏中,只要点击其中的一个屏幕,点击的屏幕便会覆盖整个屏幕然后再次双击,便能够复原。
2023/8/27 19:31:06 6.63MB 多屏分割
1
led点阵屏16*32包含从原理到电路设计、软件设计再到PCB设计、程序编写及电脑端下载软件设计(Visualbasic)。
整套完整资料包含完整毕业设计论文
2023/8/27 9:22:07 11.76MB led点阵屏 16*32 毕业设计
1
MC9S12G128完全手册,16位单片机family介绍
2023/8/23 20:01:44 4.43MB 手册
1
51单片机汇编IO音乐系列八音盒org0000hajmpmainorg000bhajmptimer0org0030htimer0:clreadjnz33h,exitmov33h,53hdjnz32h,exitmov32h,52hdjnz31h,exit1mov31h,51hdjnz30h,exit1setbf0ajmpexitexit1:cplp3.3exit:setbearetimain:movtmod,#02hmovie,#82hmovth0,#254movtl0,#254movdptr,#tabmain1:mov40h,#00hloop:clreamova,40hmovca,@a+dptrmov30h,amov50h,ainc40hmova,40hmovca,@a+dptrmov31h,amov51h,ainc40hmova,40hmovca,@a+dptrmov32h,amov52h,ainc40hmova,40hmovca,@a+dptrmov33h,amov53h,asetbeasetbtr0jnbf0,$clrf0inc40hmova,40hcjnea,#40,loopajmpmain1tab:;30h,31h,32h,33hdb2,25,24,16;lowfrequency
2023/8/22 7:41:42 1KB 51单片机 汇编 IO音乐系列 八音盒
1
最新微喜帖&微信请帖请柬网源码手机微喜帖+微信网页版请帖+ASP_ACCESS版很火的源码!感谢黑锐网群友的无私共享发布!这种精神,值得我们学习!前台测试:测试账号paterno密码heirui.cn后台:http://你的网址/fuckdogs.asp用户名admin密码www.heirui.cn**关于数据库修改密码:将源码包文件夹database下xf#$&1hd;.asa文件名修改成xf#$&1hd;.mdb然后用access软件打开。
找到并打开JE_Admin表,修改这2个字段密码是md5加密的(附MD5码在线查询破解网址)http://www.cmd5.com/到这里【输入你要修改的密码】复制16位MD5加密码到数据库中替换密码字段。
然后保存关闭修改xf#$&1hd;.mdb回xf#$&1hd;.asa上传至空间覆盖数据库!\截图演示:weiqingjianweiqingtie2收费会员免费会员贵宾帐号演示帐号【解释】免费会员是试用24小时收费会员贵宾帐号演示帐号—实际只是名字不同,权限一样!注册reg.asp登录login.asp
2023/8/21 21:02:45 17.39MB 微喜帖
1
共 1000 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡