本文中提到了3个关于c++上位机软件开发教程的相关看点,同时还对串口上位机软件开发教程也有不同的看法,希望本文能为您找到想要的答案,记得关注哦!
初涉USB,初学者USB入门总结USB上位机读写开发,请高手指点下!
本文最佳回答用户:【雪夜之歌】 ,现在由重庆云诚科技小编为你讲解与【c++上位机软件开发教程】的相关内容!
答固件的程序和驱动编写好了后,把设备插入就可以正确识别到,接下来的工作就是如何用上位机读写设备了。其实读写操作跟读写串口一致的,就是用file进行操作。关键是打开设备,下面是我用到的程序,这里都贴出来吧,我都是用这个的,供大家参考,呵呵,如果刚开始弄的话,估计得弄上个一个星期才行,用这个程序修改一下,两分钟搞定。
其中GUID ClassGuid 是你在驱动中生成的一个号,它必须跟你的驱动对应起来,这个号的位置在驱动程序的XXXDeviceInterface.h中的#define XXXDevice_CLASS_GUID \(XXX表示你起的工程名字)。把这个号替换之后用FpOpenDevice打开设备,得到一个读句柄,一个写句柄,然后在自己的程序中用readfile和writefile读写设备就可以了,注意,不管是读还是写,都是主机发出的,设备不能主动发发数据。比如上位机中运行readfile,就会发送一个IN指令,设备接到IN指令后,会把缓冲区的内容发出。
这一方面,想简单可以简单,想复杂可以负责的,,
上位机包括驱动和应用两层。一般为了使自己的程序更通用并且适合做
再加工,,都是在驱动和界面程序中间加个dll什么的,,作为中间层。
简单说的话,你可以下载公版驱动,和针对于该驱动的dll,,
开发者直接调用dll export出来的接口函数,完成开发,,跟一般的
软件开发,,只有你会调用dll当然这里还有一个问题就是,
你还要和下位机软件开发的人一起制定一个协议什么的,,来具体完成
一些数据状态的交换
如果要写驱动,,相对教难些,,不过可网上下载些类似的源码,,
参考修改,,完成驱动。
推荐你去csdn,这个网站上有很多资源,注册都可以下载的
以上就是重庆云诚科技小编解答(雪夜之歌)分析关于“初涉USB,初学者USB入门总结USB上位机读写开发,请高手指点下!”的答案,接下来继续为你详解体育用户(迷你笑容)贡献“Keil C51实现单片机与PC串口(上位机)vb如何编写”的一些相关解答,希望能解决你的问题!

Keil C51实现单片机与PC串口(上位机)vb如何编写
本文最佳回答用户:【迷你笑容】 ,现在由重庆云诚科技小编为你详解与【c++上位机软件开发教程】的相关内容!
答.
实现你讲的功能,必须用VB中的MSComm控件
MSComm 控件有很多重要的属性,在开始使用MSComm控件之前。需要先了解其属性、事件或错误。
属性 描述
CommPort 设置或返回通信端口号
Settings 以字符串的形式设置或返回波特率、奇偶校验、数据位和停止位
PortOpen 设置或返回通信端口的状态。也可以打开和关闭端口
Input 返回和删除接收缓冲区中的字符
Output 将字符串写入发送缓冲区
CommEvent 属性为通信事件或错误返回下列值之一。在该控件的对象库中也可以找到这些常量。
有关具体的描述,找相应的教材仔细看吧。
VB.的MSComm通信控件提供了一系列标准通信命令的接口,它允许建立串口连接,可以连接到其他通信设备(如Modem).还可以发送命令、进行数据交换以及监视和响应在通信过程中可能发生的各种错误和事件,从而可以用它创建全双工 、事件驱动的、高效实用的通信程序。但在实际通信软件设计过程中,MSComm控件并非像想像中那样完美和容易控制.。
一般悦来,计算机都有一个或多个串行端口,它们依次为com1、Com2、…,这些串口还提供了外部设备与pC进行数据传输和皿信的通道。这些串口在CPU和外设之间充当解释器的角色。当字符数据从CPU发送给外设时,这些字符数据将被转换成串行比特流数据;当接收数据时,比特流数据被转换为字符数据传递给CPU,再进一步说,在操作系统方面,Windows用通信驱动程序(COMM.DRV)调用API函数发送和接收数据,当用通信控件或声明调用API函数时,它门由COMM. DRV解释并传递给设备驱动程序,作为一个vB程序员,要编写通信程序.只需知道通信控件提供给Windows通信AP1函数的接口即可.换句话说,只需设定和监视通信控件的属性和事件即可。
MSComm控件提供了两种处理通信的方法:
1.事件驱动通信,是一种功能很强的处理串口活动的方法。在大多数情况下,用户需要获知事件发生的时间,例如,在CD(Carrier Detect)线或RTS(Request To Send)线上有字符到达或发生了改变等。在这种情况下,使用MSComm控件的OnComm事件捕获和处理这些通信事件。OnComm也可以捕获和处理通信中的错误。要获取所有事件和通信错误的完整清单,参阅CommEvent属性。
2.程序员也可以在每个重要的程序功能之后检查CommEvent属性的值来检测事件和通信错误。这对小的自含程序可能比较常用。例如,如果编写一个简单的电话拨号程序,那么在接收了每个字符后都产生一个事件并没有意义,因为你只打算从调制解调器中接收OK响应信息。
使用的每个MSComm控件都与一个串口对应。如果在应用程序中需要访问多个串口,必须使用多个MSComm控件。可以在Windows 控制面板中修改串口地址的中断地址。
用Mscomm控件 编写通信程序
在VB中新建一个工程文件。
添加Microsoft Comm Control 组件,
在简体Form1中加入Command命令按钮并取名为CmdTest,MSComm控件取名为SComm1,加入如下程序代码。
Private Sub cmdTestClick ( ) '打开串口
MSComml.CommPort =2 '设定Com2
If MSComml.PortOpen = False Then
MSComm1.Settings = "9600,n,8,1" '9600波特率,无校验,8位数据位,1位停止位
MSComm1.PortOpen = True '打开串口
End if
MSComm1.OutBufferCount = 0 '清空发送缓冲区
MSComm1.InBufferCount = 0 '滑空接收缓冲区
'发送字符数据时注意必须用回车符(vbcr)结束
MSComm1.Output="This is a qood book ! " &vbCr
'泼打电话号码或发送AT命令
MSComm1.Output = "ATDT 05778191898 , & vbCr
'发送字符数组数据时注意ByteArray必须事先定义赋值
Dim ByteArray as byte( )
'定义动态数组
ReDim ByteArray(1)
'重定义数组大小
ByteArray ( 0 ) =0
ByteArray ( 1 ) = 1
MSComm1.Output = ByteArray
End Sub
private Sub MScommEvent( )
Select Case MSComm1.CommEvent
Case comEvReceive
Dim Buffer As Variant
MSComm1.InputLen = 0
'接收二进制数据
MSComm1.InputMode= ComInputModeBinary
Buffer=MSComm1.Input
'接收字符数据
MSComm1.InputMode=comInputModeText
Buffer = MSComml.Input
Case else
End Select
End sub
以上就是重庆云诚科技小编解答(迷你笑容)分析关于“Keil C51实现单片机与PC串口(上位机)vb如何编写”的答案,接下来继续为你详解体育用户(茶栀)解答“上位机控制软件开发”的一些相关解答,希望能解决你的问题!
上位机控制软件开发
本文最佳回答用户:【茶栀】 ,现在由重庆云诚科技小编为你分析与【c++上位机软件开发教程】的相关内容!
答任何一种面向对象的语言都有串口库。我也研究了一阵子上位机,c水平如果拿着资料,还是可以写一些小玩意,但是最后放弃了,现在是用别人的架构做一点点二次开发,说白了就是写一点小脚本,也可以将就用。上位机开发这个不是一年半载就可以搞清晰的。我认为,所以我放弃了。可能我有点笨吧。最主要的是作为个人,我找不到下位机的驱动和c库(我说的下位机是PLC),而这些,我又自己写不出来。我学的是c#,我知道几个搞机器视觉的。也是用的c#,好多年了,软件依然bug层出不穷,卖出去的软件都没打包封装,也不知道怎么想的。当然,我也么有尝试去反编译他的也不一定可以编译出来。没意思
关于[c++上位机软件开发教程]的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于串口上位机软件开发教程、c++上位机软件开发教程的信息别忘了在本站进行查找喔。
推荐文章:
本文由网上采集发布,不代表我们立场,转载联系作者并注明出处:https://www.cqycseo.com/zixun/4531.html
