80C196MC的外设事务服务器及其应用-新品速递_第1页
80C196MC的外设事务服务器及其应用-新品速递_第2页
80C196MC的外设事务服务器及其应用-新品速递_第3页
80C196MC的外设事务服务器及其应用-新品速递_第4页
80C196MC的外设事务服务器及其应用-新品速递_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

精品文档-下载后可编辑C196MC的外设事务服务器及其应用-新品速递

摘要:介绍利用专用于电机控制的16位单片机80C196MC的外设事务服务器PTS在变频器中实现异步串行通信的方法。重点介绍PTS和普通中断的差别及程序设计中应注意的问题,同时给出通用变频器通信协议及程序框图。关键词:单片机变频器通信

引言

变频器在工业现场中应用越来越广泛。为了能实现整个自动化系统的协调控制,同时能监视多台变频器的运行状况,方便地对单一变频器或多台变频器实行启停、正反转、升降速、参数设置等操作是非常必要的。本文介绍利用变频器的主控芯片80C196MC内的外设事务服务器PTS在变频器中实现异步串行通信的方法。

1关于外设事务服务器PTS

1.1PTS和普通中断

90C196MC高性能16位单片机内部“嵌入”了各种以往被认为是“外围设备”的电路。外设事务服务器PTS(PeripheralTransactionServer)就是一种被嵌入的“外设”。它是一种微代码硬件中断处理器,对中断可提供一种类似于DMA(直接存储器访问)的响应,其CPU的开销比普通中断系统(基于上是一种软件中断服务系统)要少得多。为便于理解PTS的工作过程,图1示出了PTS和普通中断流程的主要差别。从图1可以看出:

①PTS的执行是靠CPU硬件微代码来完成的;而普通中断是靠中断正常的程序,由PC入栈、现场保护、用户服务程序、恢复现场与PC出栈来完成。显然后者对CPU的开支要比前者多得多。

②通常中断所做的是相同的工作,如不断的连续A/D转换、数据组的传递、通信的多字节传递等。PTS正利用这点,由一个程序启动PTS,让之在PTS计数器单元控制下不中断正常程序靠硬件微代码(即类似DMA的插入)来分时完成,在PTS计数单元完成后转化为普通中断,通过普通中断进行一系列PTS完成后的结果处理。

③在80C196MC中,PTS优先级总是比普通中断优先级要高,并且有近16个中断源,对应用16位的允许位和响应位的字寄存器进行各自控制;同时,PTS和普通中断是各位相对应的,这样使得PTS完成后转化为普通中断就变得很简单。

④在80C196MC中,与PTS有关的控制有:总允许位PSW.10以及各中断源的选择位PTSSEL寄存器。其中PSW.10通过EPTS指令置位,允许PTS服务。与普通中断有关的控制有:总允许位PSW.9以及中断屏蔽寄存器INT-MASK。

1.2PTS实现串行输入/输出模式

80C196MC没有硬件通用异步收发器UART,但是利用专门的PTS模式可以方便且低软件开销地实现串行输入和输出功能。既可实现异步SIO(ASIO)功能,也可实现同步SIO(SSIO)功能。采用16MHz晶振,用PTS完成波特率为9600的半双工串行输入输出时,CPU的的开销只有4%左右。

PTSSIO模式占用2个控制块,每个控制块包含8个8位寄存器,如图2所示。

这2个控制块的地址不一定是连续的,但它们都应在寄存器RAM区内,控制块首地址都应能被8整除。

2程序设计

采用80C196MC异步串行输入/输出模式实现变频器与计算机之间的通信,其初始化程序主要包括P2端口和定时器的初始化以及PTSSIO模式初始化等。

首先将接收端的CAPCOMP1设置为下降沿捕获方式。当CAPCOMP1捕捉到起始位的前沿后,进入接收中断服务子程序,其程序流程如图3所示。

下面介绍程序中应注意的要点:

①接收程序中,采用EPACAPCOMP1捕获/比较模块。它首先利用其捕获功能造成1次普通中断,而不是1个PTS周期。在这次启动中断中,把CAPCOMP1模块切换成比较方式,启动PTS周期。

②10个PTS周期后,将产生1次ENDofPTS中断。该中断与启动断共享1个中断向量,因此,在该中断服务程序中必须判断本次中断是启动中断还是END-of-PTS中断。区分的依据可以是CAPCOMP1CON.6(CE位):若CE=0,模块为捕获方式,表明是启动中断;反之,模块已切换为比较方式,表明是END-of-PTS中断。

③END-of-PTS中断服务中,必须禁止捕获/比较模块,并清除相应中断是挂位。为继续接收或发送后续的数据帧,在退出中断前必须重新设置捕获/比较模块的方式以及PTSCB中的PTSCOUNT-PTSCON1、DATA等寄存器;必须重置PTSSEL的相应位,允许相应的PTS服务。

④在发送任何数据前,用于TXD的端口(P2.0)引脚必须初始化为“1”;向TXD脚写“0”,即上当于发起始位,整个数据的传输过程就开始了。

3通信协议

上位机(计算机)与下位机(变频器)之间每次通信均是7个字节,每个字节8位。其通信协议格式如下所示:

STXADDRCM1CM2DATA1DATA2BCC报头地址命令1命令2数据1数据2异或校验其中,报头STX=02H,地址ADDR为下位机(变频器)的编号,BCC为各帧数据异或后的结果。下面结合不同的操作分别介绍其它各帧的含义。

3.1读数据

根据变频器参数的不同使用级别,将其参数分为F、P、E三级数据:F组数据主要为用户常用的参数,如给定频率等;P组数据为用户或厂内的整定数据,如闭环PID参数等;E组数据为显示及当前状态的临时参数与数据,如输出频率、输出速度等。

CM1:0FXH(X表示变频器参数组号)

F0:读取F组数据

F1:读取P组数据

F2:读取E组数据

CM2:表示参数在组内的代号

DATA1、DATA2:建议写入00

3.2写数据

CM1:0EXH(X表示变频器参数组号)

CM2:含义同读数据

DATA1:数据高位字节

DATA2:数据低位字节

3.3读/写控制

CM1:0CCH

CM2:控制字节,其格式如下所示:

CONFEQSTASTOPFOREBACKUPDOWN各位含义如表1所列。

表1

CON1控制字节有效0控制字节无效FEQ1频率值有效0频率值无效STA1启动0状态不变STOP12停机0状态不变FORE1正转0状态不变BACK1反转0状态不变UP1升速0状态不变DOWN1减速0状态不变当CON=1且FEQ=1时,DATA1、DAT2中的数据为运行状态控制的有效频率值;否则,数据无效。

3.4应答

下位机(如变频器)接收到上位机(即PC机)的完整的7个字节数据后,除上位机广播通信外均应作出应答。如果异或校验无误,其应答格式同接收到的数据格式,只是DATA1、DATA2两位为上位机要访问参数码的当前值;若异或校验有误,则发回出错帧:

STRADDR0DH0DH0FFH0FFHBCC。

4小结

变频器通过采用80C196M

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论