第六章 特殊功能指令
- 格式:ppt
- 大小:356.00 KB
- 文档页数:70
第六章 MCS-51的定时/计数器1. 如果采用晶振的频率为3MHz ,定时器/计数器工作方式0、1、2下,其最大的定时时间为多少? 解答:因为机器周期)(410312126s f T OSC cy μ=⨯==, 所以定时器/计数器工作方式0下,其最大定时时间为)(768.321042261313ms T T C MAX =⨯⨯=⨯=-;同样可以求得方式1下的最大定时时间为262.144ms ;方式2下的最大定时时间为1.024ms 。
2. 定时/计数器用作定时器时,其计数脉冲由谁提供?定时时间与哪些因素有关?答:定时/计数器作定时时,其计数脉冲由系统振荡器产生的内部时钟信号12分频后提供。
定时时间与时钟频率和定时初值有关。
3. 定时/计数器用作定时器时,对外界计数频率有何限制?答:由于确认1次负跳变要花2个机器周期,即24个振荡周期,因此外部输入的计数脉冲的最高频率为系统振荡器频率的1/24。
4.采用定时器/计数器T0对外部脉冲进行计数,每计数100个脉冲后,T0转为定时工作方式。
定时1ms 后,又转为计数方式,如此循环不止。
假定MCS-51单片机的晶体振荡器的频率为6MHz ,请使用方式1实现,要求编写出程序。
解:定时器/计数器T0在计数和定时工作完成后,均采用中断方式工作。
除了第一次计数工作方式设置在主程序完成外,后面的定时或计数工作方式分别在中断程序完成,用一标志位识别下一轮定时器/计数器T0的工作方式。
编写程序如下:ORG 0000HLJMP MAINORG 000BHLJMP IT0PMAIN: M OV TMOD,#06H ;定时器/计数器T0为计数方式2 MOV TL0,#156 ;计数100个脉冲的初值赋值MOV TH0,#156SETB GATE ;打开计数门SETB TR0 ;启动T0,开始计数SETB ET0 ;允许T0中断SETB EA ;CPU开中断CLR F0 ;设置下一轮为定时方式的标志位W AIT: AJMP W AITIT0P: CLR EA ;关中断JB F0,COUNT ;F0=1,转计数方式设置MOV TMOD,#00H ;定时器/计数器T0为定时方式0MOV TH0,#0FEH ;定时1ms初值赋值MOV TL0,#0CHSETB EA RETICOUNT: MOV TMOD,#06HMOV TL0,#156SETB EARETI5. 定时器/计数器的工作方式2有什么特点?适用于哪些应用场合? 答:定时器/计数器的工作方式2具有自动恢复初值的特点,适用于精确定时,比如波特率的产生。
第6章特殊功能指令本章要点●●立即类指令的功能●●中断指令的功能应用举例及实训●●高速计数器指令、高速脉冲输出指令功能应用举例及实训●PID指令的原理及PID控制功能的应用●●时钟指令6.1 立即类指令立即类指令是指执行指令时不受S7-200循环扫描工作方式的影响,而对实际的I/O点立即进行读写操作。
分为立即读指令和立即输出指令两大类。
立即读指令用于输入I接点,立即读指令读取实际输入点的状态时,并不更新该输入点对应的输入映像寄存器的值。
如:当实际输入点(位)是1时,其对应的立即触点立即接通;当实际输入点(位)是0时,其对应的立即触点立即断开。
立即输出指令用于输出Q线圈,执行指令时,立即将新值写入实际输出点和对应的输出映像寄存器。
立即类指令与非立即类指令不同,非立即指令仅将新值读或写入输入/输出映像寄存器。
立即类指令的格式及说明如表6-1所示。
表6-1 立即类指令的格式及说明LADSTL LDI bitAI bitOI bitLDNI bitANI bitONI bit=I bit SI bit,N RI bit,N说明常开立即触点可以装载,串联,并联。
常闭立即触点可以装载,串联,并联。
立即输出立即置位立即复位操作数及数据类型Bit:I数据类型:BOOLBit:Q数据类型:BOOLBit:Q,数据类型:布尔N:VB, IB, QB, MB, SMB, SB, LB,AC, 常量, *VD, *AC, *LD 数据类型:字节6.2 中断指令S7-200设置了中断功能,用于实时控制、高速处理、通信和网络等复杂和特殊的控制任务。
中断就是终止当前正在运行的程序,去执行为立即响应的信号而编制的中断服务程序,执行完毕再返回原先被终止的程序并继续运行。
6.2.1 中断源1. 中断源的类型中断源即发出中断请求的事件,又叫中断事件。
为了便于识别,系统给每个中断源都分配一个编号,称为中断事件号。
S7-200系列可编程控制器最多有34个中断源,分为三大类:通信中断、输入/输出中断和时基中断。