事件如何驱动图表运行

状态流图如何响应事件

Stateflow图表仅在以循环方式响应事件时执行。

在这里插入图片描述
由于图表在单个线程上运行,因此基于事件发生的操作对该事件是原子性的。图表中由事件引起的所有活动都在执行返回到接收事件之前发生的活动之前完成。一旦事件启动了一个操作,除非被提前返回中断,否则该操作将完成。

状态流事件源
Simulink事件唤醒状态流程图。您可以使用事件通过广播事件来控制图表的处理。
事件具有层次结构(父级)和范围。父级和作用域共同定义了对事件的访问范围。事件的父级通常决定谁可以触发该事件(具有接收权限)。

图表如何处理事件
状态流程图通过图表层次结构从上到下处理事件:
1 对活动状态执行during和on event_name操作。
2 检查子状态中的有效转换
除Simulink块的输出边缘触发器外,所有事件在图表中都有以下执行:
1 如果事件的接收器处于活动状态,则执行。(事件接收器是事件的父级, 除非使用send()函数进行定向事件广播。)
2 如果事件的接收器未处于活动状态,则什么都不会发生。
3 在广播事件后,广播者根据导致事件的动作语句类型执行早返回逻辑。

注意:Simulink模型中的输出边缘触发事件执行相当于在1和0之间切换输出数据值的值。它不被视为Stateflow事件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值