80C196MC的外设事务服务器及其应用
摘要:介绍利用专用于电机控制的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模式初始化等。
首先将接收 《80C196MC的外设事务服务器及其应用》
本文链接地址:http://www.oyaya.net/fanwen/view/169978.html
关键词:单片机变频器通信
引言
变频器在工业现场中应用越来越广泛。为了能实现整个自动化系统的协调控制,同时能监视多台变频器的运行状况,方便地对单一变频器或多台变频器实行启停、正反转、升降速、参数设置等操作是非常必要的。本文介绍利用变频器的主控芯片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模式初始化等。
首先将接收 《80C196MC的外设事务服务器及其应用》