串口入门基础知识
文章平均质量分 64
SunkingYang
C++资深工程师,拥有12年C++开发经验。
期间从事Windows客户端及Linux服务端开发。客户端有ActiveX、MFC、QT,医疗虚拟与现实(Ogre、QT、OpenCV等),三维人脸识别。
拥有4年天网视频监控开发经验,包含ocx插件开发、国标解码库:软解码和硬解码开发等(Windows平台),2年雪亮工程国标服务开发经验,包含国标28181级联服务、国标流媒体等(Linux平台)。
展开
-
python开发SECS服务端
SECS是半导体制造中的一种通讯协议,是工厂自动化系统和半导体制造设备之间的标准通信协议。在Python中,我们可以使用第三方模块。函数中,我们启动了一个SECS服务端并持续运行,接受来自客户端的连接,并处理收到的SECS消息。方法中,我们可以添加更多的处理函数,以处理不同类型的SECS消息。来开发SECS服务端。方法来处理不同类型的SECS消息。在上面的示例中,我们定义了一个名为。原创 2023-12-04 17:18:53 · 474 阅读 · 0 评论 -
python开发SECS客户端
SECS(SEMI Equipment Communications Standard)是半导体设备间通信的标准,Python开发SECS客户端可以使用第三方库如SECS-II(https://github.com/m3team/secs2),PySECS5(https://github.com/jepler/pysecs5)等。以上代码示例中,创建了一个SECS-II消息对象并打包为Stream流发送到SECS主机,然后接收SECS主机的响应并解码为SECS-II消息对象,并从中获取回复数据。原创 2023-12-04 17:15:10 · 505 阅读 · 0 评论 -
C++调用GPIB驱动头文件ni488.h内容详细分拆解
总之,ni488.h是NI-488.2通信协议的一个C语言API库文件,提供了许多常量、变量、数据类型和函数等,方便程序员进行开发和编写控制/通信NI-488.2设备的程序。宏定义:定义了许多常量、变量和函数的宏,如NI488_VERSION、NI488_REN_ADDRESS、NI488_UNL_ADDRESS等。错误码定义:定义了一些错误码,用于标识函数执行过程中可能出现的错误,如NI488_ERR_IO、NI488_ERR_TIMEOUT等。原创 2023-11-29 09:36:08 · 730 阅读 · 0 评论 -
C++如何通过NI488调用驱动程序
NI488是NI公司生产的 GPIB(通用接口总线)控制器,使用GPIB进行设备控制。3.初始化NI488控制器,建议通过函数ibdev()来执行仪器的打开、初始化和关闭,简化编程过程。以上是通过C++调用NI488驱动程序的基本步骤和代码示例,具体操作还需要根据实际情况进行调整。1.下载安装NI488驱动程序,NI公司官网有提供下载链接,下载适合自己的驱动程序版本即可。4.使用NI488控制器进行通信操作,NI488库提供了各种读写、查询、控制等功能函数。5.最后,关闭NI488控制器。原创 2023-11-29 09:16:44 · 483 阅读 · 0 评论 -
串口使用系列学习之Windows上使用C++进行串口打开、读写、流控、关闭操作
在Windows上,要打开COM10以后的串口(包括COM10),串口名称不再是“COM10”,而是“\.\COM10”,因此在open函数中,如果是COM10及以后的串口,串口名(假设当前要打开COM10)应该写“\\.\COM10”,其中“\\.\”为“\.\”的转义。我们解决方案是进行流控设置,因为一般是由于读写未同步,导致缓冲区满后,数据写入异常。2、串口号大于10时,操作串口报异常。上修改,增加流控部分代码。1、获取串口数据异常;原创 2022-10-22 17:31:29 · 2924 阅读 · 0 评论 -
串口使用系列学习之C++如何进行流控
【代码】串口使用系列学习之C++如何进行流控。原创 2022-10-17 20:45:50 · 1334 阅读 · 2 评论 -
串口使用系列学习之什么是流控
在两个设备正常通信时,由于处理速度不同,就存在这样一个问题,有的快,有的慢,在某些情况下,就可能导致丢失数据的情况。如台式机与单片机之间的通讯,接收端数据缓冲区已满,则此时继续发送来的数据就会丢失。流控制能解决这个问题,当接收端数据处理不过来时,就发出“不再接收”的信号,发送端就停止发送,直到收到“可以继续发送”的信号再发送数据。因此流控制可以控制数据传输的进程,实现收发双方的速度匹配,防止数据的丢失。原创 2022-10-15 18:17:07 · 2236 阅读 · 0 评论 -
串口使用系列学习之什么是串口
RTS(请求发送)、CTS(允许发送)和 B端的 CD(载波检测)连在一起, 则说明 A一旦请求发送(RTS)将立即得到允许(CTS), 并使 B端检测到载波信号(CD)。从上面的流程可以看到,硬件流控制主要是 RTS /CTS和 DTR /DSR来控制,但是,人嘛,能懒就懒,因此现在很多时候都只是用 RTS /CTS告诉对方自己是否可以进行通讯,而直接跳过了 DTR /DSR的就绪状态检测。校验位是一个可选的数据位,紧跟在有效数据之后,用来校验,以防止因外部干扰而导致的传输偏差。原创 2022-10-15 16:15:55 · 2845 阅读 · 0 评论