首页> 厦门阿米控技术有限公司> 产品展示> 57520001G2卡件

最后更新时间: 2023/9/27 3:10:16

价格 电议
发货地 福建-厦门
型号 57520001-G2
总量 -
最小起订量 -

手机扫码查看

询价

询价

您当前询价的产品是:

57520001G2卡件

*询价内容:
*联系人:
先生 女士
*联系电话:

*验证码:       看不清,刷新

57520001G2卡件

1.多线程技术及在VC++串口通信程序中的实现

  在Windows的一个进程内,包含一个或多个线程,每个线程共享所有的进程资源,包括打开的文件、信号标识及动态分配的内存等等。

  一个进程内的所有线程使用同一个32位地址空间,而这些线程的执行由系统调度程序控制,调度程序决定哪个线程可执行和什么时候执行线程。线程有优先级别,优先权较低的线程必须等到优先权较高的线程执行完任务后再执行。在多处理器的机器上,调度程序可以把多个线程放到不同的处理器上运行,这样可以使处理器的任务平衡,也提高系统的运行效率。

  Windows内部的抢先调度程序在活动的线程之间分配CPU时间,Windows区分两种不同类型的线程,一种是用户界面线程(UserInterfaceThread),它包含消息循环或消息泵,用于处理接收到的消息;另一种是工作线程(WorkThread)它没有消息循环,用于执行后台任务、监视串口事件的线程即为工作线程。

  本系统采用MFC编程方法,MFC是把串口作为文件设备来处理的,它用CreateFile()打开串口,并获得一个串口句柄,用SetCommState()进行端口配置,包括缓冲区设置,超时设置和数据格式等。然后调用函数ReadFile()和WriteFile()进行数据的读写,用WaitForSingleObject()监视通信事件。在用ReadFile()和WriteFile()读写串口时,一般采用重叠方式。因为同步I/O方式是当程序执行完毕才返回,这样会阻塞其他线程,降低程序执行效率。而重叠方式能使调用的函数立即返回,I/O操作在后台进行,这样线程就可以处理其他事务,同时也实现了线程在同一串口句柄上实现读写操作。

  使用重叠I/O方式时,线程要创建OVERLAPPED结构供读写函数使用,该结构**重要的成员是hEvent事件句柄。它将作为线程的同步对象使用,读写函数完成时hEvent处于有信号状态,表示可进行读写操作;读写函数未完成时,hEvent被置为无信号。

  利用Windows的多线程技术,在辅助线程中监视串口,有数据到达时依靠事件驱动,读入数据并向主线程报告;并且,依靠重叠读写操作,让串口读写操作在后台运行。

  2.上位计算机通信程序设计

  以读取PLC输出线圈Y0为首的2个字节的数据为例,编写一个通信程序。查PLC软元件地址表可知,输出线圈Y0的首地址为00A0H,2个字节的数据即为Y0-Y7和Y10-Y17,根据返回的数据,就可以知道PLC此时的状态,以实现对PLC的监控。在每一次读操作之前,先要进行握手联络。对PLC发请求讯号ENQ,然后读PLC的响应讯号。如果读到的响应讯号为ACK,则表示PLC已准备就绪,等待接收通讯数据。


联系方式

徐亚婷

18020776785

厦门阿米控技术有限公司

电话:86-0592-5087595

邮箱:2851195472@qq.com

网址:https://amikon0026.jqw.com/

地址:厦门市思明区湖滨南路388号32D之六

供应商信息

厦门阿米控技术有限公司

厦门市思明区湖滨南路388号32D一:公司简介:厦门阿米控技术有限公司是一家从事品牌(DCS系统)(机器人系统)(大型伺服控制系统)模块 备件销售,公司产品内容为分布式控制系统(DCS) 、可编程序控制器(PLC)、 MOTORO......
查看更多
企业类型 有限责任公司 经营模式 -
注册资本 0万人民币 员工人数 -
企业注册地 福建-厦门 经营方向 销售
成立时间 2018 主营行业 电工电气-工控系统及装备-PLC
主要经营地点 厦门市思明区湖滨南路 388 号 32D 之六
主营产品或服务 BENTLY,艾默生,飞利浦

57520001G2卡件相关产品推荐

内容声明: 金泉网为第三方互联网信息服务提供者,金泉网平台内所展现的商品及服务的标题、价格、详情等信息内容均为商铺网站所有者发布,其真实性、准确性和合法性均由商铺网站所有者负责。金泉网不参与用户间交易行为,您在购买商品/服务前请务必谨慎核实;金泉网平台存在海量商铺网站,如您发现商铺网站内有任何违法/侵权信息,请立即向金泉网举报并提供有效线索。举报专线:4006-575-585/0595-86723222