文档介绍:第十五讲 控制功能指令
控制功能指令
程序控制指令用于对程序流转的控制,可以控制程序的结束、分支、循环、子程序或中断程序调用等。通过程序控制指令的合理应用,可以使程序结构灵活、层次分明,增强程序功能。
读转换开关位置指令
I/O控制指令
主控继电器指令
跳转指令
循环指令
子程序
中断程序
转鼓指令
思考:
使用带参数的子程序实现一位数加法计算器计算结果的显示:
(1)计算结果存放在%R00001中,数据类型为INT型;
(2)第一个数码管显示计算结果的十位数,第二个数码管显示计算结果的个位数。
I/O分配表
输入
功能说明
输出
功能说明
I00201
数字1按钮
Q00001
个位数数码管a段
I00202
数字2按钮
Q00002
个位数数码管b段
I00203
数字3按钮
Q00003
个位数数码管c段
I00204
数字4按钮
Q00004
个位数数码管d段
I00205
数字5按钮
Q00005
个位数数码管e段
I00206
数字6按钮
Q00006
个位数数码管f段
I00207
数字7按钮
Q00007
个位数数码管g段
I00208
数字8按钮
Q00008-Q00014
十位数a段-g段
I00209
数字9按钮
I00210
数字0按钮
I00211
+(加)号
I00215
=(等号)号
分析:
DD
CC
BB
AA
数码管
显示
0
0
0
0
M10
0
0
0
1
M11
0
0
1
0
M12
0
0
1
1
M13
0
1
0
0
M14
0
1
0
1
M15
0
1
1
0
M16
0
1
1
1
M17
1
0
0
0
M18
1
0
0
1
M19
1、编写数字显示子程序第一步:BCD译为一个位变量第二步:位变量译为数码管显示码
分析:
0
1
2
3
4
5
6
7
8
9
输出
M10
M11
M12
M13
M14
M15
M16
M17
M18
M19
a
a
√
√
√
√
√
√
√
√
b
b
√
√
√
√
√
√
√
√
c
c
√
√
√
√
√
√
√
√
√
d
d
√
√
√
√
√
√
√
e
e
√
√
√
√
f
f
√
√
√
√
√
√
g
g
√
√
√
√
√
√
√
参考子程序:
参考主程序:
7. 中断程序
1)由CPU产生,中断的时间间隔由用户指定。如果设定了初始延时,则在完成停止-运行转换并经过初始延时时间后,开始计算中断时间。
2)I/O中断由I/O模块发出,I/O中断用于指示离散输入状态的改变(上升沿/下降沿),模拟量范围限制(高/低报警)和高速计数器事件。
3)模块中断由VME模块产生。每个模块支持单个中断。
注意:中断驱动块执行后能中断非中断驱动块的执行。如果正在中断的逻辑和已中断的逻辑访问相同的数据,会产生不可预期的错误。需要的话,在共享数据正在被访问时,服务请求程序17 或服务请求程序32 可以临时屏蔽I/O 和定时中断程序的执行。
用于启动程序块的3 种中断类型