如何编写上位机软件
“如何编写上位机软件”相关的资料有哪些?“如何编写上位机软件”相关的范文有哪些?怎么写?下面是小编为您精心整理的“如何编写上位机软件”相关范文大全或资料大全,欢迎大家分享。
用VB编写上位机
VB编写上位机实例 用VB编写上位机实例
16:14:22 UTC+0800Sun Apr 1 2007 用VB6.0编写第一个串口通信上位机程序
Visual Basic6.0是一个可视化窗口环境的编程软件,目前使用Visual Basic6.0可以快速简单编写单片机中的串口通信上位机程序。 电子制作 HPOO
下面我们以一个完整的通信试验为例子完成如何用Visual Basic6.0编写单片机串口通信程序。
打开安装好后的Visual Basic6.0主程序界面。选择“标准EXE”。如图1显示,建立Visual Basic的编程环境。
图1
在菜单的[工程]选项中选择[部件],如图2。把Visual Basic的串口通信控件Microsoft Comm control 6.0调入工作菜单。
图2
在打开[部件]对话框中,选择Microsoft Comm control 6.0的选项框,点击[确定]。图3
图3
可以在图示3中可以看通信控件Microsoft Comm control 6.0的文件是在C:\\WINNT\\system32\\MSCOMM32.OCX文件。
如果大家在首次调用通信控件Microsoft Comm
VB上位机程序编写
VB Mscomm控件基本介绍
VB Mscomm控件
一、MSComm控件的主要属性、事件
1、MSComm的属性
Commport:设置或返回串口号。 如设成1(默认值),表示对Com1进行操作。 Settings:以字符串的形式设置或返回串口通信参数。包括串口通讯的比特率,奇偶校
验,数据位长度、停止位等。其默认值 是“9600,N,8,1”,表示串口比特率是
9600bit/s,不作奇偶校验,8位数据位,1个停止位。
Portopen:设置或返回串口状态。值为True时打开串口,值为False时关闭串口。 InputMode:设置或返回接收数据的类型。若值为0,则表示以文本形式读取;值为1,
则表示以 二进制形式读取。
Inputlen:设置或返回一次从接收缓冲区中读取字节数。 InBufferSize:设置或返回接收缓冲区的大小,缺省值为1024字节。
InBufferCount:设置或返回接收缓冲区中等待计算机接收的字符数。 当将其值设为0
时,则输入寄存器将被清空。
Input:从接收缓冲区中读取数据并清空该缓冲区,该属性设计时无效,运行时只读。
OutBufferSize:设置或返回发送缓冲区的大小,缺省值为512
VC++编写简单串口上位机程序
VC++编写简单串口上位机程序
2010年4月13日10:23:40
串口通信,MCU跟PC通信经常用到的一种通信方式,做界面、写上位机程序的编程语言、编译环境等不少,VB、C#、LABVIEW等等,我会的语言很少,C语言用得比较多,但是还没有找到如何用C语言来写串口通信上位机程序的资料,在图书管理找到了用VC++编写串口上位机的资料,参考书籍,用自己相当蹩脚的C++写出了一个简单的串口上位机程序,分享
一下,体验一下单片机和PC通信的乐趣。
编译环境:VC++6.0
操作系统:VMWare虚拟出来的Windows XP
程序实现功能:
1、 PC初始化COM1口,使用n81方式,波特率57600与单片机通信。PC的COM口编号可以
通过如下方式修改:
当然也可以通过上位机软件编写,通过按钮来选择COM端口号,但是此次仅仅是简单的例程,就没有弄那么复杂了。COM1口可用的话,会提示串口初始化完毕。否则会提示串口已经打
开Port already open,表示串口已经打开,被占用了。
2、 点击开始转换,串口会向单片机发送0xaa,单片机串口中断接收到0xaa后启动ADC转换一次,并把转换结果ADCL、ADCH共两个字节的结果发送至PC,PC进行数
release note 上位软件 20070718
版 本 号 1.1.12 2005-12-5 研发一部 李士钊 TP200 software release
2007.9.5
最终修改 部 门 起 草 人 enV4.7.9
修改下位机主配方程序,修正了配方读Word的Bug。
修改了爱默生上位机程序,实现X和Y寄存器支持八进制。
修改了Modbus协议下位机程序,开放超时时间的设定,相应也修改了上位机程序,默认超时为500。
修改选择其它协议时能返回到该协议的默认值。 Modubs协议系列的寄存器基址从0修改到1。 新增加支持GE-SNPX协议
新增加支持德维森V80 PLC通信协议
修改下位机程序,新增加RS485方式和松下PLC通信。 开放基恩士 PLC寄存器范围,从9999改到20000,
软件里面做了很多画面后,上下滚动条拉到最下,最后一个画面总是不能被完全显示,而是被左右的滚动条挡住。这个Bug修改了。
TP200 V4.7.8中,如果把一个寄存器属性从十进制改为十六进制,所有的寄存器属性都随着更改;十六进制改为十进制也是一样。这个Bug修改了。
2007.8.13
enV4.7.8
修改西门子的下位机协议,修正了接收到错误帧以后不能通信的问题。
修改了Tp200
上位机与下位机之间通信编程
绝对是好的资料。是用VC写的
摘 要
本文主要描述了利用PC机与AT89C51单片机之间的通信程序设计实现温度显示。并详述了在VC6.0环境下,上位机利用MSCOMM通信控件与单片机之间串口通信实现温度显示。由单片机采集一个温度信号,将采集到的温度信号传送给PC机显示,PC机用VC6.0编写程序,单片机程序用C语言编写,最后用PROTUES软件进行仿真实现温度显示。
关键词:单片机 MSCOMM控件 VC6.0 AT89C51 温度显示
绝对是好的资料。是用VC写的
目 录
摘要
1 引言............................................................................................................................ 1 2 结构设计与方案选择................................................................................................ 2
2.1设计任务...........................................
基于simulink编程的闭环控制小车上位机软件设计
河南科技大学毕业设计(论文)
基于Matlab/simulink编程的闭环控制小车上位机软件设
计
摘要
随着科学技术的发展,直流电机的应用越来越广泛,驱动与控制直流电机的方式方法也越来越多。计算机软件与单片机技术也高度发展,越发成熟,目前计算机已经能够通过软件实现与单片机的无缝对接。本设计就是一种基于PC软件Matlab/simulink编程的闭环控制小车上位机软件系统,用于控制一辆小车。该小车由两台带有编码器的直流电机驱动,两轮独立驱动。小车在闭环控制系统作用下,能够遵循上位机指令运动:前进,后退,加速,减速,转弯,停止。Matlab/simulink和驱动小车的单片机系统能够通过串口无缝对接,Matlab/simulink模型能够在线监测小车状态,并且可以能够实时整定控制系统参数,对小车的运行状态进行控制。
本设计采用的电机是普通直流电机,两电机各带有一个编码器;采用的单片机为Avr单片机--Arduino Mega2560。单片机接受上位机指令,检测电机编码器脉冲。指令和反馈的实际值比较后,经过PID控制算法的处理得到控制量,最后通过PWM方式,通过L298N控制电机旋转。小车在闭环控制系统作用下,能够遵循指令运动。
关 键 词:Mat
基于simulink编程的闭环控制小车上位机软件设计 - 图文
河南科技大学毕业设计(论文)
基于Matlab/simulink编程的闭环控制小车上位机软件设
计
摘要
随着科学技术的发展,直流电机的应用越来越广泛,驱动与控制直流电机的方式方法也越来越多。计算机软件与单片机技术也高度发展,越发成熟,目前计算机已经能够通过软件实现与单片机的无缝对接。本设计就是一种基于PC软件Matlab/simulink编程的闭环控制小车上位机软件系统,用于控制一辆小车。该小车由两台带有编码器的直流电机驱动,两轮独立驱动。小车在闭环控制系统作用下,能够遵循上位机指令运动:前进,后退,加速,减速,转弯,停止。Matlab/simulink和驱动小车的单片机系统能够通过串口无缝对接,Matlab/simulink模型能够在线监测小车状态,并且可以能够实时整定控制系统参数,对小车的运行状态进行控制。
本设计采用的电机是普通直流电机,两电机各带有一个编码器;采用的单片机为Avr单片机--Arduino Mega2560。单片机接受上位机指令,检测电机编码器脉冲。指令和反馈的实际值比较后,经过PID控制算法的处理得到控制量,最后通过PWM方式,通过L298N控制电机旋转。小车在闭环控制系统作用下,能够遵循指令运动。
关 键 词:Mat
如何编写公式
如何编写公式
,如何看懂公式 大智慧、飞狐、分析家、通达信、钱龙、麒麟公式编辑教程大全《公式编辑入门》
什么是技术指标?
MA均线就是一种技术指标,我们在炒股的时候,经常会将一些行情数据进行数学计算得出一些曲线等等,方便我们掌握股市的变动情况。
什么是条件选股?
简单讲,就是按照您的设定的条件用电脑帮助您完成一些太多太复杂的挑选--比如您有一些好的心得和方法,可使有1000多只股票,您就是有100双眼睛有时也不一定可以看得过来,这时电脑就派上用场了!
什么是参数?
比如讲:10日均线,您可以把10日当作参数,好处在于,您觉得需要修改成5日的时候,就可以使用一些简单的方法,例如参数精灵来很方便的修改和调整。参数需要名字,例如M就不错。还要规定参数的范围,例如1日至260日。这样我们就可以在1到260之间任意调节M的值了,M最常用的数填在“缺省”一栏,例如你最喜欢用10日均线,那就填10吧。
什么是周期?
这么解释吧!我们有的投资者喜欢使用日线图作技术分析;有的喜欢用5分钟的K线;有的喜欢使用长一点时间的,例如周线。所以在公式设计中,允许不同喜好的使用者选择不同的分析时间--就是可以选择不同的周期。
什么是函数?
函数在公式编写非常重要
如何编写公式
如何编写公式
个股白色分时线 围绕黄色均线波动幅度很小近似重叠;2.成交单数差四条红绿线近似重叠成一条直线: 黄绿线距离:(max(sum(ORDERNUM(1,3),0),sum(ORDERNUM(2,3),0),sum(ORDERNUM(1,2),0), sum(ORDERNUM(2,2),0),sum(ORDERNUM(1,1),0),sum(ORDERNUM(2,1),0))- min(sum(ORDERNUM(1,3),0),sum(ORDERNUM(2,3),0),sum(ORDERNUM(1,2),0), sum(ORDERNUM(2,2),0),sum(ORDERNUM(1,1),0),sum(ORDERNUM(2,1),0)))/ min(sum(ORDERNUM(1,3),0),sum(ORDERNUM(2,3),0),sum(ORDERNUM(1,2),0), sum(ORDERNUM(2,2),0),sum(ORDERNUM(1,1),0),sum(ORDERNUM(2,1),0)); {四条红绿线最大距离不超过最低线的1%}
价格均价距离:abs(close-DYNAINFO(11))/DYNAINFO(11);{
如何编写Testbench
2 如何编写Testbench
1) 何时使用initial和always
initial和always 是2个基本的过程结构语句,在仿真的一开始即开始相互并行执行。通常被动的检测响应使用always语句,而主动的产生激励使用initial语句。
initial和always的区别是always 语句不断地重复执行,initial语句则只执行一次。但是,如果希望在initial里的多次运行一个语句块,怎么办?这时可以在initial里嵌入循环语句(while,repeat,for,forever 等),如: initial begin
forever /* 无条件连续执行*/ begin …… end end
其它循环语句请参考一些教材,这里不作赘述。
另外,如果希望在仿真的某一时刻同时启动多个任务,可以使用fork....join语句。例如,在仿真开始的 100 ns 后,希望同时启动发送和接收任务,而不是发送完毕后再进行接收,如下所示: initial begin #100 ;
fork /*并行执行 */ Send_task ; Receive_task ; join End
2) 如何作多种