80C196MC的外设事务服务器及其应用
端的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时, 《80C196MC的外设事务服务器及其应用(第2页)》
本文链接地址:http://www.oyaya.net/fanwen/view/169978.html
下面介绍程序中应注意的要点:
①接收程序中,采用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时, 《80C196MC的外设事务服务器及其应用(第2页)》