背景: 最近在项目中遇到一个问题,追溯WIFI模块是否丢包的问题。因为丢包的环节很多。 我所有用到平台场景:主控(跑LWIP协议栈)+ SDIO wifi。 📷 在上面的场景中可能丢包的情况很多: wifi模块没有接收到网络报文(空中丢包)。 wifi模块没有发送网络报文成功(空中丢包)。 主控与wifi数据传输丢掉报文(SDIO传输丢包)。 在设备端如果通过串口打印查看丢包现象是非常麻烦的,网络报文很多,而且无法辨别是否丢包。 通过wireshark抓网络包,虽然可以清晰查看报文,但是无法判别wifi有没
本期给大家带来的开源项目是 ringbuff ,一款通用FIFO环形缓冲区实现的开源库,作者MaJerle,目前收获 79 个 star,遵循 MIT 开源许可协议。
本专栏由Mculover666创建,主要内容为寻找嵌入式领域内的优质开源项目,一是帮助开发者使用开源项目实现更多的功能,二是通过这些开源项目,学习大佬的代码及背后的实现思想,提升自己的代码水平,和其它专栏相比,本专栏的优势在于:
通过本次更新,H7-TOOL已经无限接近其完全体。 http://www.armbbs.cn/forum.php?mod=viewthread&tid=89934 1、H7-TOOL的Wi
Windows 开发环境: Windows 7 64bit 、Windows 10 64bit
上一篇文章已经打通了数据源之一的串口采集,这次要说的是网络采集,网络通信目前用的最多的是三种,TCP/UDP/HTTP,其中tcp通信又包括了客户端服务端两种,tcp通信才用了多次握手机制不丢包,但是耗费资源多而且需要建立连接。udp通信在大数据量或者网络不稳定的情况下,可能丢包,而且顺序无法保证,但是一个包的数据肯定是正确的,由于占用资源极少而且不需要建立连接,在很多场景中应用也蛮多,我个人用udp以来,也没发现过丢包的情况,可能数据量不够大或者是在局域网内的原因吧,反正用起来还是蛮爽的。http通信目前非常流行,尤其是和服务器之间做数据交互,基本上post请求然后返回一串json数据,解析对应的json数据即可。本次采用的TCP通信作为示例,其他两种可以自行拓展,也很简单的。
往期周报汇总地址:http://www.armbbs.cn/forum.php?mod=forumdisplay&fid=12&filter=typeid&typeid=104 在网上无意中看
关于速率,其实我们并没有系统性的测试,这里速率包含BLE ,和SPP两种速率区别很大
第一步:首先建立一个MFC工程,成功后会跳出一个对话框,直接在对话框上点击右键-》点击插入ACTIVAE控件-》选择MicrosoftCommunications Control, version 6.0
原版Marlin固件硬件平台基于arduino,采用C++类对串口操作函数函数进行了封装,代码注释中介绍了这些函数的功能。MarlinSerial.h文件中类的定义,此处的类只保留的框架结构,留存的这些函数基本上是要一直到STM32平台要实现的函数。
无论是从事单片机、ARM,还是FPGA、DSP开发,都离不开串口!而且在一些银行、金融、证券、电信、工控的应用场合,还可能需要在一台主机上同时使用几十路串口!
udp 数据包的理论长度是多少,合适的 udp 数据包应该是多少呢?
TS511系列采集终端是集数据采集与2G/3G/4G/5G数据传输功能于一体的环保数据采集终端,完全符合《污染物在线自动监控(监测)系统数据传输标准》(HJ 212-2017) 和(HJ 212-2005),可外接串口工业智能控制屏做数据显示和设置(用户自配智能串口屏幕),可对阀门、闸门、报警器等设备进行控制、可精准采集各种污染治理设备工作状态。支持定制第三方上位机通信协议。支持市电和太阳能供电。适用于环境和污染源在线监测设备监测数据的采集、存储和传输。
Hi,大家好。远程连接的实现方法有很多,概括地说有两种,一种是用系统自带的远程连接,另外一种是用第三方软件进行远程连接。今天分享6款非常好用的Linux远程连接工具,一起来看看吧。
在这个万物互联的时代,数据与数据之间的相互传输交流,显得尤为重要。那么要怎样才能使计算机与传统的物联设备相连接呢?这时,串口服务器这一媒介的作用就凸显出来了。那么,你知道什么是串口服务器吗?串口服务器该如何使用呢?今天,就由海翎光电的小编来为大家详细介绍下串口服务器。
队列 (Queue):是一种先进先出(First In First Out ,简称 FIFO)的线性表,只允许在一端插入(入队),在另一端进行删除(出队)。
背景 自Java语言流行以来,其主打的面向对象编程也成为了家喻户晓的一种程序设计思想: “封装、继承、多态”、“易维护、易复用、易扩展”,“解耦、隔离” 而以过程为中心的“面向过程编程”,通常会优先分析出解决问题所需的步骤,然后用函数依次实现这些步骤,最后串联起来依次调用即可,是一种基于顺序的思维方式。 常见的支持面向过程的编程语言有 C语言、COBOL 语言等,被广泛地应用在系统内核、IoT、物联网等领域。其中一个比较典型的案例是串口通信协议的集成开发(驱动、SDK),虽然大多数的Web应用都已经跨入了“
不可否认,目前工业现场仍然会有很多串口设备的存在,对于这些串口设备,如果想要联网,就必须要转换成网络接口,这时候就会用到全国产串口服务器。
Iperf3是一款基于TCP/IP和UDP/IP的网络性能测试工具,可以用来测量网络带宽和网络质量,提供网络延迟抖动、数据包丢失率、最大传输单元等统计信息。长时间运行iperf3测试可以检测网络连接的稳定性和性能表现,并帮助开发人员确定网络系统中的瓶颈和故障。
地址:百度网盘:https://pan.baidu.com/s/1fEYB4UmydQTxyeaJhaxPsA?pwd=iotg
最近工作中遇到某个服务器应用程序 UDP 丢包,在排查过程中查阅了很多资料,我在排查过程中基本都是通过使用 tcpdump 在出现问题的各个环节上进行抓包、分析在那个环节出现问题、针对性去排查解决问题,对症下药,最后终究能够解决问题。但是这种情况大多是因为服务本身的问题,如果是环境问题、操作系统、甚至硬件的问题,可能从服务本身出发不能解决问题,但是这篇文章另辟蹊径,从外部环境分析可能丢包的原因,看完之后,很受用,部分章节对原文有所修改,下面分享出来供更多人参考。
计讯物联TG511远程测控终端支持各种串口数据采集,如流量、压力、电表、液位等数采集传感器。支持模拟量、开关量数据采集及继电器输出控制。支持外接显示屏,可本地人工置数功能,方便本地数据查询及显示。
最近工作中遇到某个服务器应用程序 UDP 丢包,在排查过程中查阅了很多资料,总结出来这篇文章,供更多人参考。
netem 是 Linux 2.6 及以上内核版本提供的一个网络模拟功能模块。该功能模块可以用来在性能良好的局域网中,模拟出复杂的互联网传输性能,诸如低带宽、传输延迟、丢包等等情况。使用 Linux 2.6 (或以上) 版本内核的很多发行版 Linux 都开启了该内核功能,比如Fedora、Ubuntu、Redhat、OpenSuse、CentOS、Debian等等。
串口驱动不简单,在实际工作中,往往串口驱动框架的设计都是需要考虑的非常清楚的,特别是实际的项目中。比如基于串口模块功能的协议开发,以及基于串口模块的网络数据收发等等,都是一些值得好好设计和思考的问题。本文目的是总结一下目前我见到过的常用的几种模型,并且对这些设计提出自己的一些想法。
【概要】SDN功能测试工具通过发送协议数据包并根据被测试对象的反馈来判断其功能的完整性,比较典型的工具是OFTest,它模拟控制器向交换机发送OpenFlow协议从而达到测试OpenFlow交换机的目的。 1 工具简介 OFTest是一个基于Python的测试OpenFlow规范的框架和测试套件,它支持1.0/1.2/1.3版本的OpenFlow协议。在测试环境中OFTest相当于一个控制器,它可以主动或者被动与交换机连接,获取交换机信息来测试OF交换机基本功能。 ……(实验过程) 结束语 由此可见OFTe
在 Linux 系统下,丢包是一个较为常见的问题。由于丢包导致的网络问题可能会给用户带来不好的体验,因此解决 Linux 网络丢包问题是必不可少的。本文将介绍如何在 Linux 系统下进行网络丢包排查。
HD-RK3568-IOT 底板基于HD-RK3568-CORE工业级核心板设计(双网口、双CAN、
我们其实经常会遇到,如果没有网络,怎么么登录树莓派呢,可以使用串口登录 我们分别来讲下在windows 平台下和linux平台下通过串口登录树莓派 首先将树莓派的串口使用TTL转RS232接到电脑的串
RXTX 的下载可以到官网或者Fizzed,官网发现并没有64位的支持,但是在Fizzed中找到的2.2版的64,32的windows和Linux版本http://fizzed.com/oss/rxtx-for-java 1.windows下的串口调试 将rxtxParallel.dll、rxtxSerial.dll拷贝到%JAVA_HOME%安装目录bin目录下 将rxtxParallel.dll、rxtxSerial.dll拷贝到%JAVA_HOME%安装目录jre/bin目录下(eclipse开发时调用,减少麻烦) 将RXTXcomm.jar 拷贝到%JAVA_HOME%\jre\lib\ext\RXTXcomm.jar(开发时直接导入) 2.Linux下的串口调试 首先确定Linux处理器型号,对应选择RXTX的Linux版本。 如处理器为i386,则将Linux i686版本中的两个os文件复制到系统%JAVA_HOME%/jre/lib/i386(即JDK目录中的系统文件夹) 将RXTXcomm.jar拷贝到%JAVA_HOME%/jre/lib/ext文件夹 代码不变,即可运行使用。 在实际开发中,由于使用树莓派测试,树莓派使用Raspbian系统(使用uname -a命令可查看系统内核信息) Linux raspberrypi 3.12.28+ #709 PREEMPT Mon Sep 8 15:28:00 BST 2014 armv6l GNU/Linux 处理器型号armv6l,在下载的RXTX工具包中并无此种系统版本,在实际测试中,所找到的RXTX工具包也都不能使程序运行,均报出系统位数不符。
RXTX 的下载可以到官网或者Fizzed,官网发现并没有64位的支持,但是在Fizzed中找到的2.2版的64,32的windows和Linux版本http://fizzed.com/oss/rxtx-for-java 1.windows下的串口调试 将rxtxParallel.dll、rxtxSerial.dll拷贝到%JAVA_HOME%安装目录bin目录下 将rxtxParallel.dll、rxtxSerial.dll拷贝到%JAVA_HOME%安装目录jre/bin目录下(eclipse开发时调
RXTX 的下载可以到官网或者Fizzed,官网发现并没有64位的支持,但是在Fizzed中找到的2.2版的64,32的windows和Linux版本http://fizzed.com/oss/rxtx-for-java
minicom minicom 是一款启动速度快,功能强大的串口终端调试工具,当然缺点就是纯字符界面,没有图形界面的调试工具看起来直观方便,但是它功能十分强大,并且在一些没有屏幕的嵌入式主板上运行颇有用处。 cutecom Linux系统可视化串口应用软件,使用上与Windows系统串口调试工具。 picocom 效果上类似 minicom 的精简版,设置比较简单,还可以有背景颜色。
串口是我们实际工作中经常使用的一个接口,比如我们在Linux下使用的debug串口,它用来登录Linux系统,输出log。另外我们也会使用串口和外部的一些模块通信,比如GPS模块、RS485等。这里对Linux下串口使用做个总结,希望对大家有所帮助。
在《深入解析常见三次握手异常》 这一文中,我们讨论到如果发生连接队列溢出而丢包的话,会导致连接耗时会上涨很多。那如何判断一台服务器当前是否有半/全连接队列溢出丢包发生呢?
有很多新手朋友在买来服务器之后不知道自己的服务器到底好不好,有时候快有时候又慢得令人发指;或者刚买来的时候速度不错,用久了却越用越卡;又或者总是间歇性的抽风。
方案:3个核(Linux或Debian) + 1个核(RT-Thread) Debian-AMP工程
基于「丢包反馈」的协议是一种 被动式 的拥塞控制机制,其依据网络中的 丢包事件 来做网络拥塞判断。即便网络中的负载很高时,只要没有产生拥塞丢包,协议就不会主动降低自己的发送速度。
可以对串口发送数据比如对com1口,echo /dev/ttyS0 2、查看串口名称使用
本文链接 想象一个世界,你可以在那写javascript来控制搅拌机,灯,安全系统或者甚至是机器人。是的,我说的是机器人。那个世界就是这儿,现在使用node serialport。它提供一个非常简单的接口所需要的串口程序代码Arduino 单片机, X10 无线通信模块, 或者甚至是上升到 Z-Wave 和Zigbee . 在这个物理世界,你可以随心所欲(The physical world is your oyster with this goodie.)。想完全了解为什么我们做这个,请阅读NodeBots - The Rise of JS Robotics.
SecureCRT是一款支持SSH的终端仿真程序,同时支持Telnet和rlogin协议等, 之前在Windows用过一段时间,之后切换到Linux平台,minicom替代了SecureCRT, minicom的功能太弱了. 无意中浏览官网,发现支持linux版本,果断回归.
鸿蒙是一套完整的、普通人可以直接使用的操作系统,跟Windows、安卓、IOS类似。
写在前面:目前经过测试TX2上是带有串口通讯驱动的,我们只需要设置一下即可。本次主要讲解如何使用USB转RS232的串口通讯。
由于EasyNVR视频平台分为软件版本和硬件版本的智能云终端,因此用户可以根据自身需求选择。根据某位用户的要求,需要在EasyNVR智能云终端中增加控制矩阵功能,因此我们在EasyNVR硬件内测试通过串口通信控制矩阵,但是在打开串口时遇到报错serial.Open: invalid values for InterCharacterTimeout and MinimumReadSize。
众所周知,JZ2440 V2很小巧,精致。今天单就JZ2440的串口来讨论一些问题。我们在用串口进行调试的时候,需要用JZ2440自带的一根USB线连接电脑USB口和开发板的USB-com1口。先来看一下JZ2440的串口大致连接图:
通过引用serial模块包,来操作串口。 1、查看串口名称 在Linux和Windows中,串口的名字规则不太一样。 需要事先查看。 Linux下的查看串口命令 root@D2:~# ls -l /dev/ttyS* crw-rw---- 1 root dialout 4, 64 Dec 26 06:53 /dev/ttyS0 crw-rw---- 1 root dialout 4, 65 Dec 26 06:41 /dev/ttyS1 crw--w---- 1 root tty 4, 66 Dec
鸿蒙是一套完整的、普通人可以直接使用的操作系统,跟Windows、安卓、IOS类似。 常见的错误观点是把鸿蒙跟Linux放在一起来对比,这不对:
介绍:从事电气自动化行业,多次获得物联网设计竞赛,爱好嵌入式设计开发,物联网开发。
领取专属 10元无门槛券
手把手带您无忧上云