上位机控制单片机,上位机向单片机发送指令

电脑作为上位机来控制单片机,有两种方式,一种是通过电脑的RS,口,即COM口。单片机也是通过串口与电脑联机通信。这种方式,电脑和单片机的程序都容易写,电脑上主要是做控制窗口界面,底层通过串口通信。另一种就是通过网络,即互联网与单片机通信,这是目前的发展趁势。单片机上位机简介:单片机上位机是指可以直接发出操控命令的计算机,一般是PC/hostcomputer/mastercomputer/uppercomputer,屏幕上显示各种信号变化(液压,水位,温度等)。下位机是直接控制设备获取设备状况的计算机,一般是PLC/单片机singlechipmicrocomputer/slavecomputer/lowercomputer之类的。

单片机上位机编程教程

VISA可控制GPIB、串口、USB、以太网、PXI或VXI仪器,并根据使用仪器的类型调用相应的驱动程序,用户无需学习各种仪器的通信协议。VISA独立于操作系统、总线和编程环境。换言之,无论使用何种设备、操作系统和编程语言,均使用相同的API。开始使用VISA之前,应确保选择合适的仪器控制方法。GPIB、串口、USB。不能这样。单片机串口通讯通常是这样的:设备上电-关闭所有中断-配置串口参数-开中断-进入主循环当串口有信息传来时会触发串口接收中断,因此要编写接收中断函数,对接收寄存器读操作,对读出的数据进行处理-清空接收寄存器同时再打开中断你的ifudr=,什么的是不行的。

在while(;前面加一句TI=,就可以了自己发送了。不过这样的中断服务程序千万别拿去面试,很多人技术领导一看到写的代码中断服务程序中有delay()一类的东西就直接毙掉。首先上位机如果是WINDOWS操作系统,那它不是实时操作系统你应该用上位机发脉冲数指令给单片机,单片机收到脉冲数指令后,再去控制脉冲的发送过程。例如:上位机要求步进电机走,,那你就让上位机发,单片机。单片机收到,,再去控制连续发送,脉冲给步进电机驱动器这样做就比较流畅了。

上位机向单片机发送指令

上位机,就是整机的运动控制部份,它的后面就是驱动电路和执行(步进电机)部份。上位机的功能;上位机能输入各轴的位移数据,并储存数据,根椐输入的数据向驱动电路发出执行指令。根椐执行机构所在位置和所需运动的轨迹,向驱动电路发出指令,以驱动各轴步进电机转动,使各轴向指定座标位置运动。建议格式为voidCom_Service(void)interrupt,{if(RI){RI=,a=SBUF;if(a==,AA){flag=,}if(a==,FF){flag=,}if(TI){TI=,}}//你想在接受到)ff后停止接受,不能关闭串口中断,不然你就不能接受开始指令了。

上位机发,下位机收,下位机接收中断服务程序中进行判断接收数据正确性及是否接收完成。需要一个简单的通信协议。比如你定义第一个字节为数据类型(单字节/数组),第二个字节为数组长度,第,四……为数组数据,最后一个字节定义为校验字节(也可以没有)。如果你要发送的数组为a[。单片机与上位机之间的信息交换主要采用串行通信方式,这种方式在现代单片机系统中应用广泛。实现单片机到PC机的通讯时,单片机的TXD应与PC机的RXD连接,单片机采用TTL电平,通过共地连接实现高低电平传输。由于物理传输存在衰减,传输距离有限,通常在,内。然而,通过使用RS,口可以延长通信距离至,。

includeincludeunsignedcharindata[,i;voidport_init(void){PORTA=,,DDRA=,,PORTB=,,DDRB=,,PORTC=,,//m,outputonlyDDRC=,,PORTD=,,DDRD=,,PORTE=,,DDRE=,,PORTF=。代码没写好嘛,当你的单片机接收到,bb,发送一个,aa给PC,这时应该清除你的单片机接收缓存,不然单片机接收的缓存一直是,bb,当上位机还没接收代码的时候,单片机接收到,bb的这个语句一直在执行嘛,单片机里代码执行了,了嘛。上位机的代码也是如此。看的懂?一句话就是应该用了就清除缓存。

发送数据的时候转换一下试试 文本格式的,、,是使用ASCII码格式的,‘的ASCII码=,,‘#的ASCII码=,,……而串口助手使用HEX格式发送的是直接的数据,’就是,,’就是,,两种方式的数据是不同的,LZ的单片机程序必须能做出相应处理。

上位机和单片机怎么配合使用的

开始使用VISA之前,应确保选择合适的仪器控制方法。GPIB、串口、USB、以太网和某些VXI仪器使用基于消息的通信方式。对基于消息的仪器进行编程,使用的是高层的ASCII字符串。仪器使用本地处理器解析命令字符串,设置合适的寄存器位,进行用户期望的操作。两种方式:第一种、你的单片机支持通用的通讯协议,如:modbus;上位机安装支持标准modbus协议的OPC就可以了;第二种,单片机上的编写的是自定义协议,这样就需要自己编写配套的OPCServer软件,有开发包可以买的,这个比第一种难。

用PC机与多个,片机通过RS,行通讯。在多机通讯中,要保证主机与所选择的从机实现可靠的通信,必须保证串口具有识别的功能。在串行口控制寄存器SCON中有一位叫做SM,就是为了多机通讯而设置的控制位。多机通讯的过程可以如下:首先从机初始化,开中断,让其以方式,。单片机通过RS,口或USB转TTL串口和上位机通信单片机只管简单发送即可,上位机要对数据进行简单处理,用VB编程比较简单,利用它的串口通信控件,我整过。界面如图,经过处理保存到文本文件中,格式如下,,收到,个数据,压,v,压,v,压。

如果单片机有串口那就是简单配置寄存器的问题。在许多场合,因为步进电机的电流电压较高,比如有的步进电机最大输出电流,,电压,,再加上其外壳未采用铝合金外壳进行磁屏蔽,因此对高灵敏的接收机系统造成干扰,使其无法工作,并且干扰电源,尤其在高频时,可能造成控制系统的单片机和上位机无法进行正常通讯,严重者造成单片机死机。

上位机和下位位机必须按同一个协议来组合才不会冲突,要不然就会冲突。最后使用第一种,编写上位机,单片机通过串口传送数据到上位机。


------本页内容已结束,喜欢请分享------

感谢您的来访,获取更多精彩文章请收藏本站。

© 版权声明
THE END
软件硬件USB加密狗、加密锁_权限密码狗复制破解克隆模拟拷贝提取写锁_共享写狗脱壳虚拟解密编程授权,型号:wibu威步、aladdin阿拉丁、彩虹、superdog超级狗、圣天诺、yt88域之天、senselock深思洛克、坚石诚信、精锐、safenet赛孚耐、micordog微狗、et199、hasp、龙脉、磐石、cmstick、codemeter、crypto-box、handLock、marx、passdog、rockey、yt域天、飞天诚信、sense深思、圣天狗等各类加密狗破解,IC芯片解密,PCB电路板抄板,单片机解密,欢迎来电咨询!
点赞6 分享
评论 抢沙发
头像
欢迎您微信来电咨询!
提交
头像

昵称

取消
昵称表情

    暂无评论内容