三菱 ST 中断程序编写指南 (三菱中断程序怎么写)

ST

本文档将指导您编写 Mitsubishi ST 系列 PLC 的中断程序。

中断类型

ST 系列 PLC 支持以下中断类型:外部中断:由外部设备触发的中断,例如按钮或传感器。内部中断:由 PLC 自身触发的中断,例如程序错误或定时器中断。

编写中断程序

要编写中断程序,请执行以下步骤:1. 创建中断服务例程 (ISR):ISR 是在中断发生时执行的代码块。在 ST 中,ISR 是一个带以下格式的函数:```stISR [中断号] (参数1, 参数2, ...)[中断程序代码]END_ISR```其中:`[中断号]` 是中断的编号,例如 1、2 或 3。`[参数1]`、`[参数2]`、... 是 ISR 传递的参数的可选列表。2. 设置中断向量:中断向量是存储 ISR 地址的存储器位置。要设置中断向量,请使用以下指令:```stSET_INTVEC [中断号], ISR_LABEL```其中:`[中断号]` 是中断的编号。`ISR_LABEL` 是 ISR 的标签。3. 使能中断:要使能中断,请使用以下指令:```stENABLE_INT [中断号]```其中:`[中断号]` 是中断的编号。

中断程序示例

以下示例展示了一个外部中断程序,它在按钮按下时闪烁一个 LED:```st// 创建中断服务例程ISR 1 (ID, VAL)// 打开 LEDSET_OUT M100.0, ON// 延迟 500msWAIT_TIME 500// 关闭 LEDSET_OUT M100.0, OFFEND_ISR// 设置中断向量SET_INTVEC 1, ISR1// 使能中断ENABLE_INT 1// 主程序WHILE TRUE// 检查按钮状态IF GET_IN X0.0 = 1 THEN// 按钮被按下// 触发中断INT 1END_IFEND_WHILE```

注意事项

确保 ISR 代码高效且简短,因为中断会暂停主程序的执行。不要在 ISR 中调用阻塞函数,例如 `WAIT_TIME`。使用 `ATOMIC_REGION` 指令来保护 ISR 中共享变量的访问。测试中断程序以确保其按预期工作。请参阅 Mitsubishi ST 系列 PLC 的编程手册以获取有关中断的更多信息。

题主是否想询问“三菱中断程序只能执行一次吗?”是的。 根据三棱官方发布相关信息显示,三菱FX系列PLC在任何时刻都只能执行一次中断服务程序。 中断程序写在主程序的后面,在左母线的左边输入中断程序的编号,I1代表从这一行开始是I001中断程序。

本文原创来源:电气TV网,欢迎收藏本网址,收藏不迷路哦!

相关阅读

添加新评论