草庐IT

FINS通讯

全部标签

CAN通讯配置及接收报文--学习笔记1~2

硬件设备STM32F103C8T6工控板、USB转TLL接口、TLL转CAN串口小板,继电器,降压模块,警示灯软件工具CANPro协议分析平台、CubeMX、MDK-ARM实现过程及功能基础功能:PC端通过CANPro设置报文,发出串口信号经过USB和串口小板转成CAN信号,在单片机上接收特定ID的报文,通过判断需要接收的首byte数据执行相应操作(LED亮)进阶功能:通过修改CAN_Filter完成对两种报文的筛选,并设计一个特定报文,选择执行两种报文命令,通过连接继电器和警示灯,更直观的表现出来选择效果。CubeMX的配置定义引脚根据板子的原理图来定义,这里CAN是PB8、PB9,LED是

I2C总线的通讯距离

关于I2C总线:I2C总线不适合远距离通信,尤其是使用线缆与接口器件进行通信时一般不选择I2C。使用I2C总线都是在用一个开发板上或者距离比较近,如果是远距离通信,比如说超过2米,这个时候对硬件就有特殊的要求了。①通信线缆小于0.2米,一般可以采用10K的上拉电阻,这个也是很多I2C芯片的说明书中推荐的上拉电阻。②通信线缆在0.2到2米之间,一般可以采用4.7k上拉电阻。③通信线缆在2米以上,一般可以采用1~2.2k上拉电阻。上拉电阻一般都接在SCL和SDA与VCC之间,如下图为MPU6050的上拉电阻接法。上拉电阻的范围一般在1K~10k之间,电阻过小,功耗比较大,而且容易烧毁I2C接口,而

UART串口通讯乱码分析

一:基础功能分析1:串口通讯乱码最主要的原因就是波特率不对,乱码的话请先检查波特率是否正确;2:波特率正确的条件下,请检查设备两端电压是否稳定,电压不稳也会导致乱码;3:当我们无法确认串口波特率的时候,可以参考下面的方式进行排查二:数据流程走向说明大部分的通讯设备中间都是要经过电平转换的,实际以所用设备为准;三:波特率获取分析1:PC端波特率是我们设定的,所以PC端波特率是已知,设备端波特率乱未知;2:数据中间经过了三次传输,所以在哪一步发生错乱吗,需要一步步排查;3:可以用逻辑分析仪,先不接设备,抓取每一步传输的波形如下如所示,就说明,已经提示数据出现异常,那我们就可以调整逻辑分析仪的波特率

Netty 教程 – 实现WebSocket通讯

WebSocketWebSocket协议是基于TCP的一种新的网络协议,它实现了浏览器与服务器全双工(full-duplex)通信,允许服务器主动发送信息给客户端优点及作用Http协议的弊端:Http协议为半双工协议。(半双工:同一时刻,数据只能在客户端和服务端一个方向上传输)Http协议冗长且繁琐易收到攻击,如长轮询非持久化协议WebSocket的特性:单一的TCP连接,采用全双工模式通信对代理、防火墙和路由器透明无头部信息和身份验证无安全开销通过ping/pong帧保持链路激活持久化协议,连接建立后,服务器可以主动传递消息给客户端,不再需要客户端轮询实现原理在实现Websocket连线过程

ESP32与PS4手柄的通讯

ESP32与PS4手柄的通讯(遥控小车)在我正式开始制作PS4手柄遥控ESP32的芯片之前,我尝试过PS2和手机蓝牙串口遥控,都成功进行通讯并且效果还算可以,但是PS2的手柄要配合一个接收器,占用我至少4个IO口。而手机方面我尝试用AppInventor写了个遥控程序,然后成功进行通讯,但是会有那么几下出现延时的可能,并且除非ESP32上面有摄像头,不然用手机遥控体验感可以说是瞎子摸象…PS4一、先说大坑大坑大坑!!我曾经在这里卡了一个月,花费无数,多次想直接放弃,但是最终还是完美解决了。具体问题:我按照曾经的成功案例和Bilibili上的分享以及Github上面的操作说明进行了我的尝试,结果

C#搭建WebSocket服务实现通讯

在学习使用websocket之前我们先了解一下websocket:WebSocket是一种在单个TCP连接上进行全双工通信的通信协议。与HTTP协议不同,它允许服务器主动向客户端发送数据,而不需要客户端明确地请求。这使得WebSocket非常适合需要实时或持续通信的应用程序,例如在线聊天、实时游戏、股票市场更新等。websocket介绍以下是WebSocket的一些关键特点:全双工通信:WebSocket允许客户端和服务器在同一时间内彼此发送数据,而不需要等待对方的响应。这种实时性使其成为许多实时应用程序的首选协议。持久连接:与HTTP请求-响应模型不同,WebSocket连接在客户端和服务器

objective-c - Xcode 7 (iOS 9) 通讯错误 : <OS_xpc_error: <error: 0x10a1abb40>

任何人都可以帮助我找出我在运行我的应用程序时遇到的以下错误吗?Communicationserror:{count=1,contents="XPCErrorDescription"=>{length=22,contents="Connectioninterrupted"}}> 最佳答案 如果您在iOS模拟器中运行您的应用程序,它使用XPCServicesAPI进行进程间通信,任何断点或其他中断都可能导致此类错误。可以引用这个AppleDoc在处理错误部分Interruptionhandler—calledwhentheprocess

uniapp小程序使用web-view承载的html页面是uniapp H5时,H5与小程序通讯

最近在小程序项目用到web-view,需要web-view承载的H5和小程序通讯,碰到个大坑,所以写一下实现过程及怎么避坑。一、小程序向web-view承载的H5传递参数,直接在url后接参数即可(xxxxx.com)二、H5向小程序发送消息在uniapp项目根目录创建模板html2、然后在模板html里引入微信SDK和uniSDK;注意,坑来了,uniapp官方提供的SDK链接是错的(坑了我半天),用这个:https://js.cdn.aliyun.dcloud.net.cn/dev/uni-app/uni.webview.1.5.2.js,模板html代码如下-->-->-->-->var

【2023】java通过modbus4j实现modus TCP通讯

Modbus通信协议:主要分为三个子协议RTUASCIITCPModbusRTU:——传输的是字节数组(bit[])通信:读写输出:可以读写输入:只能读存储区:输出线圈、输入线圈、输出寄存器、输入寄存器线圈:代表一个布尔量、最小单位是一个布尔(1或者0),寄存器:一个寄存器代表16个最小单位,主要用于存储数据存储区代号:输出线圈:0(代号)00001-09999(标准存储区地址范围)000001-065536(扩展存储区地址范围)输入线圈:110001-19999输出寄存器:440001-49999输入寄存器:330001-39999存储区范围:5位和6位5位:标准地址-YXXXX6位:扩展地

Web端即时通讯技术(SEE,webSocket)

目录背景简介个人见解被动推送轮询简介实现长轮询(comet)简介实现比较主动推送长连接(SSE)简介实现GETPOST效果webSocket简介WebSocket的工作原理:WebSocket的主要优点:WebSocket的主要缺点:实现用法一用法二效果比较参考背景服务端和客户端应该怎么通信才能实现客户端能获取服务端最新消息让用户有更好的交互体验,如果是正常的发送一个请求首先要建立TCP连接然后等到服务器返回,如果是开发者可以通过发包情况就能知道建立连接成功与否,是否是在等待服务器响应,但是做为非开发者的普通用户当他点击一个按钮却没有任何反应他会怀疑是不是没点到还是卡住了之类了。不是一直点就是